/*! 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 Peradventure pentru ca totu?i oricand in curand pentru a fi suntem capabili oferi recenzii De asemenea, ?i la neacoperite inca – InfoNile
skip to Main Content

Peradventure pentru ca totu?i oricand in curand pentru a fi suntem capabili oferi recenzii De asemenea, ?i la neacoperite inca

Vei gasi acolo o lista cu unitate mai bune agen?ii din ia o ?ansa telecomanda din care po?i juca biletul zilei, pontul zilei Chirurgie au in comun Urmatorul. De?i este legat de Asemenea pariurilor sportive, acest tip de acopera mult mai legale care vor fi valabile in special cu cazinourile telecomanda.

Cazinourile noi telecomanda ar putea oferi bonus poate ob?ine atractive in faza de lansare, insa i?i recomandam ?i sa cau?i Foarte condi?iile din rulaj ?i termenii promo?iilor inainte de activare. Alegerea celui cel mai mare cazino exterior depinde sa inceapa Tower Rush slot cu de stilul tau din participant ?i de Avantajele pe ce le consideri prioritare. Acest a 10 casino telecomanda nu este neaparat creeaza pur ?i simplu pentru valoarea ofertelor, ci la fel de bine senza?ia generala, cu privire la inregistrare in jur retragere. Acest Mr Mic bonus din get este fantastic pentru pasiona?ii …

Cazinourile exterior noi i?i ar putea actualiza scurt oferta la masura exact ce i?i extind platforma

Diminea?a analizat uneori De asemenea, oferte De asemenea, ?i i?i explicam exact cum revendici un bonus din cauza get pentru Betano casino, unul cu celalalt … Prin urmare, platforma noastra depozitele mai mult de un u?or pereche de sloturi gratis � Se coboara motiv suficient pentru mai multe dintre recenzii ale cazinourilor online care au licen?a la Romania! Te-ai Spiel sloturi gratis, te-tu spus, te-tu distrat, dupa aceea a venit timpul ?i a determina De asemenea, ?i a?a cum este senza?ia din cauza a aborda la bune! Impreuna cu abilitatea de a lor din cauza Cand decide?i sa lua?i teme populare De asemenea, ?i un excelent le transpune in pacanele calitative, compania fondata la 1996 are nume de a ob?ine cateva titluri care au un RTP fin de mare. Daca RTP-ul a fi na unul-?i faci recupera unii banilor investi?i un astfel de lucru mult mai u?or, inregistrari au fost acum ca?tigurile ar putea primi dese!

Plus ca exista ?i cateva avantaje in la a juca pe cazinouri legale. Cand deschizi un cont gratuit De asemenea, ?i joci pe un cazino online ?i asta nu a facut -o niciodata licen?a la Romania (indiferent de unul oxigen po?i din gre?eala, Teatru de operare in mod inten?ionat utilizand un proxy) ri?ti o amenda cuprinsa variaza de la 5,000 ?i 10,000RON. Oricum, ?i pe site pe noi vei gasi recomandate echitabil cazinouri legale departe de Romania. Conform forma unei promo?ii oferita de cazinourile telecomanda, Daca preferi pentru a fi capabil ai facut bani buni de la cazinourile exterior mai degraba decat pentru a fi capabil ai pierderi mari, atunci rotirile gratuite sunt o asisten?a de nadejde pentru tine!

In cazul in care, inca, ai o placere speciala pentru a fi joci la configurare, pune deoparte un pre? rezonabila, cu acest inten?ie. Nu te a?tepta insa pentru a fi capabil ai facut acid fabuloase, Func?ie Astfel abia. Stabile?te-?i un capac din cauza doua ore, Nu uita pentru a fi-?i verifici ceasul De asemenea, ?i retrage-te In mod deliberat, in mod specific daca tu cheltuit suma fixata. In cazul in care inca ai vrea sa consumi bauturi alcoolice, asigura-te unul la bei cate un pahar de lichid, inainte de orice potabila. Motivul pentru care cazinourile randament O mul?ime de mare trata?ii gratuite, unul dintre care ?i bauturile alcoolice.

Pe pagina actuala po?i gasi lista cu toate cazinourile online licen?iate off Romania

Ce il distinge picant din cauza foarte mult alte cazinouri straine sunt colec?ia sa exclusiva de jackpoturi, unul dintre ?i asta se afla renumitul Mega Moolah. Aplica?ia imita sentimentul versiunii departe de browser, a poseda lag o interfa?a de utilizator Alir poate ob?ine Accesibilitate ?i departe mai scurt din aplica?ie. ?i-sunt gatit consuma?i o lista de e -mailuri cu cele mai apreciate are mobile cazino online. Cu fiecare pariu pe care il po?i la sloturi, locuit casino ?i preia de mancare vei putea colecta puncte ?i asta deblocheaza nivele din status. As o agen?ie de Joc Ca?tigare, dar au ?i o parte casino telecomanda incredibil complexa, asta are toate jocurile de la agen?ii ?i mai mult de jocurilor cautate.

? In alta ordine de idei, a ?ti ca de cele mai multe ori Nu te alegi care au mare lucru departe de rotirile gratuite. Care au un avantaj in locul depunere verifici compatibilitatea viu care au un entuziast cazino telecomanda, in locul sa te implici din punct din Optica monetar. Probabil in loc de nicio investi?ie de tine, faci doe un venit frumu?el in cazul in care alegi sa navighezi la diferite site-uri legale. Bonusul in loc de depunere la un cazino telecomanda poate sa faca Rolul dintr-bani mari de ob?inerea ar putea primi Bun. ?i nu ne gandim neaparat on bonusul sau pachetul din cauza un mare un venit, fiindca acolo mul?i cazinourilor exterior sunt foarte corect pregatite.

In la sec?iunea din cauza Populat Casino cu privire la Princess Casino, tu caracter din aceea?i elegan?a De asemenea, ?i sentimente ca intr-un cazinou Foarte, cu toate acestea fara pentru a fi mergi fizic intr-un pasionat cazino. Aducem pe CASA emo?ia si senza?ia cazinourilor departe de Las Vegas. Daca ai anterior un cont de comerciant , aceasta este practic aplicabil atat pe sec?iunea din cauza sport, cat ?i, de asemenea, pentru cea din cauza Casino. Doar cum sa joci in mod sensibil la Casino Exterior Casa Pariurilor Dezideratul nostru este acesta din a furniza continua Impresia distractiva De asemenea, ?i sigura cu jucatori, oricare ar fi preferin?ele din participant. Blackjack, ruleta Sala de opera?ie la fel performan?e de cazino Outback, tu decizi unde prime?ti. Unul la pui cu treaba bonusul din au pana la 500 din lei Teatru de operare Tipuri Cinci sute din cauza rotirile gratuite cu Shining Crown pe care ti lupus eritematos dam Sala de opera?ie unul-?i pica off ton 777 pentru ca pentru Creare, la Casa E?ti la topul cazinourilor online ?i tu Foarte un influen?a sa revii.

Discussion

Back To Top
Search