book() este metoda care deschide checkout-ul. Tot restul de pe client îl configurează sau îl monitorizează.
entase.book(eventID);
entase.book(eventID, options);eventID este identificatorul evenimentului programat pentru care se vând bilete. Este același ID utilizat în codurile de distribuire și încorporare ale evenimentului dvs.
Apelul revine imediat – deschide panoul sau fereastra și nu așteaptă ca vizitatorul să termine. Utilizați evenimente pentru a reacționa la ceea ce se întâmplă în continuare.
Opțiuni
| Nume | Tip | Valoare implicită | Descriere |
|---|---|---|---|
checkoutMode | șir de caractere | valoarea instanței | 'pane' sau 'popup' doar pentru această rezervare. |
clientContext | obiect | null | Date arbitrare transmise checkout-ului după ce acesta este pregătit. Consultați mai jos. |
collectConsent | boolean | valoarea instanței | Dacă vizitatorului i se cere să accepte notificarea privind termenii. |
backdrop | boolean | valoarea instanței | Dacă pagina din spatele checkout-ului trebuie estompată. |
backdropColor | șir de caractere | valoarea instanței | Culoarea zonei estompate. |
pane | obiect | valoarea instanței | { width, height } pentru panoul inline. |
popup | obiect | valoarea instanței | { width, height } pentru fereastra pop-up. |
Orice omiteți revine la valoarea cu care a fost creată instanța, astfel încât opțiunile per apel sunt adăugiri, nu un set de înlocuire.
entase.book('EVENT_ID', {
pane: { width: '60vw' },
backdrop: false,
clientContext: { source: 'homepage-hero' }
});Contextul clientului
clientContext este un obiect conceput de dvs. Clientul îl păstrează până când checkout-ul semnalează că este pregătit, apoi îl transmite. Utilizați-l pentru a transporta informații pe care doar pagina dvs. le cunoaște – ce buton a fost accesat, în cadrul cărei campanii a ajuns un vizitator, o referință internă a clientului – către sesiunea de checkout.
Contextul este stocat pentru fiecare ID de eveniment, astfel încât rezervarea a două evenimente diferite de pe aceeași pagină păstrează contextele separate.
Nu introduceți informații sensibile în acesta. Acesta ajunge la checkout prin browser și este vizibil pentru oricine inspectează pagina.
Deschiderea mai multor evenimente de pe o singură pagină
O instanță gestionează orice număr de evenimente. Creați-o o singură dată și transmiteți un ID diferit de fiecare dată:
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY' });
document.querySelectorAll('[data-event-id]').forEach(button => {
button.addEventListener('click', () => {
entase.book(button.dataset.eventId, {
clientContext: { source: button.dataset.source }
});
});
});După distrugerea clientului
Apelarea book() pe o instanță pe care ați distrus-o deja înregistrează o eroare în consolă și nu deschide nimic. Acest lucru este intenționat – o instanță distrusă nu mai ascultă mesajele de la checkout, astfel că fereastra pe care ar deschide-o nu ar putea fi închisă sau monitorizată. Creați în schimb o instanță nouă.
Închiderea checkout-ului
Vizitatorul închide singur checkout-ul: Escape sau un clic pe zona estompată în modul panou, respectiv comenzile ferestrei în modul pop-up. Checkout-ul se închide și singur când se finalizează o rezervare.
Nu există o metodă publică pentru a-l închide din codul dvs. Dacă trebuie să știți când s-a închis, ascultați evenimentul checkout.closed.