JavaScript-horgok a foglalási űrlapokon
A foglalási űrlap frontend-eseményeire reagáló JavaScript-horgok: űrlap betöltése, kiválasztások, egyéni ellenőrzés, foglalás előtt és után.
Az Amelia JavaScript-horgokkal reagálhatsz a látogatók műveleteire és a foglalási folyamat eseményeire a frontenden. Használhatod őket interakciók követésére, adatok ellenőrzésére, a működés módosítására vagy egyedi logika indítására, az Amelia magkódjának módosítása nélkül.
A horgok használatához programozási ismeret kell, a támogatás csak általános útmutatásra terjed ki.
A horgok csak a következő foglalási és katalógus űrlapokon futnak:
[ameliastepbooking][ameliacatalogbooking]
A horgok paraméterei
Szekció neve “A horgok paraméterei”Minden JavaScript-horog ugyanazokat a paramétereket kapja:
| Paraméter | Leírás |
|---|---|
success |
Visszahívó függvény a folyamat folytatásához. Csak a beforeBooking horognál használatos. |
error |
Visszahívó függvény a folyamat leállításához. Csak a beforeBooking horognál használatos. |
data |
Az aktuális lépéshez tartozó foglalási, időponti vagy űrlapadatokat tartalmazó objektum. |
A horgokat a window.ameliaActions objektumban kell megadnod, a horog nevével egyező kulccsal. Az alábbi minta a szerkezetet mutatja (a ViewContent helyére bármelyik horog neve kerülhet):
window.ameliaActions = { ViewContent: function (success = null, error = null, data) { console.log('ViewContent HOOK') console.log(data) }}A horgok listája
Szekció neve “A horgok listája”| Horog | Mikor fut le |
|---|---|
ViewContent |
Miután a foglalási űrlap betöltődött. |
SelectService |
Amikor a látogató kiválaszt vagy módosít egy szolgáltatást. |
SelectCategory |
Amikor kiválaszt vagy módosít egy kategóriát. |
SelectEmployee |
Amikor kiválaszt vagy módosít egy munkavállalót. |
SelectLocation |
Amikor kiválaszt vagy módosít egy helyszínt. |
SelectPackage |
Amikor kiválaszt vagy módosít egy csomagot. |
InitInfoStep |
Amikor a vásárlói adatok lépése betöltődik. |
customValidation |
A vásárlói adatok lépésének ellenőrzésekor, a fizetési lépés betöltése előtt. |
InitiateCheckout |
Amikor a fizetési lépés betöltődik. |
beforeBooking |
A megerősítő gomb megnyomásakor, a foglalás véglegesítése előtt. |
Schedule |
Helyszíni fizetésű foglalás befejezése után, a köszönő lépés betöltése előtt. |
Purchase |
Online fizetésű foglalás befejezése után, a köszönő lépés betöltése előtt. |
Egyéni ellenőrzés a fizetés előtt
Szekció neve “Egyéni ellenőrzés a fizetés előtt”A customValidation horog a vásárlói adatok lépésének ellenőrzésekor fut le. A data.rules objektumhoz saját szabályt adhatsz egy mezőre: az e-mail-mezőhöz a data.rules.email, egy egyéni mezőhöz a data.rules['cf' + azonosito] tömbbe.
window.ameliaActions = { customValidation: function (success = null, error = null, data) { const customValidator = (rule, value, callback) => { if (value.includes('SOME_REGEX')) { callback(new Error()) } else { callback() } }
// az e-mail-mező ellenőrzése data.rules.email.push({ message: 'Egyéni hibaüzenet', validator: customValidator })
// egy egyéni mező ellenőrzése (itt a 2-es azonosítójú mező) var customFieldId = 2 data.rules['cf' + customFieldId].push({ message: 'Egyéni hibaüzenet', validator: customValidator }) }}Logika a foglalás létrehozása előtt
Szekció neve “Logika a foglalás létrehozása előtt”A beforeBooking horog a megerősítő gomb megnyomásakor fut le, még a foglalás véglegesítése előtt. A foglalás csak akkor folytatódik, ha meghívod a success() függvényt; ha le akarod állítani, hívd az error() függvényt.
Ez a horog Mollie és WooCommerce fizetésnél nem érhető el.
window.ameliaActions = { beforeBooking: function (success = null, error = null, data) { console.log('A foglalás létrehozása előtt') console.log(data)
// a success() meghívásával engedélyezed a foglalás befejezését success() }}Készült: