book() yra metodas, atidarantis atsiskaitymo langą. Visa kita kliente jį sukonfigūruoja arba stebi.
entase.book(eventID);
entase.book(eventID, options);eventID yra numatyto parduoti renginio identifikatorius. Tai tas pats ID, kuris naudojamas jūsų renginio bendrinimo ir įterpimo koduose.
Iškvietimas grąžinamas iškart – jis atidaro skydelį arba langą ir nelaukia, kol lankytojas baigs. Norėdami reaguoti į tolesnius įvykius, naudokite įvykius.
Parinktys
| Pavadinimas | Tipas | Numatytoji reikšmė | Aprašymas |
|---|---|---|---|
checkoutMode | eilutė | egzemplioriaus reikšmė | 'pane' arba 'popup' tik šiai rezervacijai. |
clientContext | objektas | null | Savavališki duomenys, perduodami atsiskaitymo langui, kai jis bus parengtas. Žr. toliau. |
collectConsent | loginė reikšmė | egzemplioriaus reikšmė | Ar prašyti lankytojo sutikti su sąlygų pranešimu. |
backdrop | loginė reikšmė | egzemplioriaus reikšmė | Ar pritemdyti už atsiskaitymo lango esantį puslapį. |
backdropColor | eilutė | egzemplioriaus reikšmė | Pritemdytos srities spalva. |
pane | objektas | egzemplioriaus reikšmė | { width, height } įterptajam skydeliui. |
popup | objektas | egzemplioriaus reikšmė | { width, height } iškylančiajam langui. |
Visos nenurodytos parinktys naudoja reikšmę, su kuria buvo sukurtas egzempliorius, todėl konkretaus iškvietimo parinktys papildo, o ne pakeičia visą rinkinį.
entase.book('EVENT_ID', {
pane: { width: '60vw' },
backdrop: false,
clientContext: { source: 'homepage-hero' }
});Kliento kontekstas
clientContext yra jūsų pačių sukurtas objektas. Klientas jį saugo, kol atsiskaitymo langas praneša, kad yra parengtas, tada jį perduoda. Naudokite jį informacijai, kurią žino tik jūsų puslapis, perduoti į atsiskaitymo seansą – kuris mygtukas buvo spustelėtas, per kurią kampaniją atvyko lankytojas, vidinė kliento nuoroda.
Kontekstas saugomas pagal renginio ID, todėl rezervuojant du skirtingus renginius iš to paties puslapio jų kontekstai lieka atskiri.
Nedėkite į jį jokios jautrios informacijos. Ji perduodama į atsiskaitymo langą per naršyklę ir yra matoma visiems, kurie tikrina puslapį.
Kelių renginių atidarymas iš vieno puslapio
Vienas egzempliorius gali apdoroti bet kokį renginių skaičių. Sukurkite jį vieną kartą ir kaskart perduokite skirtingą 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 }
});
});
});Sunaikinus klientą
Iškvietus book() jau sunaikintame egzemplioriuje, konsolėje užregistruojama klaida ir niekas neatidaroma. Tai daroma sąmoningai – sunaikintas egzempliorius nebesiklauso pranešimų iš atsiskaitymo lango, todėl jo atidaryto lango nebūtų galima uždaryti ar stebėti. Vietoj to sukurkite naują egzempliorių.
Atsiskaitymo lango uždarymas
Lankytojas atsiskaitymo langą uždaro pats: klavišu Escape arba spustelėjęs pritemdytą sritį skydelio režimu, o iškylančiojo lango režimu – lango valdikliais. Atsiskaitymo langas taip pat užsidaro pats, kai rezervacija užbaigiama.
Nėra viešo metodo jį uždaryti iš jūsų kodo. Jei reikia žinoti, kada jis užsidarė, stebėkite checkout.closed įvykį.