Ako na vlastnú darovaciu stránku?
Pozeráte sa na ukážku jednoduchej implementácie vlastnej darovacej stránky, ktorej základom je formulár, resp. jeho následné odoslanie. Ukážka je doplnená o vysvetlivky pre jednotlivé premenné, polia a ich hodnoty.
V tomto príklade sa používa: Static HTML 5.0 • CSS: Bootstrap 4.5.0 • JS: jQuery 3.5.1 • Validation: Browser native (Constraint validation)
<form>
FORM tag musí obsahovať atribúty 1. action="https://..." a 2. method="post". Cieľová adresa (viď "action") je stránka vašej kampane v systéme darujme.sk, napr. "https://cpftest.darujme.sk/zazite-filantropiu-na-vlastnej-kozi-2497f/". Táto stránka musí existovať a musí byť funkčná. Na túto stránku odchádzajú odoslané údaje z tohto formulára. Cieľová adresa slúži následne ako "resolver", t.j. spracovateľ odoslaných údajov. Ak sú odoslané údaje v poriadku a sprocesované systémom, zobrazí sa podľa zadanej platobnej metódy buď ďakovná stránka, alebo stránka platobnej brány. Naopak, ak nie sú údaje v poriadku, zobrazí sa stránka kampane, kde sú označené polia, ktoré chýbajú, majú zlú (nepovolenú) hodnotu apod.
Formulár musí obsahovať položku
id_widget, čo je identifikátor vašej vlastnej darovacej stránky, ktorý je možné nájsť v URL pri editovaní darovacej stránky. V tejto ukážke je to "hidden input type". Ukážka takisto pracuje s ďalšími skrytými poliami, ktorých hodnoty sa menia javascriptom podľa toho, či je vybraná fixná alebo vlastná suma, a to rovnako pre jednorázový, ako aj pre pravidelný dar. Rovnako sa menia premenné podľa spôsobu platby Pracujeme teda s:
- Widget ID → id_widget, value / example: 0a493a1e-e9a4-42d0-9eb5-04b6534bd64b, required: yes
- Výška jednorázového daru → donation_amount_onetime, values: amount_onetime_10 ... amount_onetime_50 or amount_onetime_custom, required: yes
- Výška pravidelného daru → donation_amount_periodical, values: amount_periodical_10 ... amount_periodical_50 or amount_periodical_custom, required: yes
- Spôsob platby → payment_method_onetime, values: [payment code] or ib, required: yes
- Banková metóda → bank_method_onetime, values: [empty] or [payment code], required: yes
Pozor, obe hodnoty polí - "
donation_amount_onetime" a "
donation_amount_periodical" - musia byť vyplnené (t.j. nie prázdne), a to bez ohľadu na to, aká je zvolená periodicita, inak systém zastaví spracovanie formulára.
</form>