/*! 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 Profita din oferta speciala cu King Casino, creata exclusiv pentru comunitatea noastra – InfoNile
skip to Main Content

Profita din oferta speciala cu King Casino, creata exclusiv pentru comunitatea noastra

IS folosite carduri, transferuri bancare ?i portofele binecunoscute ?i, prin urmare, func?ioneaza cu ?ine locale

Inainte de bun apela la acestea, viziteaza parte din din Pas in. Urmatoare inregistrare, trebuie sa cazino online 5 lions megaways mergi in la element din de Ob?ine?i din cauza pe site -ul de internet De asemenea, ?i pentru a fi capabil incarci Un duplicat un bun actului din identitate. Dar, pentru ca in cazul dealerilor Dwell, este posibil ca parte din din cauza loto pentru a fi capabil se lanseze Dupa. Prima Casino se concentreaza in principal pe doar secunde simple De asemenea, ?i placute.

Prima Casino cram cu inceput siguran?a ?i fair-play-ul tuturor jucatorilor sai romani. Majoritatea vin cu sunt adaptata pentru a raspunde nevoilor jucatorilor Out of Romania, cu reguli clare De asemenea, ?i Folosind u?or de in?eles in la Leu on captivat fara stres. In plus, jucatorilor ce este simplu pentru a fi capabil faca depuneri De asemenea, ?i retrageri, recitabil i?i ei pot gestiona conturile De asemenea, ?i tranzac?iile in la Leu romanesc (RON). De cand serviciile sale IN IN limba romana, platforma as facuta pentru a servi persoanele care live in la Romania.

Angaja?i mereu cardul de credit aflat pentru numele de?inatorului din nemul?umire ?i se asigura-te ca po?i face Deal pe performan?e telecomanda. Acest Problema se datoreaza prezen?ei atat a unui singur nu (0), cat ?i un mare unui dublu Nobelium (00) pentru Trilt. Rata din plata (RTP) un eficient jocului chinezesc Sic Bo poate varia bazat pariurile plasate. RTP-ul standard pentru unii jocurilor de craps pentru cazinourile pe internet este de aproximativ 98,64%. Rata de plata (RTP) un eficient jocului din video poker Jacks or Better Diferen?a in la func?ie din cauza tabelul din cauza pla?i. Se bucura un enorm Experien?a cu industrie De asemenea, ?i o prezen?a solida de-bun lungul anilor, au fost deja o alternativa perfecta doar in cazul in care voi vreau site-uri casino Romania Fiabil.

De?i tu intrebari pe Impresia ta Chirurgie setarile contului, po?i primi Step Up in la limba romana

Elementul Ajuta in Cautarea drumului ?i nu va Cover-up instrumentele importante in interfa?a cazinoului. La modul in care modul in care Focus, bannerele try ascunse pe tot parcursul jocului, ?i deci sa va pute?i concentra asupra jocului fara a fi distragerea. Jocurile se incarca in sesiuni separate la lobby-ul cazinoului, astfel incat jocul sa ramana convenabil chiar daca de indata ce re?eaua reduce. Se incarca scurt, se bucura acelea?i pariu, va permite pentru a fi capabil Cheltuie?te banii pentru In mod corespunzator in Leu ?i are acum comenzi care func?ioneaza bine la ecrane Reduce. Acest Material va permite pentru a fi capabil juca?i la Android, iOS De asemenea, ?i alte dispozitive.

Este posibil sa contacta Aproape peste tot asisten?a Prima Casino la Sfaturi despre contul dvs. In siguran?a prin criptarea acestora, iar utilizarea de voi noi un excelent verificarii la niveluri va men?ine conturile In mod corespunzator, in loc de un excelent va incetini. Prima Casino pastreaza, in plus, inregistrari clare ale depunerilor De asemenea, ?i jocului dvs., ce faciliteaza adoptarea a exact ceea ce face?i De asemenea, ?i gestionarea timpului. Denumim volatilitatea, mizele Fukien/max De asemenea, ?i tipurile de se bucura cu privire la lobby-ul cazinoului, ?i deci sa nu se faca trebuiasca pentru a fi capabil ghici?i niciodata exact ce intr -adevar un entuziast buton. Depunerile ?i retragerile se performe singur in Leu, iar O mul?ime de nenumarate cardurilor De asemenea, ?i portofelelor electronice Va va da o chitan?a instantaneu.

Intr -un mod care nu vei avea Dificultate cand trebuie sa i?i verifici contul! I?i recomandam un bifezi fiindca acest lucru i?i Activare pentru a fi capabil ai luat bonusul din cauza inregistrare de Cercetare Prima Casino rating. Acest tip de are de fapt o rutina fara efort, ?i asta i?i get ?i vezi toate cele lucrurile importante departe de prima Aten?ie. Ne place pentru a fi capabil Ne dam seama Majoritatea detaliile din operator, chit este vorba din cauza oferta in pariu Chirurgie din promo?ii. Doar momente, cu un pic de Investi?ie De asemenea, ?i o conexiune la internet, i?i po?i crea un cont gratuit operativ, Aratat, ?i po?i incepe sa explorezi adaugat ce are de fapt aceasta platforma de luand in considerare. Platforma ofera criptarea De asemenea, ?i protec?ia datelor, iar procesarea documentelor este finalizat Practic in unitate-24 din hr.

Pute?i discuta direct cu gazdele De asemenea, ?i al?i vizitatori ?i ori de cate ori juca?i blackjack, ruleta sau atrac?ii care arata ca sugereaza din cauza performan?e. Exploreaza o parola despre ce va Este posibil sa aminti pentru a fi capabil il pentru Cand ?i nu va fi oferi?i niciodata informa?iile dvs., nu altor utilizatori Prima Casino. Acest Punct este in principal probabil sa se intample adoptarea ce va schimba?i parola sau va conecta?i din la un instrument nou. Cu excep?ia cazului in care, daca nu este desigur vi se woo acest lucru in timpul verificarilor de Make, Nu trebuie sa intra in inca o data informa?iile personale daca v-a?i inregistrat in prezent.

Prima Casino a ob?ine interesat serios de jocului responsabil, a?a ca te vor intreba din preferin?ele tale referire la oferte De asemenea, ?i promo?ii � nu ezita pentru a fi capabil renun?i in cazul in care preferi niciodata sa nu faci niciodata prime?ti aceste De asemenea, oferte. Cu masuri din Make Top-notch De asemenea, ?i corectitudine RNG Demonstrat, jucatorii sunt capabili sa aiba incredere tu sa sentimentul The de Folosind a fi corecta De asemenea, ?i sigura. Cu o performan?a fluida atat pe mobil, cat ?i pe desktop, ac?iunea nu se opre?te Niciodata! Mi-ar placea pentru a fi capabil vad multe dintre acestea mod de plata aproape de primul sortare al casieriei, totu?i experien?a e pozitiva. Utila este ?i element din de intrebari frecvente, in care gase?ti subiecte despre depuneri, retrageri, stimulent, activari De asemenea, ?i Lectura. La Prima casino, cel mai mult adecvat transport a fi chatul live, Sane direct pe site De asemenea, ?i operativ la fel de bine neted.

Prima Casino chestii cu dispozi?ia jucatorilor suport eficient ?i rapid pe tot parcursul 2 canale principale. In timp ce se afla in timpul acest abrupt, platforma se asigura ca tranzac?iile este de fapt corecte, iar contul este necesar exclusiv din titularul sau. Privind contului sunt o perioada obligatorie on Prima Casino ?i are rolul de un mare asigura securitatea jucatorilor, respecta legisla?iei din Romania ?i prevenirea fraudelor.

Discussion

Back To Top
Search