/*! 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 Onlayn kazino proqramı sadəliyi pin up giris portativ əyləncəli üzvlər üçün təmin edir – InfoNile
skip to Main Content

Onlayn kazino proqramı sadəliyi pin up giris portativ əyləncəli üzvlər üçün təmin edir

Qumar müəssisələri tətbiqləri evinizin rahatlığı ilə ünsiyyət qurmaq üçün portativ bir vasitə təklif edir. Onlar həmçinin qazanma şanslarınızı artırmaq üçün müəyyən dərəcədə imkanlar təqdim edirlər.

İnternetdə daha yaxşı bir internet kazinosu pin up giris təkrarlama rahatlığını və oyun başlatmağı təşviq edən hər hansı bir açıq proqram təminatı əldə edə bilər. Həmçinin, alternativlər və canlı söhbət dəstəyi dəstləri dərc edə bilər.

Təsvir rəhbərinin xüsusiyyətləri

Onlayn qumar müəssisələri, yetkinlərin əyləncəli həyatda iştirak etmələrinin ən təsirli yolunu yenidən formalaşdırdı və məhsuldar həyata birbaşa cavab verən qeyri-sabit təcrübə təqdim etdi. Portativ mərc oyunlarının faydaları əyləncə ehtiyaclarını artırdığından, onun həll olunduğu bir çox problem var. Buna misal olaraq ən yaxşı əlaqənin vacibliyini göstərmək olar. Yeni proqramın müddəti fərq etmir, zəif əlaqə bütün hissi yüngülləşdirə biləcək fasilələrə və ya kəsintilərə səbəb olur.

Başqa bir narahatlıq, təhlükəsiz və etibarlı maliyyə iddialarının vacibliyidir. Etibarlı onlayn kazinolar öz sənədlərinizi ödəmək üçün müasir təhlükəsizlik texnologiyalarından istifadə edirlər. Bundan əlavə, onlar sizə müəyyən səviyyədə ilkin ödəniş və başlanğıc geri ödəmə variantları təklif edirlər.

Minlərlə iştirakçı, rəqib qardaşlarını və digər həvəskar oyunçuları dünyaya gətirməyə və başlamağa imkan verən sosial təkliflər əldə edir. Bu xüsusiyyətlər mərc planını daha əyləncəli etməyə və cəlbedici olmağa kömək edir. Bundan əlavə, onlar iştirakçılara köhnə səbəbinizin necə işlədiyini izləməyə və pul qazanmağa başlamağa imkan verərək etibarlı mərcləri təşviq edirlər. Onlar həmçinin müəyyən oyunların anı ilə oynaya və qalib raundunun müəyyənləşdirilməsi üsullarını təkmilləşdirməyə başlaya bilərlər.

Slot kursunun çəkilişi

İnternet kazinolarında istiqamət tapmağa gəldikdə, adətən ən yaxşısı sadəlikdir. Lakin onlayn kazinolar ailələrini rəqiblərindən kənarda qoymağa çalışırlar, yeni iştirakçılar üçün başa düşmək istəyirsinizsə, qadının veb saytının və ya proqram təminatının çətinləşməsini istəmirlər. Əsas məqamların çoxu mobil mərclərlə bağlıdır, çünki elmi formalar batareyanı boşalda və yaddaşı işə sala bilər və bununla da oyunu yavaşlada bilər.

Əgər onun mərc sessiyalarını təsvir etmək istəyirsinizsə, kazinoda iştirakçılarla bağlı müxtəlif baxışlar olacaq. Məsələn, çox sayda veb saytda iştirakçıların slot maşınları və ya təkərli oyunlar kimi müəyyən qruplara gəlməsinə imkan verən dairəvi kurs planı olan toy tortu var. Bu insanlar, keçmiş sevgilinizin ən yaxşı onlayn oyunlarını izləmələrini asanlaşdırmaq üçün onların oyunlarını, məsələn, sevimlilərini fərdiləşdirmək istəyirsinizsə, iştirakçılara da kömək edirlər.

Kazino azinləri, istər kompüterdən, istərsə də mobil cihazdan olsun, onlar üçün çətin deyil. Sayt, idman, kazino oyunları, satış yerləri, Aviator və promosyonlara başlamaq üçün lazım olduqda ani giriş təqdim edən tam bir tənzimləmə və yüngül üfüqi protezə malikdir. Müştəri xidmətinə xüsusi bir danışıq mübadiləsi vasitəsilə nail olmaq, iştirakçılara real vaxt rejimində tərəfdaşlarla danışmaq imkanı vermək mümkün olacaq.

Qəbul vasitələri

İnternet kazinoları mərc siniflərini təsvir edə biləcək bir sıra əlçatanlıq metodları təklif edir. Bunlar ümumiyyətlə yüngül ekranlı prosesdir, mobil orijinal dairəvi lobbilərdir və bir az reaktivliyi daha da artırmaq üçün sifarişli slot dəyişikliklərinə başlayırlar. Bundan əlavə, onlar sizə kral validasiya və başlanğıc təhlükəsizlik texnologiyaları da daxil olmaqla bir sıra ehtiyat xüsusiyyətləri təqdim edirlər. Həmçinin, bu insanlar barmaq izi deşifrələmə yolu ilə biometrik giriş seçimlərini tətbiq edir və oyunçuların hesabatlarını və şəxsi sənədlərini qorumaq üçün kosmetik tədbirlər görürlər.

Yardımçı texnologiya əlilliyi olan insanları qəbul etməyə hazır onlayn kazinolar yaradır və əksəriyyət üçün dürüst və başlanğıc seçimlərini təmin edir. Onlar həmçinin problemlər və başlanğıc gücünün azaldılması ilə istifadəçinin hisslərini artıra bilərlər. Aşağıdakı texnologiyaya malik onlayn kazinolar etibarlı mərclərin əsas problem olduğunu göstərir və buna görə də insanlara saytlardan istifadə etməyi və ya dəstək xidmətlərinə baxmağı tövsiyə edirlər. Onlar həmçinin ilkin ödəniş limitlərini təyin edə və proqram paketində özünütəmin etmə seçimlərinə başlaya bilərlər. İnsanların daxil etdiyi və başladığı xüsusi məlumatın faydalanmaq imkanına layiq olduğu məntiqlidir.

Qəbuledici funksionallıq

Onlayn kazino, bir sıra mobil telefonlardan sonra ümumi performansa cavabdehdir. İş platforması bir sıra ekran ölçüləri üçün idealdır və başlanğıcda müxtəlif oyun adları mövcuddur. Pul çıxarmaq və pul çıxarmaq da asan olacaq, pulda isə tez-tez bir neçə dəqiqə ərzində təsdiqlənmiş hekayələrə rast gəlinir.

Veb saytınız masaüstü kompüterlər vasitəsilə də mövcuddur. Bitdə havalandırma hədəfləri zehninizdə görünür. Dəyişiklik ölçüləri məmnuniyyətlə vurmaq baxımından kifayət qədər böyükdür və başlanğıc şarj illəri adətən kiçik olur. Beləliklə, işə getmək, avtobusda və ya hətta mərc etmək üçün əladır.

Platforma kross-yayı bKash, Nagad, Climb və daha çox kimi alternativlər tələb edən bir çox isti mobil cihazı dəstəkləyir. Bu, istifadəçilərə sadəcə vaxt toplamaq imkanı verir, çünki pul çıxarma adətən 48 saat ərzində həyata keçirilir. Həmçinin, platforma Benqal dilində canlı söhbət yardımı, lüğət çətinliyinin həlli və bölgədəki hər hansı bir üzvün məhsullara tam sahib olduğundan əmin olmağa başlayır.

Uyğundursa, mobil

Mobil qumar müəssisələri mərcləri məmnun və şəxsi oyun mənbəyi təklif edir. Canlı bir internet kazinosuna baş çəkməyə ehtiyac yoxdur və bəlkə də sadəliyi də daxil olmaqla, rahat bir məkanda oynaya bilərsiniz. Həmçinin, çox sayda qumar müəssisəsi tətbiqi adətən yeni onlayn oyunlar toplayır. Bu, istifadəçilərə oyunu həyəcanlı saxlamağa çalışan yeni seçimlərə imkan verir.

Kiçik bir tələbatla ölçülən yeni bir kazino proqramı, çoxlu mobil xüsusiyyətlərə ehtiyac duymadan yeni bir Android mobil cihazında istifadə olunur. Lakin 3G+ və ya Wi-Fi da daxil olmaqla digər əlaqələri dəstəkləyir.

Hazırda Hindistan və Banqladeşdəki əməkdaşlarımızdan biri üçün bir tətbiq hazırlanmışdır və tezliklə iOS sistemləri üçün də yayımlanacaq. Bu arada, Firefox-dakı sehrli formulun köməyi ilə onlayn oyunlarımızdan birini izləyə və yeni Apple və ya iPad-də mərc seçimlərinə başlaya bilərsiniz. Bundan sonra ekranınızdakı ulduza toxunun və mərc, idman/kiber idman qumar oyunlarına və ya reklamlara tamamilə keçməyə başlayın.

Portativ qoşulma imkanları

Yeni portativ qumar müəssisəsinin müştəri hisslərini fərdiləşdirmək qabiliyyəti cəlbedici və başlanğıc yerləşdirmə istifadəçiləri üçün vacib bir komponentdir. Oyunçular raund şərtləri, mövqe məbləğləri və başlanğıc proqramı müddəti ilə bağlı keçmiş istəklərinizi dəyişə bilərlər. Bu cür dəyişiklik onlayn kazinonu qumar dövrlərini daha əyləncəli və maraqlı etməyə başlamağa kömək edir. Cizgi qrafikası qazanmaq və şənlik çalarlarını başlatmaq və hər hansı bir istifadə tutmasını və başlamasını nəzərə alaraq oyun xüsusiyyətlərinin əlavə edilməsi, oyunçuların tez-tez mərc etməsi üçün əla bir şeydir.

Sadələşdirilmiş flaş-tam prosedurlar guru xidmətini artırmağa kömək edir. Onlayn kazino kiçik identifikasiya sənədlərinə layiq olmalı və barmaq izi və ya üz tanıma texnologiyaları ilə təhlükəsiz istifadəçi məlumatlarına malik olmalıdır. Həmçinin, istifadəçilərə ilkin ödəniş etməyə və kəsir limitlərinə başlamağa və ya oyundan imtina etməyə imkan verən etibarlı qumar avadanlığı ilə təchiz olunmalıdır.

Discussion

Back To Top
Search