# Akciók és események

> A beküldés utáni akciók időzítése fizetéses űrlapon: események a fizetés előtt, sikeres és sikertelen fizetés után, előfizetés változásakor.

Az űrlap **Post Submit Actions** akcióihoz eseményeket rendelhetsz: így megadod, mikor fusson le az akció. Fizetéses űrlapnál ezzel állítod be, mi történjen a fizetés előtt, sikeres fizetés után, illetve ha a fizetés meghiúsul.

## Az események megnyitása

1. Nyisd meg az űrlapot, és a **JetForm** fülön nyisd le a **Post Submit Actions** szakaszt.
2. Vidd az egeret az akció fölé: megjelennek az ikonjai.
3. Kattints a feltételek ikonjára. Megnyílik az **Edit Action Conditions & Events** ablak.
4. Váltsd át az **Events match** fülre. (A **Fields comparison** fülön mezőértékek alapján szabhatsz feltételt.)
5. Az **ADD EVENT** mezőbe írd be az eseményeket, vesszővel, szóközzel elválasztva, vagy Enterrel.
6. Kattints az **Update** gombra, majd mentsd az űrlapot. Az akció mellett megjelenik, melyik eseményhez tartozik.

![Az Edit Action Conditions & Events ablak Events match füle](./kepek/elso-lepesek-esemenyek.webp)

*Az Edit Action Conditions & Events ablak Events match füle* (https://minta-bolt.hu/wp-admin/post.php?post=4&action=edit)

A képen az **Events match** fül látszik az **ADD EVENT** mezővel.

## Az események

| Esemény | Mikor fut le az akció |
|---|---|
| `DEFAULT.PROCESS` | Az alapértelmezett időpontban. Fizetéses űrlapnál ez a fizetőoldalra irányítás előtt van, így az akció még azelőtt lefut, hogy a látogató a fizetőoldalra kerülne. |
| `BAD.REQUEST` | A kérés feldolgozása után, ha az űrlapmezőkben hiba van (például rossz fájltípus vagy túllépett fájlméret a **Media Field** mezőnél). Megelőzi a `DEFAULT.PROCESS` eseményt. |
| `DEFAULT.REQUIRED` | Minden esetben, még hibás mezők vagy sikertelen akciók mellett is, a válasz elküldése előtt. Alapból a **Save Form Record** akció használja, más akcióhoz az űrlapszerkesztőben nem adható hozzá. |
| `GATEWAY.SUCCESS` | Miután a látogató végigment a fizetőoldalon, és a fizetés vagy az előfizetés megtörtént. |
| `GATEWAY.FAILED` | Ha a látogató fizetés vagy előfizetés nélkül tér vissza a fizetőoldalról. |
| `GATEWAY.EXPIRED` | Ha az átjáró munkamenete a beállított tétlenségi idő után lejár. |
| `GATEWAY.SUSPENDED` | Ha az átjáró munkamenete felfüggesztődik. |
| `GATEWAY.RENEW` | Ha az átjáró munkamenete megújul. |
| `GATEWAY.SUBSCRIPTION.CANCELLED` | Ha a felhasználó lemondja az előfizetést. |
| `GATEWAY.SUBSCRIPTION.EXPIRED` | Ha az előfizetés lejár. |
| `GATEWAY.SUBSCRIPTION.SUSPENDED` | Ha az előfizetést felfüggesztik. |

Ha a PayPal Recurring Payments kiegészítő is aktív, és létezik PayPal előfizetési csomag, megjelenik a `RENEWAL.PAYMENT` esemény is (minden akciónál, a **Save Form Record** kivételével): az akció akkor fut le, ha az előfizetés megújul és újra kifizetődik.

A JetFormBuilder a **Render States** (megjelenítési állapotok) eseményeit is ismeri, ezek az akciók eseményei között szerepelhetnek.

## Tudnivalók

- Ha több akció használja a `DEFAULT.REQUIRED` eseményt, a **Save Form Record** akciót tedd utolsónak. Különben a lefutott akció állapota hibásan mentődik.
- Ha az űrlapon két fizetési mód is van (például PayPal és Stripe), mindkettőhöz külön rendelj eseményeket az akciókhoz.
- Az események beállítása után ne felejtsd el az űrlapot menteni.

## Tipikus beállítás

| Akció | Esemény | Mire jó |
|---|---|---|
| **Insert/Update Post** vagy **Register User** | `GATEWAY.SUCCESS` | Csak sikeres fizetés után jön létre a bejegyzés vagy a felhasználó. |
| **Send Email** | `GATEWAY.SUCCESS` | A visszaigazolás csak kifizetett rendelésnél megy ki. |
| **Send Email** | `GATEWAY.FAILED` | Értesítés a sikertelen fizetésről. |
| **Save Form Record** | `DEFAULT.REQUIRED` | A beküldés minden esetben rögzül. |
