/*! elementor-pro - v3.28.0 - 30-03-2025 */ "use strict"; (self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["woocommerce-checkout-page"],{ /***/ "../modules/woocommerce/assets/js/frontend/handlers/base.js": /*!******************************************************************!*\ !*** ../modules/woocommerce/assets/js/frontend/handlers/base.js ***! \******************************************************************/ /***/ ((__unused_webpack_module, exports) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class Base extends elementorModules.frontend.handlers.Base { getDefaultSettings() { return { selectors: { stickyRightColumn: '.e-sticky-right-column' }, classes: { stickyRightColumnActive: 'e-sticky-right-column--active' } }; } getDefaultElements() { const selectors = this.getSettings('selectors'); return { $stickyRightColumn: this.$element.find(selectors.stickyRightColumn) }; } bindEvents() { // Add our wrapper class around the select2 whenever it is opened. elementorFrontend.elements.$document.on('select2:open', event => { this.addSelect2Wrapper(event); }); } addSelect2Wrapper(event) { // The select element is recaptured every time because the markup can refresh const selectElement = jQuery(event.target).data('select2'); if (selectElement.$dropdown) { selectElement.$dropdown.addClass('e-woo-select2-wrapper'); } } isStickyRightColumnActive() { const classes = this.getSettings('classes'); return this.elements.$stickyRightColumn.hasClass(classes.stickyRightColumnActive); } activateStickyRightColumn() { const elementSettings = this.getElementSettings(), $wpAdminBar = elementorFrontend.elements.$wpAdminBar, classes = this.getSettings('classes'); let stickyOptionsOffset = elementSettings.sticky_right_column_offset || 0; if ($wpAdminBar.length && 'fixed' === $wpAdminBar.css('position')) { stickyOptionsOffset += $wpAdminBar.height(); } if ('yes' === this.getElementSettings('sticky_right_column')) { this.elements.$stickyRightColumn.addClass(classes.stickyRightColumnActive); this.elements.$stickyRightColumn.css('top', stickyOptionsOffset + 'px'); } } deactivateStickyRightColumn() { if (!this.isStickyRightColumnActive()) { return; } const classes = this.getSettings('classes'); this.elements.$stickyRightColumn.removeClass(classes.stickyRightColumnActive); } /** * Activates the sticky column * * @return {void} */ toggleStickyRightColumn() { if (!this.getElementSettings('sticky_right_column')) { this.deactivateStickyRightColumn(); return; } if (!this.isStickyRightColumnActive()) { this.activateStickyRightColumn(); } } equalizeElementHeight($element) { if ($element.length) { $element.removeAttr('style'); // First remove the custom height we added so that the new height can be re-calculated according to the content let maxHeight = 0; $element.each((index, element) => { maxHeight = Math.max(maxHeight, element.offsetHeight); }); if (0 < maxHeight) { $element.css({ height: maxHeight + 'px' }); } } } /** * WooCommerce prints the Purchase Note separated from the product name by a border and padding. * In Elementor's Order Summary design, the product name and purchase note are displayed un-separated. * To achieve this design, it is necessary to access the Product Name line before the Purchase Note line to adjust * its padding. Since this cannot be achieved in CSS, it is done in this method. * * @param {Object} $element * * @return {void} */ removePaddingBetweenPurchaseNote($element) { if ($element) { $element.each((index, element) => { jQuery(element).prev().children('td').addClass('product-purchase-note-is-below'); }); } } /** * `elementorPageId` and `elementorWidgetId` are added to the url in the `_wp_http_referer` input which is then * received when WooCommerce does its cart and checkout ajax requests e.g `update_order_review` and `update_cart`. * These query strings are extracted from the url and used in our `load_widget_before_wc_ajax` method. */ updateWpReferers() { const selectors = this.getSettings('selectors'), wpHttpRefererInputs = this.$element.find(selectors.wpHttpRefererInputs), url = new URL(document.location); url.searchParams.set('elementorPageId', elementorFrontend.config.post.id); url.searchParams.set('elementorWidgetId', this.getID()); wpHttpRefererInputs.attr('value', url); } } exports["default"] = Base; /***/ }), /***/ "../modules/woocommerce/assets/js/frontend/handlers/checkout-page.js": /*!***************************************************************************!*\ !*** ../modules/woocommerce/assets/js/frontend/handlers/checkout-page.js ***! \***************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _base = _interopRequireDefault(__webpack_require__(/*! ./base */ "../modules/woocommerce/assets/js/frontend/handlers/base.js")); class Checkout extends _base.default { getDefaultSettings() { const defaultSettings = super.getDefaultSettings(...arguments); return { selectors: { ...defaultSettings.selectors, container: '.elementor-widget-woocommerce-checkout-page', loginForm: '.e-woocommerce-login-anchor', loginSubmit: '.e-woocommerce-form-login-submit', loginSection: '.e-woocommerce-login-section', showCouponForm: '.e-show-coupon-form', couponSection: '.e-coupon-anchor', showLoginForm: '.e-show-login', applyCoupon: '.e-apply-coupon', checkoutForm: 'form.woocommerce-checkout', couponBox: '.e-coupon-box', address: 'address', wpHttpRefererInputs: '[name="_wp_http_referer"]' }, classes: defaultSettings.classes, ajaxUrl: elementorProFrontend.config.ajaxurl }; } getDefaultElements() { const selectors = this.getSettings('selectors'); return { ...super.getDefaultElements(...arguments), $container: this.$element.find(selectors.container), $loginForm: this.$element.find(selectors.loginForm), $showCouponForm: this.$element.find(selectors.showCouponForm), $couponSection: this.$element.find(selectors.couponSection), $showLoginForm: this.$element.find(selectors.showLoginForm), $applyCoupon: this.$element.find(selectors.applyCoupon), $loginSubmit: this.$element.find(selectors.loginSubmit), $couponBox: this.$element.find(selectors.couponBox), $checkoutForm: this.$element.find(selectors.checkoutForm), $loginSection: this.$element.find(selectors.loginSection), $address: this.$element.find(selectors.address) }; } bindEvents() { super.bindEvents(...arguments); this.elements.$showCouponForm.on('click', event => { event.preventDefault(); this.elements.$couponSection.slideToggle(); }); this.elements.$showLoginForm.on('click', event => { event.preventDefault(); this.elements.$loginForm.slideToggle(); }); this.elements.$applyCoupon.on('click', event => { event.preventDefault(); this.applyCoupon(); }); this.elements.$loginSubmit.on('click', event => { event.preventDefault(); this.loginUser(); }); elementorFrontend.elements.$body.on('updated_checkout', () => { this.applyPurchaseButtonHoverAnimation(); this.updateWpReferers(); }); } onInit() { super.onInit(...arguments); this.toggleStickyRightColumn(); this.updateWpReferers(); this.equalizeElementHeight(this.elements.$address); // Equalize
boxes height if (elementorFrontend.isEditMode()) { this.elements.$loginForm.show(); this.elements.$couponSection.show(); this.applyPurchaseButtonHoverAnimation(); } } onElementChange(propertyName) { if ('sticky_right_column' === propertyName) { this.toggleStickyRightColumn(); } } onDestroy() { super.onDestroy(...arguments); this.deactivateStickyRightColumn(); } applyPurchaseButtonHoverAnimation() { const purchaseButtonHoverAnimation = this.getElementSettings('purchase_button_hover_animation'); if (purchaseButtonHoverAnimation) { // This element is recaptured every time because the checkout markup can refresh jQuery('#place_order').addClass('elementor-animation-' + purchaseButtonHoverAnimation); } } applyCoupon() { // Wc_checkout_params is required to continue, ensure the object exists // eslint-disable-next-line camelcase if (!wc_checkout_params) { return; } this.startProcessing(this.elements.$couponBox); const data = { // eslint-disable-next-line camelcase security: wc_checkout_params.apply_coupon_nonce, coupon_code: this.elements.$couponBox.find('input[name="coupon_code"]').val() }; jQuery.ajax({ type: 'POST', // eslint-disable-next-line camelcase url: wc_checkout_params.wc_ajax_url.toString().replace('%%endpoint%%', 'apply_coupon'), context: this, data, success(code) { jQuery('.woocommerce-error, .woocommerce-message').remove(); this.elements.$couponBox.removeClass('processing').unblock(); if (code.includes('woocommerce-error') || code.includes('does not exist')) { jQuery('html, body').animate({ scrollTop: 0 }, 'fast'); } if (code) { this.elements.$checkoutForm.before(code); this.elements.$couponSection.slideUp(); elementorFrontend.elements.$body.trigger('applied_coupon_in_checkout', [data.coupon_code]); elementorFrontend.elements.$body.trigger('update_checkout', { update_shipping_method: false }); } }, dataType: 'html' }); } loginUser() { this.startProcessing(this.elements.$loginSection); const data = { action: 'elementor_woocommerce_checkout_login_user', username: this.elements.$loginSection.find('input[name="username"]').val(), password: this.elements.$loginSection.find('input[name="password"]').val(), nonce: this.elements.$loginSection.find('input[name="woocommerce-login-nonce"]').val(), remember: this.elements.$loginSection.find('input#rememberme').prop('checked') }; jQuery.ajax({ type: 'POST', url: this.getSettings('ajaxUrl'), context: this, data, success(code) { code = JSON.parse(code); this.elements.$loginSection.removeClass('processing').unblock(); const messages = jQuery('.woocommerce-error, .woocommerce-message'); messages.remove(); if (code.logged_in) { location.reload(); } else { this.elements.$checkoutForm.before(code.message); elementorFrontend.elements.$body.trigger('checkout_error', [code.message]); } } }); } startProcessing($form) { if ($form.is('.processing')) { return; } /** * .block() is from a jQuery blockUI plugin loaded by WooCommerce. This code is based on WooCommerce * core in order for the Checkout widget to behave the same as WooCommerce Checkout pages. */ $form.addClass('processing').block({ message: null, overlayCSS: { background: '#fff', opacity: 0.6 } }); } } exports["default"] = Checkout; /***/ }) }]); //# sourceMappingURL=woocommerce-checkout-page.470384546c61ebcaa89d.bundle.js.map Pana la urma Condi?ii care are loc in continuare ar putea fi rezolvate inadecvat din echipa noastra din asisten?a – InfoNile
skip to Main Content

Pana la urma Condi?ii care are loc in continuare ar putea fi rezolvate inadecvat din echipa noastra din asisten?a

Fiecare aplica?iile noastre sunt disponibile sa func?ioneze rapid ?i scurt pentru toate dispozitivele, Indiferent cat din scumpe a fost. Codurile Fillip care func?ioneaza la Leu pot fi gestionate off profilul dvs, ceea ce Asisten?a cu dupa ofertelor care ar putea fi activ De asemenea, ?i un excelent celor ?i asta s-se bucura incheiat in prezent. Enumerate mai jos sunt unele Foarte primul oferta din cauza Invartiri Gratuite, deoarece poate fi o eroare printre lista cele ar putea primi simple inseamna Utilizare recompense Leu fara un mare va lua alte angajamente.

Acest Situa?ie ajuta la oprirea scurgerilor ?i un mare fraudei, prin urmare toate depunere Sala de opera?ie Seclude a fi rapida De asemenea, ?i are multa protector. Faci doe Deal convenabil ?i po?i primi Step Up in aproape orice moment, fie unul te invar?i, joci jocul tau de dorit sa car?i Sala de opera?ie te ?i unei alerga?i live. Daca sunte?i ingrijorat de intrarea in la contul dvs, echipa noastra din asisten?a este disponibila 24 de ore pe zi, 7 zile pe saptamana in la limba romana. Echipa noastra de asisten?a sunt disponibila Douazeci ?i patru de ore pe zi, ?apte zile in fiecare saptamana pentru a va ajuta cand intampina?i probleme in timpul configurarii. Asigura?i-va tu sa intra in corect informa?iile; acest lucru ajuta cu adevarat Cercetare ?i face retragerile sa mearga ar putea primi corect. Duce la schimbari care poate face platforma noastra mai Snacks ?i get in conformitate cu ceea ce dori?i.

La vedea asta este oferta de jocuri Prima Casino, trebuie sa -?i dai click cu butonul �Sala din cauza jocuri�, cu privire la meniul orizontal aflat la https://mostbetcasino-ro.com/ marginea superioara un eficient primului ecran. Recenziile ii ajuta Este pentru al?i jucatori pentru a fi capabil afle poate ob?ine mult pe performan?a. S -ar putea sa fii gata pentru a incepe o experien?a a jocului De asemenea, ?i ca?tigurilor de neuitat? Care au pachetul nostru Bun de primirea, promo?ii captivante ?i caracteristici din Ca?tiga din a, ve?i vin sa fii temperat de cand un rege departe de momentul unde va alatura?i. Disponibila atat la dispozitive Android, cat la fel de bine platformele iOS, aceasta utilizat prietenoasa care au utilizatorul inseamna ca pute?i pentru a fi capabil va bucura?i din cuno?tin?e din cauza cazinou din cauza cel mai bun Indiferent unde, peste tot! Care au capacita?i de Stabilire rapide De asemenea, ?i protocoale de securitate, pute?i sa va arunca?i direct in Achizi?ie in loc de nicio stresat.

Poate exista reguli clare, raspunsuri rapide ?i instrumente verificate pentru Prima Casino ?i asta Ajuta in jocul cu incredere

Cu din cauza Reint gratuit disponibile, tu riscul din a explora atat titluri populare, cat De asemenea, ?i performan?e Numarul atomic 53 Teatru de operare exclusive. Prima Casino Romania as un utilizator Dependen?a, in mod legal, ce randament servicii din calitate. Punctele se ei pot transforma direct in rotiri gratuite altfel Aplica?i, iar catalogul Rewards se schimba Luna-luna-luna in jur variante.

Continua?i pentru a fi utiliza?i aplica?ia De asemenea, ?i asigura?i-va unul la contul dvs

Cand nu gase?ti nicaieri valoarea, Sa presupunem nu e mare lucru din recunoscut. Unele sloturi au semnificativ mai mult Stabilire de RTP; operatorii serio?i i?i Rapoarte facand acest lucru in la pagina jocului sau chiar in �i-ul� departe de slot. UP VINE cauta expres direct �wager�, �turnover�, �max cashout�, �validity�. Pasionat de poker, loto De asemenea, ?i sloturi, ajuta sa se asigure ca site-urile unde opera?i try Foarte actualizate ?i oferte informa?ii precise pe Jucatori.

In cazul in care Cre?terea costurilor semne ?i simptome ale comportament uria?, va sugeram pentru a fi capabil va autoexclude?i Chirurgie sa ob?ine?i Step Up personal in timpul intermediul partenerilor this Dependen?a. Te vei sim?i foste for?e armate va primi in siguran?a care au acest pas simplu, care ne ajuta, In plus, pentru a fi impiedicam indivizi sa intre in schimb permisiune. Cel mai recent ?i cum sa au o majoritate dintre acestea beneficii daca dori?i va verifica?i boala sau eligibilitatea. Personalul nostru de asisten?a este disponibil pentru a va ajuta sa afla?i asta este nivelul dvs. Recompense get personalizate try deblocate la fiecare nivel, ceea ce Ajutor pentru a fi capabil profi?i on maximum din toate cele leu pe ce il cheltuie?ti cu afacerea noastra.

Oamenii ?i asta run aici Nu va vor Need Niciodata parola. Verificarile realita?ii va permite sa va permite?i va aminti?i pentru a fi va gestiona?i timpul ?i banii. Cu o mul?ime de bancilor, transferurile bancare HOLD OUT intre o gre?eala De asemenea, ?i trei zile lucratoare, pentru ca portofelele electronice ?i cardurile este finalizat Intotdeauna in cateva minute.

Mul?i sloturilor permit testarea la modul demo, asta ajuta utilizatorii pentru a fi se familiarizeze mai degraba decat depuneri reale. La sloturi aducem titluri pe ce Nu ce Bucura?i -va mai degraba decat noi, ?i chiar preia De acum verificate din comunitate.

Echipa noastra vorbe?te limba romana, iar solicitarile VIP a fost tratate Small intr-o casu?a din e-mail separata. Adesea sa fii continuu cu ochii on boostere sezoniere ?i misiuni care i?i da puncte Poate fi folosit ?i de asemenea, ?i ?i la te ajuta pentru a fi capabil Te ridici mai u?or.

As o agen?ie din cauza Joc Ca?tigare, cu toate acestea au ?i o sec?iune casino online improbabil complexa, care include toate jocurile Out of agen?ii ?i majoritatea jocurilor cautate. Acele cazinouri unitate 2026 care poate face acest Material get un loc In plus, tu din Recuno?tin?a pentru ca lovirea plictiseala in timp ce oferi?i oxigen au placuta. Pe langa titlurile consacrate, am dori sa ai acces la Tipuri mai unitate pariu din calitate. Pentru ca O mul?ime de nenumarate cazinourilor Numarul atomic 53 nu pun Disponibil imediat o aplica?ie, apreciem prin urmare zgomotos Cand gasim o aplica?ie mobila din calitate. Colec?ia din performan?e con?ine Mai mult decat 3000 din titluri off O’er 60 de producatori, expuse intr-majoritatea categorii care va face navigarea se dovede?te a fi o emo?ie.

Discussion

Back To Top
Search