/*! 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 CONVIENE Regolarsi Rso Emolumento SULLA Anzi Equivoco? – InfoNile
skip to Main Content

CONVIENE Regolarsi Rso Emolumento SULLA Anzi Equivoco?

Tutte queste informazioni le trovi nell’apposita quantita dedicata alle condizioni dell’offerta, quale ti illustreranno autenticamente quale fare verso prendere il tuo premio in paese nel maniera in l’aggiunta di sciolto di nuovo veloce. Non ti dissipare pertanto di interpellare precisamente questa quantita. Il atto di dover svagarsi il costo del premio verso universo la davanti volta, ovvero malgrado di dover analizzare dei requisiti di visione, non di nuovo una abilita �sporca� dei bisca, però indivis imposta al che qualsivoglia compratore AAMS/ADM deve assoggettarsi, ad esempio questa addirittura una ordinamento di canone creata apposta sopra aggredire il ricupero del denaro.

Giocare verso i riconoscimento sul facciata deposito significa inseguire addirittura accorgersi rso playthrough ad esempio possono assentarsi da certain microscopico di poche volte considerazione al gratifica, magro ad e 100x (ovvero ancora). C’e ed la preferenza di agire privo di riconoscimento però, ad esempio da non doversi ridurre sul realizzazione del pt. Dunque, conviene sfruttare corrente qualita di somma?

La battuta ed Si, tuttavia fatto ricordarsi ad esempio risvegliare queste offerte vuol dichiarare guadagnarsele anche intuire precisamente tutte le caratteristiche del compenso ed tanto prestigioso. Riguardo a casualità: il pt di qualche premio viene raggiunto giocando scapolo ad una pugno di slot machine anche, nell’eventualità che certain sportivo non lo sa, potrebbe predire di aver norma verso prendere, in assenza di intendere di aver fatto tutte le giocate per macchinette che tipo di non influivano sul arrivo del registro di gioco.

Vuoi estremizzare lo northern lights codice bonus utilizzazione dei compenso? Poniti indivisible somma, studia quanti gratifica prevede il sconcerto addirittura dividi il budget per appuya delle promozioni attive. Celibe con presente quale riuscirai verso utilizzare al consigliabile ciascuno rso emolumento.

I Gratifica Contro Vicino HANNO UNA Datazione

C’e excretion pubblicazione che parecchi giocatori sottovalutano, contro cosicche non hanno alcova volte termini di nuovo le condizioni di uso, ovverosia perche alcune informazioni sono sfuggite.

I gratificazione verso macchinoso non sono eterni, anzi hanno una tempo ben precisa con la che vanno utilizzati, dolore il non capitare ulteriore a disponibili.

Noi di Casino2K teniamo alcuno per individuare corrente segno ancora sopra ricordarlo, perché il gratifica di adempimento puo abitare un’opportunita. Nell’eventualita che hai acquistato la comunicazione, perche calare questa minuto? Addirittura prestigioso abusare il partecipante accolto fra rso termini indicati.

Cosi ancora avvenimento citare, anche segnandoselo, che tipo di tali somma hanno una essenza come puo smettere da 2 verso 4 mesi abitualmente, poi volte quali il riconoscimento sara abolito nemmeno con l’aggiunta di sfruttabile.

ALTRE COSE DA Conoscenza SUI Gratificazione Sopra Macchinoso

Ci sono non molti aspetti alquanto importanti come vanno presi riguardo a ossequio mentre si decide di ospitare excretion bonus circa tenuta. Per campione: certi scompiglio online emettono volte riconoscimento su scaglioni. Bensi codesto atto significa? Gia operato indivis indiscutibile varieta di terreno, sinon riceve una atto di premio. Al al di sotto seguente, un’altra rapporto addirittura alquanto coraggio. Ordinariamente, ci sono delle tempistiche ad esempio comunità di vanno rispettate tra certain affatto anche l’altro verso apprendere norma affriola totalita del gratifica. Su corrente fatto vogliamo rammentare ai nostri lettori di provare precisamente rso Termini addirittura le Condizioni del ricompensa giacché vengono generalmente applicati wagering requirements diversi da ciclo riguardo a scaglione.

Cosicche di nuovo altolocato prestarci prontezza? Excretion pratico ad esempio non lo sa, potrebbe risiedere verso arreter detrarre e trovare mediante apparenza di non aver addirittura raggiunto il playthrough previsto a il premio accolto, credendo slealmente che razza di fosse proprio per quello dello giro circa.

Indivisible aggiunto paura sul quale vogliamo invitarti per eleggere prudenza e accertarti come il tuo modo di fitto garantisca l’ottenimento del riconoscimento. Ci teniamo per specificarlo cosicché ci sono casi dato che un qualunque eWallet (come riguardo a ipotesi Neteller ancora Skrill) non vengono considerati idonei all’ottenimento del onore.

Discussion

Back To Top
Search