book() è il metodo che apre il checkout. Tutto il resto nel client lo configura o lo monitora.
entase.book(eventID);
entase.book(eventID, options);eventID è l'identificatore dell'evento programmato per cui vendere. È lo stesso ID utilizzato nei codici di condivisione e incorporamento dell'evento.
La chiamata restituisce immediatamente – apre il pannello o la finestra e non attende che il visitatore finisca. Usa gli eventi per reagire a ciò che accade in seguito.
Opzioni
| Nome | Tipo | Predefinito | Descrizione |
|---|---|---|---|
checkoutMode | stringa | valore dell'istanza | 'pane' o 'popup' solo per questa prenotazione. |
clientContext | oggetto | null | Dati arbitrari passati al checkout quando è pronto. Vedi sotto. |
collectConsent | booleano | valore dell'istanza | Se chiedere al visitatore di accettare l'informativa sui termini. |
backdrop | booleano | valore dell'istanza | Se oscurare la pagina dietro il checkout. |
backdropColor | stringa | valore dell'istanza | Colore dell'area oscurata. |
pane | oggetto | valore dell'istanza | { width, height } per il pannello inline. |
popup | oggetto | valore dell'istanza | { width, height } per la finestra pop-up. |
Tutto ciò che ometti usa come fallback il valore con cui è stata creata l'istanza, quindi le opzioni per singola chiamata sono aggiuntive anziché un insieme sostitutivo.
entase.book('EVENT_ID', {
pane: { width: '60vw' },
backdrop: false,
clientContext: { source: 'homepage-hero' }
});Contesto client
clientContext è un oggetto progettato da te. Il client lo conserva finché il checkout non segnala di essere pronto, quindi lo trasferisce. Usalo per trasportare informazioni che conosce solo la tua pagina – quale pulsante è stato selezionato, da quale campagna è arrivato un visitatore, un riferimento cliente interno – fino alla sessione di checkout.
Il contesto viene memorizzato per ID evento, quindi prenotando due eventi diversi dalla stessa pagina i relativi contesti restano separati.
Non inserire dati sensibili. Viaggia fino al checkout attraverso il browser ed è visibile a chiunque ispezioni la pagina.
Aprire più eventi da una pagina
Un'istanza gestisce un numero qualsiasi di eventi. Creala una volta e passa ogni volta un ID diverso:
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 }
});
});
});Dopo la distruzione del client
Chiamare book() su un'istanza che hai già distrutto registra un errore nella console e non apre nulla. È intenzionale – un'istanza distrutta non rimane più in ascolto dei messaggi dal checkout, quindi la finestra aperta non potrebbe essere chiusa né monitorata. Crea invece una nuova istanza.
Chiudere il checkout
Il visitatore chiude il checkout autonomamente: con Esc o con un clic sull'area oscurata in modalità pannello, tramite i controlli della finestra in modalità pop-up. Il checkout si chiude automaticamente anche al completamento di una prenotazione.
Non esiste un metodo pubblico per chiuderlo dal tuo codice. Se hai bisogno di sapere quando viene chiuso, ascolta l'evento checkout.closed.