book(), ödeme sayfasını açan yöntemdir. İstemcideki diğer her şey onu yapılandırır veya gözlemler.
entase.book(eventID);
entase.book(eventID, options);eventID, satışa sunulacak planlanmış etkinliğin tanımlayıcısıdır. Etkinliğinizin paylaşım ve yerleştirme kodlarında kullanılan kimlikle aynıdır.
Çağrı hemen döner – paneli veya pencereyi açar ve ziyaretçinin işlemi bitirmesini beklemez. Sonrasında gerçekleşenlere tepki vermek için olayları kullanın.
Seçenekler
| Ad | Tür | Varsayılan | Açıklama |
|---|---|---|---|
checkoutMode | dize | örnek değeri | Yalnızca bu rezervasyon için 'pane' veya 'popup'. |
clientContext | nesne | null | Ödeme sayfası hazır olduğunda ona aktarılan rastgele veriler. Aşağıya bakın. |
collectConsent | boolean | örnek değeri | Ziyaretçiden koşullar bildirimini kabul etmesini isteyip istemeyeceğiniz. |
backdrop | boolean | örnek değeri | Ödeme sayfasının arkasındaki sayfanın karartılıp karartılmayacağı. |
backdropColor | dize | örnek değeri | Karartılan alanın rengi. |
pane | nesne | örnek değeri | Satır içi panel için { width, height }. |
popup | nesne | örnek değeri | Açılır pencere için { width, height }. |
Belirtmediğiniz her şey, örneğin oluşturulduğu değerine geri döner; dolayısıyla çağrı başına seçenekler, bir değiştirme kümesi olmaktan ziyade ekleyicidir.
entase.book('EVENT_ID', {
pane: { width: '60vw' },
backdrop: false,
clientContext: { source: 'homepage-hero' }
});İstemci bağlamı
clientContext, kendi tasarladığınız bir nesnedir. İstemci, ödeme sayfası hazır olduğunu bildirene kadar bu nesneyi tutar, ardından ona aktarır. Yalnızca sayfanızın bildiği bilgileri – hangi düğmeye tıklandığını, ziyaretçinin hangi kampanyadan geldiğini, dahili müşteri referansını – ödeme sayfası oturumuna taşımak için kullanın.
Bağlam, etkinlik kimliği başına saklanır; dolayısıyla aynı sayfadan iki farklı etkinlik için rezervasyon yapmak bağlamlarını ayrı tutar.
Buna hassas hiçbir şey koymayın. Tarayıcı üzerinden ödeme sayfasına aktarılır ve sayfayı inceleyen herkes tarafından görülebilir.
Tek bir sayfadan birden fazla etkinlik açma
Tek bir örnek, istenen sayıda etkinliği işler. Örneği bir kez oluşturun ve her seferinde farklı bir kimlik iletin:
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 }
});
});
});İstemci yok edildikten sonra
Daha önce yok ettiğiniz bir örnekte book() çağrılması, konsola bir hata kaydeder ve hiçbir şey açmaz. Bu kasıtlıdır – yok edilmiş bir örnek artık ödeme sayfasından gelen mesajları dinlemez; dolayısıyla açtığı pencere kapatılamaz veya gözlemlenemez. Bunun yerine yeni bir örnek oluşturun.
Ödeme sayfasını kapatma
Ziyaretçi ödeme sayfasını kendisi kapatır: panel modunda Escape tuşu veya karartılmış alana tıklama, açılır pencere modunda pencere denetimleri. Rezervasyon tamamlandığında ödeme sayfası da kendini kapatır.
Kodunuzdan kapatmak için genel kullanıma açık bir yöntem yoktur. Ne zaman kapandığını bilmeniz gerekiyorsa checkout.closed olayını dinleyin.