Coverage for src/integrify/azericard/helpers.py: 100%

8 statements  

« prev     ^ index     » next       coverage.py v7.9.2, created at 2025-12-29 00:57 +0000

1from integrify.schemas import DryResponse 

2 

3 

4def json_to_html_form(json_data: DryResponse, with_submit: bool = False) -> str: 

5 """AzeriCard-ə göndərilməli datanı HTML formuna çevirən funksiya 

6 

7 Args: 

8 json_data: DryResponse payload 

9 with_submit: HTML form-da submit butonunu elavə etmə(mə)k 

10 """ 

11 

12 url = json_data['url'] 

13 verb = json_data['verb'] 

14 data = json_data['data'] 

15 

16 # Create HTML form based on keys and values of json_data. Every field is str, str. 

17 form = '\n'.join( 

18 f'<input type="hidden" name="{key}" value="{value}">' for key, value in data.items() 

19 ) 

20 

21 submit = '<input type="submit" value="Submit">\n' if with_submit else '' 

22 return ( 

23 f'<form name="azericard_form" action="{url}" method="{verb}">\n{form}\n{submit}</form>\n' 

24 '<script>document.azericard_form.submit();</script>' 

25 )