Norēķināšanās tiek atvērta vienā no diviem režīmiem.
Panelis ir iekļauts panelis, kas tiek attēlots jūsu lapā. Datorā tas ieslīd no labās puses, nepārsniedzot pane.width; mobilajā ierīcē tas ieslīd uz augšu no apakšas. Apmeklētājs paliek jūsu vietnē, un panelis tiek aizvērts, nospiežot Escape vai noklikšķinot uz aptumšotās zonas.
Uznirstošais logs ir atsevišķs pārlūkprogrammas logs, kas tiek centrēts apmeklētāja ekrānā. Klients uzrauga, vai logs tiek aizvērts, lai varētu noņemt fonu.
Iekļautai norēķināšanās funkcijai nepieciešama uzticama izcelsmes vietne
Paneļa režīms attēlo Entase norēķināšanos iframe elementā jūsu domēnā, tāpēc tas ir atļauts tikai tiem domēniem, kurus esat nepārprotami autorizējis. Sadaļā Iestatījumi → Integrācijas pievienojiet Uzticamās izcelsmes vietnes katru domēnu, kas atver norēķināšanos – skatiet Integrācijas un norēķināšanās pielāgošana.
Ir svarīgi, vai ir iekļauts prefikss www.. Ja neesat pārliecināts, kuru formu izmanto jūsu vietne, pievienojiet abas.
Ja jūsu domēns nav sarakstā, norēķināšanās joprojām darbojas – tā vienkārši tiek atvērta kā uznirstošais logs.
Kā tiek noteikts 'auto'
Izmantojot noklusējuma iestatījumu checkoutMode: 'auto', klients pieņem lēmumu šādā secībā:
- Nav HTTPS → uznirstošais logs. Iekļautā norēķināšanās nekad netiek izmantota nedrošā lapā.
localhostvai127.0.0.1→ panelis ar konsolē reģistrētu brīdinājumu. Tā ir izstrādes ērtība, lai varētu veidot iekļautajam izkārtojumam; tas neko nesaka par to, vai jūsu produkcijas domēns ir atļauts.- Citādi → klients vaicā Entase, vai šī izcelsmes vietne drīkst izmantot iekļauto norēķināšanos, nosūtot
pk, lai identificētu kontu. Ja atbildē ir ietverts pane, režīms kļūst par pane.
Kamēr šī atbilde nav saņemta, režīms ir popup. Šī ir darbība, kas visdrīzāk jūs pārsteigs: pārbaude ir asinhrona, tāpēc book() izsaukums, kas tiek veikts uzreiz pēc lapas ielādes – pirms apmeklētājam ir bijusi iespēja kaut kam noklikšķināt –, var joprojām atvērt uznirstošo logu arī pilnībā pareizi konfigurētā domēnā. Praksē īsts klikšķis vienmēr tiek veikts ilgi pēc pārbaudes pabeigšanas. Ja norēķināšanos atverat automātiski, piespiedu kārtā iestatiet režīmu, nevis paļaujieties uz noteikšanu.
Režīma piespiedu iestatīšana
Iestatiet checkoutMode skaidri, lai pilnībā izlaistu noteikšanu:
const entase = new Entase({ pk: 'YOUR_PUBLISHABLE_KEY', checkoutMode: 'popup' });Vai ignorējiet to vienai rezervācijai:
entase.book('EVENT_ID', { checkoutMode: 'popup' });Piespiedu iestatot 'pane' domēnā, kas nav uzticama izcelsmes vietne, atļauja netiek piešķirta – panelis tiek atvērts, taču tajā esošā norēķināšanās nevar sazināties ar jūsu lapu. Izmantojiet 'popup' kā apzinātu izvēli un atstājiet 'auto', ja vēlaties iekļauto norēķināšanos visur, kur tā ir atļauta.
Neatpazīta vērtība tiek ignorēta un uzskatīta par 'auto'.
Režīma nolasīšana un maiņa izpildlaikā
entase.getCheckoutMode(); // 'pane' or 'popup' — never 'auto'
entase.setCheckoutMode('popup'); // applies to every later book() callgetCheckoutMode() atgriež noteikto režīmu, tāpēc tas norāda, kas faktiski notiks. Atkārtoti iestatot režīmu uz 'auto', noteikšana tiek veikta no jauna.
Uznirstošo logu bloķētāji
Pārlūkprogrammas atļauj window.open() tikai lietotāja darbības laikā. Izsauciet book() tieši klikšķa apstrādātājā – nevis pēc await, fetch vai setTimeout, jo līdz tam brīdim darbības konteksts ir beidzies un uznirstošais logs tiek bloķēts.
// Blocked: the gesture is gone by the time book() runs.
button.addEventListener('click', async () => {
const event = await fetch('/api/current-event').then(r => r.json());
entase.book(event.id);
});
// Fine: resolve the id first, open on the click.
button.addEventListener('click', () => entase.book(button.dataset.eventId));Tas attiecas tikai uz uznirstošā loga režīmu. Paneļa režīms lapā izveido elementu, un uz to tas neattiecas.