book() je metoda, která otevírá checkout. Vše ostatní v klientovi ho konfiguruje nebo sleduje.
entase.book(eventID);
entase.book(eventID, options);eventID je identifikátor plánované události, pro kterou chcete prodávat vstupenky. Jde o stejné id, jaké se používá v kódech pro sdílení a vložení vaší události.
Volání se vrátí okamžitě – otevře panel nebo okno a nečeká, až návštěvník dokončí proces. Pomocí událostí můžete reagovat na to, co se stane dál.
Možnosti
| Název | Typ | Výchozí hodnota | Popis |
|---|---|---|---|
checkoutMode | string | hodnota instance | 'pane' nebo 'popup' pouze pro tuto rezervaci. |
clientContext | object | null | Libovolná data předaná checkoutu, jakmile bude připraven. Viz níže. |
collectConsent | boolean | hodnota instance | Určuje, zda má být návštěvník požádán o přijetí oznámení o podmínkách. |
backdrop | boolean | hodnota instance | Určuje, zda se má stránka za checkoutem ztmavit. |
backdropColor | string | hodnota instance | Barva ztmavené oblasti. |
pane | object | hodnota instance | { width, height } pro vložený panel. |
popup | object | hodnota instance | { width, height } pro vyskakovací okno. |
Vše, co vynecháte, převezme hodnotu, se kterou byla instance vytvořena, takže možnosti pro jednotlivá volání se přidávají, namísto aby nahrazovaly celou sadu.
entase.book('EVENT_ID', {
pane: { width: '60vw' },
backdrop: false,
clientContext: { source: 'homepage-hero' }
});Kontext klienta
clientContext je objekt podle vašeho návrhu. Klient ho uchovává, dokud checkout neoznámí, že je připraven, a poté jej předá. Použijte ho k přenášení informací, které zná pouze vaše stránka – na které tlačítko bylo kliknuto, z jaké kampaně návštěvník přišel, interní reference zákazníka – do relace checkoutu.
Kontext se ukládá pro každé id události zvlášť, takže při rezervaci dvou různých událostí ze stejné stránky zůstanou jejich kontexty oddělené.
Nevkládejte do něj nic citlivého. Do checkoutu putuje přes prohlížeč a je viditelný pro každého, kdo stránku kontroluje.
Otevření několika událostí z jedné stránky
Jedna instance zvládne libovolný počet událostí. Vytvořte ji jednou a pokaždé předejte jiné id:
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 }
});
});
});Po zrušení klienta
Volání book() u instance, kterou jste již zrušili, zapíše chybu do konzole a nic neotevře. Je to záměrné – zrušená instance již nenaslouchá zprávám z checkoutu, takže okno, které otevřela, by nebylo možné zavřít ani sledovat. Místo toho vytvořte novou instanci.
Zavření checkoutu
Checkout zavírá sám návštěvník: klávesou Escape nebo kliknutím na ztmavenou oblast v režimu panelu, případně ovládacími prvky okna v režimu vyskakovacího okna. Checkout se také zavře sám po dokončení rezervace.
Neexistuje žádná veřejná metoda, jak jej zavřít z vašeho kódu. Pokud potřebujete vědět, kdy se zavřel, naslouchejte události checkout.closed.