book() er metoden som åpner kassen. Alt annet på klienten konfigurerer eller observerer den.
entase.book(eventID);
entase.book(eventID, options);eventID er identifikatoren for det planlagte arrangementet som skal selges. Det er den samme ID-en som brukes i arrangementets dele- og innebyggingskoder.
Kallet returnerer umiddelbart – det åpner panelet eller vinduet og venter ikke på at den besøkende skal bli ferdig. Bruk hendelser for å reagere på det som skjer videre.
Alternativer
| Navn | Type | Standard | Beskrivelse |
|---|---|---|---|
checkoutMode | string | instansverdi | 'pane' eller 'popup' kun for denne bestillingen. |
clientContext | object | null | Vilkårlige data som sendes til kassen når den er klar. Se nedenfor. |
collectConsent | boolean | instansverdi | Om den besøkende skal bes om å godta varselet om vilkår. |
backdrop | boolean | instansverdi | Om siden bak kassen skal tones ned. |
backdropColor | string | instansverdi | Fargen på det nedtonede området. |
pane | object | instansverdi | { width, height } for det innebygde panelet. |
popup | object | instansverdi | { width, height } for popup-vinduet. |
Alt du utelater, faller tilbake på verdien instansen ble opprettet med, så alternativer per kall er tillegg i stedet for et erstatningssett.
entase.book('EVENT_ID', {
pane: { width: '60vw' },
backdrop: false,
clientContext: { source: 'homepage-hero' }
});Klientkontekst
clientContext er et objekt du selv utformer. Klienten beholder det til kassen signaliserer at den er klar, og overleverer det deretter. Bruk det til å føre informasjon som bare siden din kjenner til – hvilken knapp som ble klikket på, hvilken kampanje en besøkende kom via, en intern kundereferanse – videre til kassesesjonen.
Konteksten lagres per arrangements-ID, så bestilling av to forskjellige arrangementer fra samme side holder kontekstene deres atskilt.
Ikke legg noe sensitivt i den. Den sendes til kassen via nettleseren og er synlig for alle som inspiserer siden.
Åpne flere arrangementer fra én side
Én instans håndterer et hvilket som helst antall arrangementer. Opprett den én gang og send inn en annen ID hver gang:
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 }
});
});
});Etter at klienten er ødelagt
Å kalle book() på en instans du allerede har ødelagt, logger en feil i konsollen og åpner ingenting. Dette er bevisst – en ødelagt instans lytter ikke lenger etter meldinger fra kassen, så vinduet den åpnet, kunne ikke lukkes eller observeres. Opprett en ny instans i stedet.
Lukke kassen
Den besøkende lukker kassen selv: Escape eller et klikk på det nedtonede området i panemodus, vinduskontrollene i popup-modus. Kassen lukker også seg selv når en bestilling er fullført.
Det finnes ingen offentlig metode for å lukke den fra koden din. Hvis du trenger å vite når den ble lukket, lytt etter hendelsen checkout.closed.