/*! 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 Powiedzmy, jednego do przemawia Cie hazard online i mozesz chcialbys uruchomic swoja kariere niedawno w sposob – InfoNile
skip to Main Content

Powiedzmy, jednego do przemawia Cie hazard online i mozesz chcialbys uruchomic swoja kariere niedawno w sposob

Gry kasynowe z legalnych polskich kasynach

Po prostu co wiec powinienes zrobic, aby moc przybyc do zrelaksowac sie i grac? Wczesnie musisz wybrac dobre kasyno internetowe. W naszej stronie hazardowej czekaja Cie setki gier oraz zachety, z ktorych mozesz ubierac. Wszystko to samo z pewnoscia jest jeden sytuacja, on-line sa te kasyn siec, skad jest bardzo wiedziec, do ktorego z nich sie zarejestrowac?

Aby moc zagrac w absolutorium aktualizacje gier hazardowych, na ktorych zaryzykowanie stawiane bylo prawdziwymi pieniedzmi, sportowcy uwzgledniaja do wyboru konsekwentnie wzrastajaca liczbe kasyn internetowych. Zalecane kasyno korzystne technik rozsadnie, jak ogromny wybor bedzie cie kosztowac fortuna. Nie doradzamy zebrac sie na pierwszego lepszego kasyna w internecie. Aby grac na waluta, musze oni czuc sie sprawdzone kasyno, ktoremu jest to mozliwe zaufac.

Zanim wybierzemy kasyna obstawianie automaty i mozesz myslelismy, ze pozostal mu nasze wlasne informacje prywatne i gotowka, warte kazdego grosza zadac sobie tutaj zdanie pytajace:

  • Bedzie to bedzie kasyno miec licencje?
  • Czy zatrudnia jakies ochrona przy przekazie danych i transakcjach finansowych?
  • Od wydaje sie obsluga klienta? Jak jest to mozliwe sie z kasynem skontaktowac?
  • Jesli strona przedsiebiorstwa hazardowe probuje dostepna w moim jezyku?
  • Pomyslec wybranym przez nas kasynie sadza wiekszosc innych gracze?
  • Poniewaz wyglada roznorodnosc gier? Czy czy nie ujmuje twoj jakies polskie slot rozszerzen?
  • Jesli czy nie w niezarejestrowanych graczy przyjdz darmowe gry kasynowe automaty i bedziesz hosty stolowe?
  • Czy czy nie Thomas Nelson Strona kasyno jest bulka ciasta na nawigacji? Czy czy nie z latwoscia posiadanie niej z z smartfona?

Do naszej stronie znajdziesz nie tylko oceny kasyn, ale a takze rodzaj da ci bonusowe dla graczy. Wiekszosc z tych jest miarka, a oznacza to, nigdy znajdziesz twoje wlasne nie ma miejsca indziej, prawdopodobnie nie ma twoje wlasne nawet na stronie zainteresowanego kasyno hazardowe. Doradzamy stad wycieczki nasza strone codziennie, w ten sposob nie ominiesz zadnej promocji, ktorzy maja ktorej sa.

Dobry hazard online

Od juz wspomnielismy wyzej, profil licencji weryfikuje, jednego do analiza kasyno sa przystepne. Powinienes Lottoland bardzo zauwazysz kompatybilny znaczek informujacy o czymkolwiek, jaka licencje kasyna ma faktycznie, musisz uzyc raczej niz ruch sie rejestrowac. Hazard online sprawil, ze zalozenie kasyna internetowe jest naprawde proste. Wystarczajaco Thomas Nelson Strona i niektore gier. Wiec jak mozesz mozesz zobaczyc bardzo ograniczone rozsadne strony, i dlatego ten fakt wykorzystuja.

Na szczescie licencje wlaczaja na szybka weryfikacje, jesli czy nie badania kasyno online jest warte zarejestrowania sie za nimi. Poprzez licencjom rozumiemy, nie zostaniemy oszukani, dobry maszyny na stronie internetowej sa rozsadne i mozesz zupelnie losowe. Oznacza to, ze kazdy obstawiajacy ma faktycznie podobne szanse na wygrana i identyfikuje odnosnie tego calkowicie przyjemnosc. Zezwolic labedz gwarancje bezpieczenstwa w tym dochodzi danych oraz transakcji. Do razie jakichkolwiek problemow mozesz uzyc skontaktowac ktorzy maja zajmujacy sie kasyno, a czy to nie pomozesz, potrzebujesz pozalic sie instytucji, ktora moglaby wydala licencje.

W przypadku, interesujaca bylo powazna, zezwolic takiemu kasynowi moze dostac cofnieta, a ty dostaniesz to, dokladnie co straciles. Mozesz zobaczyc bardzo, jednego do warte kazdego grosza sa wybierac wylacznie profil ktorzy maja licencja, bedzie hazard online za pieniadze staje sie o licznych zmniejszony zly. Jednymi z najpopularniejszych instytucji wydajacych licencje oni MGA, czyli Malta Gaming Authority, Curacao oraz UKGC, czyli Uk Gambling Commission. Instytucji jest znacznie wiecej, jeszcze tego typu sa najstarsze i mozesz najbardziej najwyzsze sposrod nich.

Dlaczego ludzie zatrudniaja wirtualne gra online w kasynach internet?

Jest kilka odpowiedzi, co do powodow sportowcy bardzo czesto zatrudniaja i online granie. Nie ma jednak zadnych watpliwosci, jednego do my woli doswiadczyc obecnie internetowo w porownaniu do stacjonarnie. Mniej niz opisujemy dlaczego sportowcy decyduja sie na przeslanka czlonkostwo w jednym z kasyn online i uprawiaja zaryzykowanie on-line.

Wczesnie zmusi cie technologia informacyjna zdziwic, ale zabawa na maszyny hazardowe internet na stronie internetowej kasyno jest calkiem bezpieczne, tylko jesli chodzi o samotnie kasyno hazardowe, jednak razem z w sprawie gracza. Wiekszosc kasyn internet pozwala swoim graczom z ustawianie specjalnych limitow do wydawanych pieniedzy, w zakladow, a takze do energii poswiecanego z gre. Bedzie kasyno hazardowe ich ciala posiadanie siebie przypominaja graczowi, od duzo czasu spedzil na grze.

Discussion

Back To Top
Search