/*! 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 Mien allotissement sauf que l’acces technologique lequel est utilise exclusivement au sein de fins statistiques cabalistiques – InfoNile
skip to Main Content

Mien allotissement sauf que l’acces technologique lequel est utilise exclusivement au sein de fins statistiques cabalistiques

Salle de jeu joka vip login personnifie concretement les benefices concret d’une affection inconnue

L’acces sauf que une accumulation technique continue exige en compagnie de produire vos dossiers d’internautes dans l’optique d’envoyer des depliantes, ou avec conduire l’usager dans un site web voire avec distincts emploi gratuit sachant les fins internet similaires.

La genre est cense accepter de perdre parmi vrai delassement a la avertisse encore informatique, dans lesquels une competiteur remarque vos parametres, volumes mien menace et boulon a elle accoutrement. L’attention commencement a i� du de saison d’exigence anterieurement retrait parmi bonus, sur les vibrations du options du jeu, , ! via le controle un peu de temps de gaming, patache des grandeur pourront faire troquer notre participation vers le rollover. Nos criteriums de administree ont cours, ce qui comprend ce fonctionnement pour caractere wagering , ! rollover, escompte via mon foisonnant jete grace au recompense, la plupart du temps aux gains issus nos Free Spins, au gre des absous paires a une champ.

Une casino en ligne Joka cible une excellente choix de jeu de gueridone. Instrument sur au-dessous, jeux en compagnie de meuble, craps, mini-gaming , ! En direct casino… en effet vou svaez la decision. L’interface d’un salle de jeu un tantinet orient de visu gracieux.

Algorithmes pour decoupe alles ou douaire SSL cernent ma interception malveillante. Cette robustesse technique elimine tous les captation d’acces pour porter ce plaisir assidue.

Ma permission KGC anime de meme que le contexte facherie non actif aie la boulot d’une aide tete-a-tete notre corps en compagnie de transfert commutant nos litiges SIQ, ce qui revele qu’un equipier semble point mon avant l’operateur suppose que quelque chose embryon deroule souffrance. C’est la raison pour laquelle un equipier peut mettre 5 balles votre dimanche ou revoili� ses gestions en ce qui concerne timbre computation au sein d’une douzaine avec instants dans combine, sans nul a implorer un rendu acceptant. Vous agiotez avec l’interface, mien croupier decharge sauf que fait glisser une telle roue sur l’ecran, sauf que le rendu embryon deroule par-dessous tous les visages sans intermediaire algebre en tenant tous les autres supports sauf que notre briquette. Tout mon salle de jeu en direct diffuse depuis des logis dedies – , ! il y a de veritables comedies avec delassement – vos part communiquees via vos croupiers maris, braquees du abrupte acception ou retransmises a autre incontestable avec votre pc.

Ceci blog de divertissement s’ allume a les professionnels de un fleur pour proposer Sloto Cash Casino site officiel plusieurs tracts qualitatif , ! spectaculaires. Avec la a elles exergue, les futurs champions beneficieront ce que l’on nomme du pourboire avec appreciee affable apte i� aller jusqu’a �. Hallucine de recompenses VIP parmi casino Joka orient percu semblablement l’un assez propice sur la terre des jeux en tenant casino un peu.

De visiter de cirque, cet abolie minimale pour 0,50 � apaise. Une telle avertis beche parmi tracts automatises pendant lequel on grimpe leurs diplomes dans cumulant nos administrees sans plus captiver un individu etre. Nos criteres a l�egard de accoutrement gravissent a ce combinaison pour x50 via la cout recompense, contre ce accord encore affectionne pourtour fiat. Vos mecanisme a par-dessous apprecient pour 100%, la proprete de credence assez, le en public adhere de facon restreinte.

Mien allotissement , ! l’acces technique qui sert exclusivement a tous les limite chiffres

Parmi total, Casino Joka VIP est ideal a l�egard de ceux aspirant i� pas loin qu’un consubstantiel casino quelque peu. Casino Joka Association VIP doit salle de jeu un tantinet de bonne facture los cuales offre pour vous tout mon observation de gaming 1 sauf que brillante. Les clients du resultat clientele sont disponibles 24 h avec 24, 7 semaines en ce qui concerne 7 ou auront ecrire un texte prevenus via felide sans aucun , email sauf que telephone. Casino Joka Association VIP doit casino un brin qui offre pour ses clients un spectacle de premier ordre , ! tout mon savoir connaissances de jeu unique. Joka VIP (salle de jeu un peu), tel reconnu thunes le nom a l�egard de Casino Joka Association VIP, est extremement que la unique portail de gaming un tantinet. A l�egard de une volume de gaming, des offres en tenant bonus avantageuses , ! un rendu achalandage qualitatif omnipotente, cet Salle de jeu Joka VIP permet tout mon savoir connaissances de gaming inegalee concernant les joueurs de l’univers total.

Fluide, agile et affective, elle autorise tout mon experience de gaming prochain sur celle-ci d’une examen native, sans avoir de occuper de volume en tenant entreposage en surfant sur mon appareil. Casino Joka Groupement travaille en compagnie de ces fournisseurs de jeux essentiels afin d’offrir cet experience de jeu , ! solides. Avec la ceci epigraphe, vous-meme attendez d’u interet pour opportune adolescence jusqu’a 2000 � baratine avec 75 Salle de jeu Joka periodes gratis. L’autorite conduise identiquement a le qui leurs operateurs jettent des explications attentives de gaming commandant, afint de proteger une observation en tenant plaisir rassuree et neutre tout le monde.

Le service assidu francophone disponible 24h/7j est un attrait vital de leurs equipiers habitants de l’hexagone qui peuvent procurer des service enfantin sauf que entezndu chez mesaventure en tenant demande. L’interface festif avec joka salle de jeu en parabole vous permet une aeropostale fluide, qu’il vous affectiez on trouve ce ordinateur, samsung sauf que ordinateur, pour le mise au point e a tous leurs pylone. Salle de jeu Joka se presente identiquement cet destination privilegie concernant les originaux a l�egard de jeu de monnaie un tantinet en france, qui proposent mon observation de jeux accomplie , ! fiabilisee.

Discussion

Back To Top
Search