1var basketTimeoutSlide; 2var resizeEventTimer; 3 4var clicked_tab = 0; 5 6if (typeof arAsproOptions === 'undefined') { 7 var arAsproOptions = { 8 SITE_DIR: '/', 9 }; 10 if ($('body').data('site') !== undefined) arAsproOptions['SITE_DIR'] = $('body').data('site'); 11} 12 13function readyDOM(callback) { 14 if (document.readyState !== 'loading') callback(); 15 else document.addEventListener('DOMContentLoaded', callback); 16} 17 18var typeofExt = function (item) { 19 const _toString = Object.prototype.toString; 20 return _toString.call(item).slice(8, -1).toLowerCase(); 21}; 22 23function loadScripts(scripts, cb) { 24 BX.loadScript(scripts, () => cb()); 25} 26 27function loadJQM(cb) { 28 if (typeof $.fn.jqm === 'function') { 29 cb(); 30 } else { 31 BX.loadScript(arAsproOptions['SITE_TEMPLATE_PATH'] + '/js/jqModal.js', () => cb()); 32 } 33} 34 35var InitLazyLoad = function () { 36}; 37 38$(document).on('change', '.uploader input[type=file]', function () { 39 if (!$(this).next().length || !$(this).next().hasClass('resetfile')) { 40 $( 41 '<span class="resetfile"><svg xmlns="http://www.w3.org/2000/svg" width="11" height="11" viewB
41ox="0 0 11 11"><path d="M1345.19,376.484l4.66,4.659a0.492,0.492,0,0,1,0,.707,0.5,0.5,0,0,1-.71,0l-4.66-4.659-4.65,4.659a0.5,0.5,0,0,1-.71,0,0.492,0.492,0,0,1,0-.707l4.66-4.659-4.66-4.659a0.492,0.492,0,0,1,0-.707,0.5,0.5,0,0,1,.71,0l4.65,4.659,4.66-4.659a0.5,0.5,0,0,1,.71,0,0.492,0.492,0,0,1,0,.707Z" transform="translate(-1339 -371)"/></svg></span>' 42 ).insertAfter($(this)); 43 } 44}); 45 46$(document).on('click', '.uploader.files_add input[type=file] + .resetfile', function () { 47 var $input = $(this).prev(); 48 $input.val(''); 49 $.uniform.update($input); 50 $(this).remove(); 51}); 52 53$(document).on('click', '.top_block h3', function () { 54 if (window.matchMedia('(max-width: 550px)').matches) { 55 var $this = $(this); 56 var a = $this.siblings('a'); 57 if (a.length) { 58 a[0].click(); 59 } 60 } 61}); 62 63$(document).on('click', '.bx-yandex-view-layout .yandex-map__mobile-opener', function () { 64 if ($(this).hasClass('closer')) { 65 closeYandexMap(); 66 } else { 67 openYandexMap(this); 68 } 69}); 70 71function openYandexMap(element) { 72 var $this = $(element); 73 if ($this.hasClass('closer')) return; 74 var currentMap = $this.parents('.bx-yandex-view-layout'); 75 var mapId = currentMap.find('.bx-yandex-map').attr('id'); 76 window.openedYandexMapFrame = mapId;
77 var mapContainer = $('<div data-mapId="' + mapId + '"></div>'); 78 if (!$('div[data-mapId=' + mapId + ']').length) { 79 currentMap.after(mapContainer); 80 } 81 var yandexMapFrame = $('<div class="yandex-map__frame"></div>'); 82 $('body .wrapper1').append(yandexMapFrame); 83 currentMap.appendTo(yandexMapFrame); 84 currentMap.find('.yandex-map__mobile-opener').addClass('closer'); 85 window.map.container.fitToViewport(); 86} 87 88function closeYandexMap() { 89 var yandexMapFrame = $('.yandex-map__frame'); 90 if (yandexMapFrame.length) { 91 var currentMap = yandexMapFrame.find('.bx-yandex-view-layout'); 92 var yandexMapContainer = $('div[data-mapId=' + window.openedYandexMapFrame + ']'); 93 94 currentMap.appendTo(yandexMapContainer); 95 yandexMapFrame.remove(); 96 currentMap.find('.yandex-map__mobile-opener').removeClass('closer'); 97 if (window.map) { 98 window.map.container.fitToViewport(); 99 } 100 } 101} 102 103function throttle(f, t) { 104 let throttled, saveThis, saveArgs; 105 const wrapper = function () { 106 if (throttled) { 107 saveThis = this; 108 saveArgs = arguments; 109 return; 110 } 111 throttled = true; 112 f.apply(this, arguments); 113 setTimeout(function () { 114 throttled = false; 115 if (saveArgs) { 116 wrapper.apply(saveThis, saveArgs); 117 saveThis = saveArgs = null; 118 } 119 }, t); 120 }; 121 return wrapper; 122} 123 124function debounce(f, t) { 125 return function (args) { 126 var previousCall = this.lastCall; 127 this.lastCall = Date.now(); 128 if (previousCall && this.lastCall - previousCall <= t) { 129 clearTimeout(this.lastCallTimer); 130 } 131 this.lastCallTimer = setTimeout(function () { 132 f(args); 133 }, t); 134 }; 135} 136 137$.fn.iAppear = function (callback, options) { 138 if (typeof $.fn.iAppear.useObserver === 'undefined') { 139 $.fn.iAppear.useObserver = typeof window['IntersectionObserver'] === 'function'; 140 141 if (!$.fn.iAppear.useObserver && typeof $.fn.appear !== 'function') { 142 $.fn.iAppear.queue = []; 143 BX.loadScript(arAsproOptions.SITE_TEMPLATE_PATH + '/vendor/js/jquery.appear.js', function () { 144 if (typeof $.fn.iAppear.queue === 'object') { 145 $.fn.iAppear.queue.forEach(function (queueItem) { 146 $(queueItem.items).iAppear(queueItem.callback, queueItem.options); 147 }); 148 } 149 }); 150 151 return; 152 } 153 } 154 155 if ($.fn.iAppear.useObserver) { 156 var options = $.extend( 157 { 158 root: null, 159 rootMargin: '150px 0px 150px 0px', 160 threshold: 0.0, 161 }, 162 options 163 ); 164 165 $(this).each(function (i, appearBlock) { 166 var observer = new IntersectionObserver(function (entries, observer) { 167 entries.forEach(function (element) { 168 if (element.intersectionRatio > 0 && !element.target.dataset.iAppeared) { 169 element.target.dataset.iAppeared = true; 170 171 if (typeof callback === 'function') { 172 callback.call(element.target); 173 } 174 } 175 }); 176 }, options); 177 178 observer.observe(appearBlock); 179 }); 180 } else { 181 if (typeof $.fn.appear !== 'function') { 182 if ($(this).length) { 183 $.fn.iAppear.queue.push({ 184 items: this, 185 callback: callback, 186 options: options, 187 }); 188 } 189 190 return; 191 } else { 192 if ($(this).length) { 193 $(this).each(function (i, appearBlock) { 194 $(appearBlock).appear(function () { 195 if (typeof callback === 'function') { 196 callback.call(appearBlock); 197 } 198 }, options); 199 }); 200 } 201 } 202 } 203}; 204 205$(document).on('click', '.flex-control-nav.flex-control-js-click li a:not(.flex-active)', function (e) { 206 var _this = $(this); 207 var itemIndex = _this.data('index') ? _this.data('index') : _this.closest('li').index(); 208 209 var block = ''; 210 var blocks = _this.closest('.items').find('> .item'); 211 var activeBlock = _this.closest('.items').find('.item.active'); 212 213 var activeLi = _this.closest('.flex-control-nav').find('.flex-active'); 214 215 activeBlock.fadeOut(function () { 216 activeBlock.removeClass('active'); 217 218 block = blocks.eq(itemIndex); 219 if (block.length) { 220 block.fadeIn(function () { 221 block.addClass('active'); 222 }); 223 } 224 225 _this.addClass('flex-active'); 226 activeLi.removeClass('flex-active'); 227 }); 228 229 e.preventDefault(); 230}); 231 232$(document).on('mouseenter', '#headerfixed .menu-item.wide_menu', function () { 233 var _this = $(this); 234 setTimeout(function () { 235 var dropdownMenu = _this.find('.wrap > .dropdown-menu'); 236 var menuOffset = dropdownMenu[0].getBoundingClientRect(); 237 var headerOffset = document.getElementById('headerfixed').getBoundingClientRect(); 238 var windowHeight = document.documentElement.clientHeight; 239 240 if (menuOffset.height + headerOffset.height > windowHeight) { 241 var maxHeight = windowHeight - headerOffset.height; 242 dropdownMenu.css({ 243 'max-height': maxHeight, 244 }); 245 dropdownMenu.find('.menu-navigation').css({ 'max-height': maxHeight }); 246 dropdownMenu.find('.customScrollbar').css({ 'max-height': maxHeight }); 247 dropdownMenu.find('.menu-wrapper.menu-type-4 > li').css({ 'min-height': 'auto' }); 248 } else { 249 dropdownMenu.css({ 250 'max-height': '', 251 }); 252 dropdownMenu.find('.menu-navigation').css({ 'max-height': '' }); 253 dropdownMenu.find('.customScrollbar').css({ 'max-height': '' }); 254 dropdownMenu.find('.menu-wrapper.menu-type-4 > li').css({ 'min-height': '' }); 255 } 256 }, 300); 257}); 258 259BX.addCustomEvent('onAjaxSuccess', function (data) { 260 if (typeof data === 'object' && data !== null) { 261 if ( 262 typeof data.BASKET_REFRESHED !== undefined && 263 data.BASKET_REFRESHED === true && 264 typeof data.BASKET_DATA === 'object' && 265 data.BASKET_DATA 266 ) { 267 var basketCounts = data.BASKET_DATA.BASKET_ITEMS_COUNT; 268 reloadBasketCounters(basketCounts); 269 } 270 } 271}); 272 273BX.addCustomEvent('onHeaderProgressBarChange', function (data) { 274 if (typeof updateProgressBar === 'function') { 275 updateProgressBar(); 276 } 277}); 278 279if (!funcDefined('parseUrlQuery')) { 280 parseUrlQuery = function () { 281 var data = {}; 282 if (location.search) { 283 var pair = location.search.substr(1).split('&'); 284 for (var i = 0; i < pair.length; i++) { 285 var param = pair[i].split('='); 286 data[param[0]] = param[1]; 287 } 288 } 289 return data; 290 }; 291} 292
293if (!funcDefined('setLocationSKU')) { 294 function setLocationSKU(ID, urlParam) { 295 if (urlParam === undefined) urlParam = 'oid'; 296 297 var objUrl = parseUrlQuery(), 298 j = 0, 299 prefix = '', 300 query_string = '', 301 url = ''; 302 303 objUrl[urlParam] = ID; 304 305 for (var i in objUrl) { 306 if (parseInt(j) > 0) prefix = '&'; 307 query_string = query_string + prefix + i + '=' + objUrl[i]; 308 j++; 309 } 310 if (query_string) { 311 url = location.pathname + '?' + query_string + location.hash; 312 } 313 try { 314 //history.pushState(null, null, url); 315 history.replaceState(null, null, url); 316 return; 317 } catch (e) { 318 } 319 location.hash = '#' + url.substr(1); 320 } 321} 322 323if (!funcDefined('ShowOverlay')) { 324 ShowOverlay = function () { 325 $('<div class="jqmOverlay waiting"></div>').appendTo('body'); 326 }; 327} 328 329if (!funcDefined('HideOverlay')) { 330 HideOverlay = function () { 331 $('.jqmOverlay').detach(); 332 }; 333} 334 335if (!funcDefined('trimPrice')) { 336 var trimPrice = function trimPrice(s) { 337 s = s.split(' ').join(''); 338 s = s.split(' ').join(''); 339 return s; 340 }; 341} 342 343if (!funcDefined('pauseYmObserver')) { 344 // pause ya metrika webvisor MutationObserver callback (DOM indexer) 345 // use before insert html with some animation 346 pauseYmObserver = function () { 347 if ( 348 typeof MutationObserver === 'function' && 349 typeof MutationObserver.observers === 'object' && 350 typeof MutationObserver.observers.ym === 'object' 351 ) { 352 if (typeof pauseYmObserver.cnt === 'undefined') { 353 pauseYmObserver.cnt = 0; 354 } 355 356 ++pauseYmObserver.cnt; 357 358 if (!MutationObserver.observers.ym.paused) { 359 MutationObserver.observers.ym.pause(); 360 } 361 } 362 }; 363} 364 365if (!funcDefined('resumeYmObserver')) { 366 // resume ya metrika webvisor MutationObserver callback 367 // use when animation finished 368 resumeYmObserver = function () { 369 if ( 370 typeof MutationObserver === 'function' && 371 typeof MutationObserver.observers === 'object' && 372 typeof MutationObserver.observers.ym === 'object' 373 ) { 374 if (typeof pauseYmObserver.cnt === 'undefined') { 375 pauseYmObserver.cnt = 1; 376 } 377 378 pauseYmObserver.cnt -= pauseYmObserver.cnt > 0 ? 1 : 0; 379 380 if (!pauseYmObserver.cnt && MutationObserver.observers.ym.paused) { 381 MutationObserver.observers.ym.resume(); 382 } 383 } 384 }; 385} 386 387if (!funcDefined('markProductRemoveBasket')) { 388 var markProductRemoveBasket = function markProductRemoveBasket(id) { 389 $('.in-cart[data-item=' + id + ']').hide(); 390 $('.to-cart[data-item=' + id + ']').show(); 391 if ( 392 $('.to-cart[data-item=' + id + ']') 393 .closest('.counter_wrapp') 394 .find('.counter_block').length 395 ) { 396 $('.to-cart[data-item=' + id + ']') 397 .closest('.button_block') 398 .removeClass('wide'); 399 } 400 $('.to-cart[data-item=' + id + ']') 401 .closest('.counter_wrapp') 402 .find('.counter_block') 403 .show(); 404 $('.counter_block[data-item=' + id + ']') 405 .closest('.counter_block_inner') 406 .show(); 407 $('.counter_block[data-item=' + id + ']').show(); 408 $('.in-subscribe[data-item=' + id + ']').hide(); 409 $('.to-subscribe[data-item=' + id + ']').show(); 410 //$('.wish_item[data-item='+id+']').removeClass("added"); 411 $('.wish_item[data-item=' + id + '] .value:not(.added)').show(); 412 $('.wish_item[data-item=' + id + '] .value.added').hide(); 413 $('.wish_item.to[data-item=' + id + ']').show(); 414 $('.wish_item.in[data-item=' + id + ']').hide(); 415 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + id + '] .basket_item_add').removeClass('added'); 416 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + id + '] .wish_item_add').removeClass('added'); 417 418 if ($('#headerfixed .but-cell .type_block').length) { 419 $('#headerfixed .but-cell .type_block span').text(BX.message('MORE_INFO_SKU')); 420 $('#headerfixed .but-cell .type_block .svg-inline-fw').remove(); 421 } 422 }; 423} 424 425if (!funcDefined('markProductAddBasket')) { 426 var markProductAddBasket = function markProductAddBasket(id) { 427 $('.to-cart[data-item=' + id + ']').hide(); 428 $('.to-cart[data-item=' + id + ']') 429 .closest('.counter_wrapp') 430 .find('.counter_block_inner') 431 .hide(); 432 $('.to-cart[data-item=' + id + ']') 433 .closest('.counter_wrapp') 434 .find('.counter_block') 435 .hide(); 436 $('.to-cart[data-item=' + id + ']') 437 .closest('.button_block') 438 .addClass('wide'); 439 $('.in-cart[data-item=' + id + ']').show(); 440 //$('.wish_item[data-item='+id+']').removeClass("added"); 441 $('.wish_item[data-item=' + id + '] .value:not(.added)').show(); 442 $('.wish_item[data-item=' + id + '] .value.added').hide(); 443 444 $('.wish_item.to[data-item=' + id + ']').show(); 445 $('.wish_item.in[data-item=' + id + ']').hide(); 446 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + id + '] .basket_item_add').addClass('added'); 447 448 if ($('#headerfixed .but-cell .type_block').length) { 449 $('#headerfixed .but-cell .type_block').html($('.in-cart[data-item=' + id + ']').html()); 450 } 451 }; 452} 453 454if (!funcDefined('markProductDelay')) {
455 var markProductDelay = function markProductDelay(id) { 456 $('.in-cart[data-item=' + id + ']').hide(); 457 $('.to-cart[data-item=' + id + ']').show(); 458 $('.to-cart[data-item=' + id + ']') 459 .closest('.counter_wrapp') 460 .find('.counter_block_inner') 461 .show(); 462 $('.to-cart[data-item=' + id + ']') 463 .closest('.counter_wrapp') 464 .find('.counter_block') 465 .show(); 466 if ( 467 $('.to-cart[data-item=' + id + ']') 468 .closest('.counter_wrapp') 469 .find('.counter_block').length 470 ) { 471 $('.to-cart[data-item=' + id + ']') 472 .closest('.button_block') 473 .removeClass('wide'); 474 } 475 //$('.wish_item[data-item='+id+']').addClass("added"); 476 $('.wish_item[data-item=' + id + '] .value:not(.added)').hide(); 477 $('.wish_item[data-item=' + id + '] .value.added').css('display', 'block'); 478 479 $('.wish_item.to[data-item=' + id + ']').hide(); 480 $('.wish_item.in[data-item=' + id + ']').show(); 481 482 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + id + '] .wish_item_add').addClass('added'); 483 484 if ($('#headerfixed .but-cell .type_block').length) { 485 $('#headerfixed .but-cell .type_block span').text(BX.message('MORE_INFO_SKU')); 486 $('#headerfixed .but-cell .type_block .svg-inline-fw').remove(); 487 } 488 }; 489} 490 491if (!funcDefined('markProductSubscribe')) { 492 var markProductSubscribe = function markProductSubscribe(id) { 493 $('.to-subscribe[data-item=' + id + ']').hide(); 494 $('.in-subscribe[data-item=' + id + ']').css('display', 'block'); 495 }; 496} 497 498if (!funcDefined('updateBottomIconsPanel')) { 499 var updateBottomIconsPanel = function updateBottomIconsPanel(options) { 500 if (options && $('.bottom-icons-panel').length) { 501 var bBasketUpdate = 'READY' in options || 'BASKET_COUNT' in options; 502 var basketCount = 'READY' in options ? options.READY.COUNT : 'BASKET_COUNT' in options ? options.BASKET_COUNT : 0; 503 var basketTitle = 504 'READY' in options ? options.READY.TITLE : 'BASKET_SUMM_TITLE' in options ? options.BASKET_SUMM_TITLE : ''; 505 var bDelayUpdate = 'DELAY' in options || 'DELAY_COUNT' in options; 506 var delayCount = 'DELAY' in options ? options.DELAY.COUNT : 'DELAY_COUNT' in options ? options.DELAY_COUNT : 0; 507 var delayTitle = 508 'DELAY' in options ? options.DELAY.TITLE : 'DELAY_SUMM_TITLE' in options ? options.DELAY_SUMM_TITLE : ''; 509 var bCompareUpdate = 'COMPARE' in options; 510 var compareCount = 511 'COMPARE' in options 512 ? typeof options.COMPARE === 'object' && 'COUNT' in options.COMPARE 513 ? options.COMPARE.COUNT 514 : Object.keys(options.COMPARE).length 515 : 0; 516 517 //basket 518 if (bBasketUpdate) { 519 if (+basketCount > 0) { 520 $('.bottom-icons-panel .basket.counter-state').removeClass('counter-state--empty'); 521 } else { 522 $('.bottom-icons-panel .basket.counter-state').addClass('counter-state--empty'); 523 } 524 $('.bottom-icons-panel .basket .counter-state__content-item-value').text(basketCount); 525 $('.bottom-icons-panel .basket') 526 .closest('.bottom-icons-panel__content-link') 527 .attr('title', $('<div/>').html(basketTitle).text()); 528 } 529 // 530 531 //delay 532 if (bDelayUpdate && bBasketUpdate) { 533 if (+delayCount > 0) { 534 $('.bottom-icons-panel .delay.counter-state').removeClass('counter-state--empty'); 535 $('.bottom-icons-panel-item_delay').attr('href', $('.bottom-icons-panel-item_delay').data('href')); 536 } else { 537 $('.bottom-icons-panel .delay.counter-state').addClass('counter-state--empty'); 538 $('.bottom-icons-panel-item_delay').attr('href', 'javascript:void(0)'); 539 } 540 $('.bottom-icons-panel .delay .counter-state__content-item-value').text(delayCount); 541 $('.bottom-icons-panel .delay') 542 .closest('.bottom-icons-panel__content-link') 543 .attr('title', $('<div/>').html(delayTitle).text()); 544 } 545 // 546 547 //compare 548 if (bCompareUpdate) { 549 if (compareCount > 0) { 550 $('.bottom-icons-panel .compare.counter-state').removeClass('counter-state--empty'); 551 } else { 552 $('.bottom-icons-panel .compare.counter-state').addClass('counter-state--empty'); 553 } 554 $('.bottom-icons-panel .compare .counter-state__content-item-value').text(compareCount); 555 } 556 } 557 }; 558} 559if (!funcDefined('basketFly')) { 560 window.basketFly = function basketFly(action, opener) { 561 if (typeof obMaxPredictions === 'object') { 562 obMaxPredictions.updateAll(); 563 } 564 565 /*if(arAsproOptions['PAGES']['BASKET_PAGE']) 566 return;*/ 567 $.post( 568 arAsproOptions['SITE_DIR'] + 'ajax/basket_fly.php', 569 'PARAMS=' + $('#basket_form').find('input#fly_basket_params').val(), 570 $.proxy(function (data) { 571 var small = $('.opener .basket_count').hasClass('small'), 572 basket_count = $(data).find('.basket_count').find('.items div').text(); 573 $('#basket_line .basket_fly').addClass('loaded').html(data); 574 575 if (action == 'refresh') $('li[data-type=AnDelCanBuy]').trigger('click'); 576 577 if (typeof opener == 'undefined' || $('#basket_line .basket_fly').hasClass('loading')) { 578 if (window.matchMedia('(min-width: 769px)').matches) { 579 if (action == 'open') { 580 if (small) { 581 if (arAsproOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N') { 582 $('.opener .basket_count').click(); 583 } 584 } else { 585 $('.opener .basket_count').removeClass('small'); 586 $('.tabs_content.basket li[item-section="AnDelCanBuy"]').addClass('cur'); 587 $('#basket_line ul.tabs li[item-section="AnDelCanBuy"]').addClass('cur'); 588 589 $('#basket_line .basket_fly .opener > div:eq(0)').addClass('cur'); 590 } 591 } else if (action == 'wish') { 592 if (small) { 593 if (arAsproOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N') $('.opener .wish_count').click(); 594 } else { 595 $('.opener .wish_count').removeClass('small'); 596 $('.tabs_content.basket li[item-section="DelDelCanBuy"]').addClass('cur'); 597 $('#basket_line ul.tabs li[item-section="DelDelCanBuy"]').addClass('cur'); 598 } 599 } else { 600 if (arAsproOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N') { 601 $('.opener .basket_count').click(); 602 } 603 } 604 } 605 } else if (opener === 'SHOW') { 606 if (window.matchMedia('(min-width: 769px)').matches) { 607 $('.opener .basket_count').removeClass('small'); 608 $('.tabs_content.basket li[item-section="AnDelCanBuy"]').addClass('cur'); 609 $('#basket_line ul.tabs li[item-section="AnDelCanBuy"]').addClass('cur'); 610 $('#basket_line .basket_fly .opener > div:eq(0)').addClass('cur'); 611 } 612 } 613 }) 614 ); 615 }; 616} 617 618if (!funcDefined('basketTop')) { 619 var basketTop = function basketTop(action, hoverBlock) { 620 if (action == 'reload') { 621 if ($('.basket_hover_block:hover').length) { 622 hoverBlock = $('.basket_hover_block:hover'); 623 } 624 } 625 626 if (action == 'open') { 627 if (arAsproOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N') { 628 if ($('#headerfixed').hasClass('fixed')) { 629 hoverBlock = $('#headerfixed .basket_hover_block'); 630 } else { 631 hoverBlock = $('.top_basket .basket_hover_block'); 632 } 633 } 634 } 635 636 if (hoverBlock === undefined) { 637 console.log('Undefined hoverBlock'); 638 console.trace(); 639 return false;
640 } 641 642 if (action == 'close') { 643 if (hoverBlock.length) { 644 hoverBlock.css({ 645 opacity: '', 646 visibility: '', 647 }); 648 return true; 649 } 650 } 651 652 hoverBlock.removeClass('loaded'); 653 var firstTime = hoverBlock.find('div').length ? 'false' : 'true'; 654 var params = $('#basket_form').find('input#fly_basket_params').val(); 655 var postData = { 656 firstTime: firstTime, 657 }; 658 if (params !== undefined) { 659 postData.PARAMS = params; 660 } 661 662 $.post( 663 arAsproOptions['SITE_DIR'] + 'ajax/showBasketHover.php', 664 postData, 665 $.proxy(function (data) { 666 var ob = BX.processHTML(data); 667 // inject 668 $('#headerfixed .basket_hover_block, .top_basket .basket_hover_block').html(ob.HTML); 669 BX.ajax.processScripts(ob.SCRIPT); 670 671 if (window.matchMedia('(min-width: 992px)').matches) { 672 hoverBlock.addClass('loaded'); 673 674 if (action == 'open') { 675 if (arAsproOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N') { 676 if ($('#headerfixed').hasClass('fixed')) { 677 hoverBlock = $('#headerfixed .basket_hover_block'); 678 } else { 679 hoverBlock = $('.top_basket .basket_hover_block'); 680 } 681 682 hoverBlock.css({ 683 opacity: '1', 684 visibility: 'visible', 685 }); 686 687 setTimeout(function () { 688 hoverBlock.css({ 689 opacity: '', 690 visibility: '', 691 }); 692 }, 2000); 693 } 694 } 695 } 696 }) 697 ); 698 }; 699} 700 701$(document).on('click', '#basket_toolbar_button', function () { 702 if (lastHash) location.hash = 'cart'; 703}); 704$(document).on('click', '#basket_toolbar_button_delayed', function () { 705 if (lastHash) location.hash = 'delayed'; 706}); 707if (location.hash) { 708 var hash = location.hash; 709} 710//work with hash end 711 712$(document).on('click', '#basket_line .basket_fly .opener > div.clicked', function () { 713 if (arAsproOptions['PAGES']['BASKET_PAGE']) return; 714 715 function onOpenFlyBasket(_this) { 716 $('#basket_line .basket_fly .tabs li').removeClass('cur'); 717 $('#basket_line .basket_fly .tabs_content li').removeClass('cur'); 718 // $("#basket_line .basket_fly .remove_all_basket").removeClass("cur"); 719 if (!$(_this).is('.wish_count.empty')) { 720 $('#basket_line .basket_fly .tabs_content li[item-section=' + $(_this).data('type') + ']').addClass('cur'); 721 $('#basket_line .basket_fly .tabs li:eq(' + $(_this).index() + ')').addClass('cur'); 722 // $("#basket_line .basket_fly .remove_all_basket."+$(_this).data("type")).addClass("cur"); 723 } else { 724 $('#basket_line .basket_fly .tabs li').first().addClass('cur').siblings().removeClass('cur'); 725 $('#basket_line .basket_fly .tabs_content li').first().addClass('cur').siblings().removeClass('cur'); 726 // $("#basket_line .basket_fly .remove_all_basket").first().addClass("cur"); 727 } 728 $('#basket_line .basket_fly .opener > div.clicked').removeClass('small'); 729 730 $('#basket_line .basket_fly .opener > div').siblings().removeClass('cur'); 731 $('#basket_line .basket_fly .opener > div:eq(' + $(_this).index() + ')').addClass('cur'); 732 } 733 734 if (window.matchMedia('(min-width: 769px)').matches) { 735 var _this = this; 736 737 $(_this).siblings().removeClass('cur'); 738 $(_this).addClass('cur'); 739 740 if (parseInt($('#basket_line .basket_fly').css('right')) < 0) { 741 $('#basket_line .basket_fly') 742 .stop() 743 .addClass('loading') 744 .animate({ right: '0' }, 333, function () { 745 if ($(_this).closest('.basket_fly.loaded').length && false) { 746 onOpenFlyBasket(_this); 747 } else { 748 $.ajax({ 749 url: arAsproOptions['SITE_DIR'] + 'ajax/basket_fly.php', 750 type: 'post', 751 success: function (html) { 752 $('#basket_line .basket_fly').removeClass('loading').addClass('loaded').html(html); 753 onOpenFlyBasket(_this); 754 }, 755 }); 756 } 757 }); 758 $('#basket_line .basket_fly').addClass('swiped'); 759 } else if ( 760 $(this).is('.wish_count:not(.empty)') && 761 !$('#basket_line .basket_fly .basket_sort ul.tabs li.cur').is('[item-section=DelDelCanBuy]') 762 ) { 763 $('#basket_line .basket_fly .tabs li').removeClass('cur'); 764 $('#basket_line .basket_fly .tabs_content li').removeClass('cur'); 765 // $("#basket_line .basket_fly .remove_all_basket").removeClass("cur"); 766 $('#basket_line .basket_fly .tabs_content li[item-section=' + $(this).data('type') + ']').addClass('cur'); 767 $('#basket_line .basket_fly .tabs li:eq(' + $(this).index() + ')') 768 .first() 769 .addClass('cur'); 770 // $("#basket_line .basket_fly .remove_all_basket."+$(this).data("type")).first().addClass("cur"); 771 } else if ( 772 $(this).is('.basket_count') && 773 $('#basket_line .basket_fly .basket_sort ul.tabs li.cur').length && 774 !$('#basket_line .basket_fly .basket_sort ul.tabs li.cur').is('[item-section=AnDelCanBuy]') 775 ) { 776 $('#basket_line .basket_fly .tabs li').removeClass('cur'); 777 $('#basket_line .basket_fly .tabs_content li').removeClass('cur'); 778 // $("#basket_line .basket_fly .remove_all_basket").removeClass("cur"); 779 $('#basket_line .basket_fly .tabs_content li:eq(' + $(this).index() + ')').addClass('cur'); 780 $('#basket_line .basket_fly .tabs li:eq(' + $(this).index() + ')') 781 .first() 782 .addClass('cur'); 783 // $("#basket_line .basket_fly .remove_all_basket."+$(this).data("type")).first().addClass("cur"); 784 } else { 785 $('#basket_line .basket_fly') 786 .stop() 787 .animate({ right: -$('#basket_line .basket_fly').outerWidth() }, 150); 788 $('#basket_line .basket_fly .opener > div.clicked').addClass('small'); 789 $('#basket_line .basket_fly').removeClass('swiped'); 790 $('#basket_line .basket_fly .opener > div').removeClass('cur'); 791 } 792 } 793}); 794 795if (!funcDefined('clearViewedProduct')) { 796 function clearViewedProduct() { 797 try { 798 var siteID = arAsproOptions.SITE_ID; 799 var localKey = 'MAX_VIEWED_ITEMS_' + siteID; 800 var cookieParams = { path: '/', expires: 30 }; 801 if (typeof BX.localStorage !== 'undefined') { 802 // remove local storage 803 BX.localStorage.set(localKey, {}, 0); 804 } 805 // remove cookie 806 $.removeCookie(localKey, cookieParams); 807 } catch (e) { 808 console.error(e); 809 } 810 } 811} 812
813if (!funcDefined('setViewedProduct')) { 814 function setViewedProduct(id, arData) { 815 try { 816 // save $.cookie option 817 var bCookieJson = $.cookie.json; 818 $.cookie.json = true; 819 820 var siteID = arAsproOptions.SITE_ID; 821 var localKey = 'MAX_VIEWED_ITEMS_' + siteID; 822 var cookieParams = { path: '/', expires: 30 }; 823 824 if (typeof BX.localStorage !== 'undefined' && typeof id !== 'undefined' && typeof arData !== 'undefined') { 825 var PRODUCT_ID = typeof arData.PRODUCT_ID !== 'undefined' ? arData.PRODUCT_ID : id; 826 var arViewedLocal = BX.localStorage.get(localKey) ? BX.localStorage.get(localKey) : {}; 827 var arViewedCookie = $.cookie(localKey) ? $.cookie(localKey) : {}; 828 var count = 0; 829 830 // delete some items (sync cookie & local storage) 831 for (var _id in arViewedLocal) { 832 arViewedLocal[_id].IS_LAST = false; 833 if (typeof arViewedCookie[_id] === 'undefined') { 834 delete arViewedLocal[_id]; 835 } 836 } 837 for (var _id in arViewedCookie) { 838 if (typeof arViewedLocal[_id] === 'undefined') { 839 delete arViewedCookie[_id]; 840 } 841 } 842 843 for (var _id in arViewedCookie) { 844 count++; 845 } 846 847 // delete item if other item (offer) of that PRODUCT_ID is exists 848 if (typeof arViewedLocal[PRODUCT_ID] !== 'undefined') { 849 if (arViewedLocal[PRODUCT_ID].ID != id) { 850 delete arViewedLocal[PRODUCT_ID]; 851 delete arViewedCookie[PRODUCT_ID]; 852 } 853 } 854 855 var time = new Date().getTime(); 856 arData.ID = id; 857 arData.ACTIVE_FROM = time; 858 arData.IS_LAST = true; 859 arViewedLocal[PRODUCT_ID] = arData; 860 arViewedCookie[PRODUCT_ID] = [time.toString(), arData.PICTURE_ID]; 861 862 $.cookie(localKey, arViewedCookie, cookieParams); 863 BX.localStorage.set(localKey, arViewedLocal, 2592000); // 30 days 864 } 865 } catch (e) { 866 console.error(e); 867 } finally { 868 // restore $.cookie option 869 $.cookie.json = bCookieJson; 870 } 871 } 872} 873 874if (!funcDefined('initSelects')) { 875 function initSelects(target) { 876 if (!$.fn.ikSelect) return; 877 var iOS = navigator.userAgent.match(/(iPad|iPhone|iPod)/g) ? true : false; 878 if (iOS && !$('.wrapper1.iks-on-ios').length) return; 879 if ($('#bx-soa-order').length || $('#bx-soa-order-main').length) return; 880 881 if (!$('.wrapper1.iks-ignore').length) { 882 const $target = $(target).find( 883 '.wrapper1 select:visible:not(.iks-ignore), .jqmWindow select:visible:not(.iks-ignore)' 884 ); 885 886 if ($target.length) { 887 // SELECT STYLING 888 $target.ikSelect({ 889 syntax: 890 '<div class="ik_select_link"> \ 891 <span class="ik_select_link_text"></span> \ 892 <div class="trigger"></div> \ 893 </div> \ 894 <div class="ik_select_dropdown"> \ 895 <div class="ik_select_list"> \ 896 </div> \ 897 </div>', 898 dynamicWidth: true, 899 ddMaxHeight: 112, 900 customClass: 'common_select', 901 //equalWidths: true, 902 onShow: function (inst) { 903 inst.$dropdown.css('top', parseFloat(inst.$dropdown.css('top')) - 5 + 'px'); 904 if (inst.$dropdown.outerWidth() < inst.$link.outerWidth()) { 905 inst.$dropdown.css('width', inst.$link.outerWidth()); 906 } 907 if (inst.$dropdown.outerWidth() > inst.$link.outerWidth()) { 908 inst.$dropdown.css('width', inst.$link.outerWidth()); 909 } 910 var count = 0, 911 client_height = 0; 912 inst.$dropdown.css('left', inst.$link.offset().left); 913 $(inst.$listInnerUl) 914 .find('li') 915 .each(function () { 916 if (!$(this).hasClass('ik_select_option_disabled')) { 917 ++count; 918 client_height += $(this).outerHeight(); 919 } 920 }); 921 if (client_height < 112) { 922 inst.$listInner.css('height', 'auto'); 923 } else { 924 inst.$listInner.css('height', '112px'); 925 } 926 inst.$link.addClass('opened'); 927 inst.$listInner.addClass('scroller scrollblock'); 928 if ($('.confirm_region').length) $('.confirm_region').remove(); 929 }, 930 onHide: function (inst) { 931 inst.$link.removeClass('opened'); 932 }, 933 }); 934 // END OF SELECT STYLING 935 936 var timeout; 937 $(window).on('resize', function () { 938 ignoreResize.push(true); 939 clearTimeout(timeout); 940 timeout = setTimeout(function () { 941 //$('select:visible').ikSelect('redraw'); 942 var inst = ''; 943 if ((inst = $('.common_select-link.opened + select').ikSelect().data('plugin_ikSelect'))) { 944 inst.$dropdown.css('left', inst.$link.offset().left + 'px'); 945 } 946 }, 20); 947 ignoreResize.pop(); 948 }); 949 } 950 } 951 } 952} 953 954if (!funcDefined('CheckTopMenuFullCatalogSubmenu')) { 955 CheckTopMenuFullCatalogSubmenu = function () { 956 if (arAsproOptions['THEME'] && arAsproOptions['THEME']['MENU_TYPE_VIEW'] != 'HOVER') return; 957 958 var $menu = $('.left_block .menu_top_block'); 959 if ($menu.length) { 960 var $wrapmenu = $menu.parents('.wrap_menu'); 961 962 var wrapMenuWidth = $menu.closest('.wrapper_inner').actual('width'); 963 if (!wrapMenuWidth) wrapMenuWidth = $menu.closest('.wraps').actual('width'); 964 965 var bCatalogFirst = $menu.hasClass('catalogfirst'); 966 var findMenuLi = $('.left_block .menu_top_block:visible li.full'); 967 var parentSubmenuWidth = $menu.actual('outerWidth'); 968 var wrapMenuLeft = 0; 969 var wrapMenuRight = 0; 970 971 if ($wrapmenu.length) { 972 wrapMenuWidth = $wrapmenu.actual('outerWidth'); 973 wrapMenuLeft = $wrapmenu.offset().left; 974 wrapMenuRight = wrapMenuLeft + wrapMenuWidth; 975 } 976 977 if ($('.left_block .catalog_block.menu_top_block').length) { 978 if ($('.left_block .catalog_block.menu_top_block').is(':visible')) 979 findMenuLi = $('.left_block .menu_top_block.catalog_block li.full'); 980 } 981 findMenuLi.each(function () { 982 var $this = $(this); 983 var $submenu = $this.find('>.dropdown'); 984 985 if ($submenu.length) { 986 // $submenu.css({left: parentSubmenuWidth + 'px', width: (wrapMenuWidth - parentSubmenuWidth) + 'px', 'padding-left': '0px', 'padding-right': '0px', 'opacity': 1}); 987 $submenu.css({ width: wrapMenuWidth - parentSubmenuWidth + 'px' }); 988 989 if (!isOnceInited && arAsproOptions['THEME']['MENU_POSITION'] == 'TOP') { 990 $this.on('mouseenter', function () { 991 $submenu.css('min-height', $this.closest('.dropdown').actual('outerHeight') + 'px'); 992 }); 993 } 994 } 995 }); 996 } 997 }; 998} 999 1000$.fn.getMaxHeights = function (outer, classNull, minHeight) { 1001 var maxHeight = this.map(function (i, e) { 1002 var calc_height = 0;
1003 $(e).css('height', ''); 1004 1005 if (outer == true) calc_height = $(e).actual('outerHeight'); 1006 else calc_height = $(e).actual('height'); 1007 1008 return calc_height; 1009 }).get(); 1010 for (var i = 0, c = maxHeight.length; i < c; ++i) { 1011 if (maxHeight[i] % 2) --maxHeight[i]; 1012 } 1013 return Math.max.apply(this, maxHeight); 1014}; 1015 1016$.fn.equalizeHeights = function (outer, classNull, options) { 1017 var maxHeight = []; 1018 var items = []; 1019 1020 for (var i = 0, itemKey = 0; i < this.length; itemKey++) { 1021 var item = this[itemKey], 1022 _item = $(item), 1023 minus_height = 0, 1024 calc_height = 0; 1025 1026 i++; 1027 1028 if (options.blockNull !== undefined) { 1029 if (options.blockNull.class !== undefined) { 1030 if (_item.hasClass(options.blockNull.class) || _item.closest('.' + options.blockNull.class).length) { 1031 continue; 1032 } 1033 } 1034 } 1035 1036 items.push(this[itemKey]); 1037 1038 if (classNull !== false) { 1039 if (!isMobile) { 1040 var nulled = _item.find(classNull); 1041 if (nulled.length) { 1042 minus_height = parseInt(nulled[0].offsetHeight); 1043 //minus_height=parseInt(_item.find(classNull).outerHeight(false)); 1044 //minus_height=parseInt(_item.find(classNull).actual('outerHeight')); 1045 } 1046 } 1047 } 1048 1049 if (minus_height) minus_height += 12; 1050 1051 _item.css('height', ''); 1052 1053 calc_height = item.offsetHeight - minus_height; 1054 1055 if (options.minHeight !== false) { 1056 if (calc_height < options.minHeight) calc_height += options.minHeight - calc_height; 1057 1058 if (window.matchMedia('(max-width: 520px)').matches) calc_height = 300; 1059 1060 if (window.matchMedia('(max-width: 400px)').matches) calc_height = 200; 1061 } 1062 1063 if (!calc_height) calc_height = 0; 1064 1065 maxHeight.push(calc_height); 1066 } 1067 1068 for (var i = 0, c = maxHeight.length; i < c; ++i) { 1069 if (maxHeight[i] % 2) { 1070 --maxHeight[i]; 1071 } 1072 } 1073 1074 var result = $(items).height(Math.max.apply(this, maxHeight)); 1075 1076 return result; 1077}; 1078 1079$.fn.getFloatWidth = function () { 1080 var width = 0; 1081 if ($(this).length) { 1082 var rect = $(this)[0].getBoundingClientRect(); 1083 if (!(width = rect.width)) width = rect.right - rect.left; 1084 } 1085 1086 $(this).data('floatWidth', width); 1087 1088 return width; 1089}; 1090 1091function extendDepthObject(target, FromObj) { 1092 var to = Object.assign({}, target); 1093 for (var key in FromObj) { 1094 if (typeof FromObj[key] == 'object') { 1095 to[key] = extendDepthObject(to[key], FromObj[key]); 1096 } else { 1097 to[key] = FromObj[key]; 1098 } 1099 } 1100 1101 return to; 1102} 1103 1104$.fn.sliceHeight = function (options) { 1105 function _slice(el) { 1106 var arBreakpoints = Object.keys(options.breakpoint); 1107 var resizeOptionsTmp = {}; 1108 if (arBreakpoints.length) { 1109 for (var key in arBreakpoints) { 1110 if (window.matchMedia(arBreakpoints[key].toString()).matches) { 1111 resizeOptionsTmp = options.breakpoint[arBreakpoints[key]]; 1112 } 1113 } 1114 } 1115 1116 var resizeOptions = extendDepthObject(options, resizeOptionsTmp); 1117 1118 var blockNullClass = 1119 resizeOptions.blockNull !== undefined && resizeOptions.blockNull.class !== undefined 1120 ? resizeOptions.blockNull.class 1121 : false; 1122 var parent = 1123 typeof resizeOptions.row !== 'undefined' && resizeOptions.row.length 1124 ? el.first().parents(resizeOptions.row) 1125 : el.first().parents('.items'); 1126 var item = ''; 1127 1128 if (typeof resizeOptions.item !== 'undefined' && resizeOptions.item.length) { 1129 if (blockNullClass) { 1130 $(resizeOptions.item).each(function (i, element) { 1131 _element = $(element); 1132 if (!_element.hasClass(blockNullClass)) { 1133 item = _element; 1134 } 1135 }); 1136 if (!item) 1137 // if only ignored blocks 1138 return false; 1139 } else { 1140 item = $(resizeOptions.item).first(); 1141 } 1142 } else { 1143 if (el.first().hasClass('item')) { 1144 item = el.first(); 1145 } else { 1146 item = el.first().parents('.item'); 1147 } 1148 } 1149 1150 if (typeof resizeOptions.autoslicecount == 'undefined' || resizeOptions.autoslicecount !== false) { 1151 var elsw = parent.getFloatWidth(), 1152 elw = item.getFloatWidth(); 1153 if (!elsw) { 1154 elsw = el.first().parents('.row').getFloatWidth(); 1155 } 1156 if (!elw) { 1157 if (typeof resizeOptions.item !== 'undefined' && resizeOptions.item.length) 1158 elw = $(resizeOptions.item + ':eq(1)').getFloatWidth() 1159 ? $(resizeOptions.item + ':eq(1)').getFloatWidth() 1160 : $(resizeOptions.item + ':eq(2)').getFloatWidth(); 1161 else elw = $(el[1]).getFloatWidth() ? $(el[1]).getFloatWidth() : $(el[2]).getFloatWidth(); 1162 } 1163 if (elw && resizeOptions.fixWidth) elw -= resizeOptions.fixWidth; 1164 1165 elw = parseInt(elw * 100) / 100; 1166 1167 if (elsw && elw) { 1168 resizeOptions.slice = Math.floor(elsw / elw); 1169 } 1170 } 1171 1172 if (resizeOptions.customSlice) { 1173 //manual slice count 1174 var bSliceNext = false;
1175 if (resizeOptions.length) { 1176 elw = 1177 typeof resizeOptions.item !== 'undefined' && resizeOptions.item.length 1178 ? $(resizeOptions.item).last().getFloatWidth() 1179 : el.last().hasClass('item') 1180 ? el.last().getFloatWidth() 1181 : el.last().parents('.item').getFloatWidth(); 1182 if (elw) resizeOptions.sliceNext = Math.floor(elsw / elw); 1183 1184 bSliceNext = true; 1185 } 1186 } 1187 1188 elements = []; 1189 if (resizeOptions.classes !== undefined && resizeOptions.classes.length) { 1190 for (var i = 0; i < resizeOptions.classes.length; i++) { 1191 var items = $(resizeOptions.item).find(resizeOptions.classes[i]); 1192 elements.push(items); 1193 } 1194 } 1195 var elIndex = elements.push(el) - 1; 1196 1197 if (resizeOptions.mobile == true) { 1198 if (window.matchMedia('(max-width: 500px)').matches) { 1199 for (var block = 0; block < elements.length; block++) { 1200 var items = $(elements[block]); 1201 items.css({ 1202 'line-height': '', 1203 height: '', 1204 }); 1205 } 1206 return; 1207 } 1208 } 1209 1210 if (typeof resizeOptions.typeResize == 'undefined' || resizeOptions.typeResize == false) { 1211 if (resizeOptions.slice) { 1212 for (var block = 0; block < elements.length; block++) { 1213 if (resizeOptions.currentRow) { 1214 var itemNumber = el.index(resizeOptions.currentItem); 1215 var rowCount = resizeOptions.slice; 1216 var rowNumber = Math.floor(itemNumber / rowCount); 1217 1218 var items = $(elements[block].slice(rowNumber * rowCount, rowNumber * rowCount + rowCount)); 1219 var classNull = block == elIndex ? resizeOptions.classNull : false; 1220 items.css({ 1221 'line-height': '', 1222 height: '', 1223 }); 1224 items.equalizeHeights(resizeOptions.outer, classNull, resizeOptions); 1225 } else { 1226 for (var i = 0; i < elements[block].length;) { 1227 if (resizeOptions.customSlice && resizeOptions.sliceNext && bSliceNext && i) 1228 //manual slice count 1229 resizeOptions.slice = resizeOptions.sliceNext; 1230 1231 var slice = resizeOptions.slice; 1232 var items = $(elements[block].slice(i, i + slice)); 1233 if (resizeOptions.blockNull !== undefined) { 1234 if (resizeOptions.blockNull.class !== undefined) { 1235 var counts = 0; 1236 items.each(function (i, item) { 1237 var _item = $(item); 1238 if ( 1239 _item.hasClass(resizeOptions.blockNull.class) || 1240 _item.closest('.' + resizeOptions.blockNull.class).length 1241 ) { 1242 counts++; 1243 } 1244 }); 1245 } 1246 } 1247 if (counts) { 1248 slice -= (resizeOptions.blockNull.width - 1) * counts; 1249 } 1250 1251 items = $(elements[block].slice(i, i + slice)); 1252 if (items) { 1253 var classNull = block == elIndex ? resizeOptions.classNull : false; 1254 1255 items.css({ 1256 'line-height': '', 1257 height: '', 1258 }); 1259 items.equalizeHeights(resizeOptions.outer, classNull, resizeOptions); 1260 } 1261 i += slice || 1; 1262 } 1263 } 1264 } 1265 } 1266 if (resizeOptions.lineheight) { 1267 var lineheightAdd = parseInt(resizeOptions.lineheight); 1268 if (isNaN(lineheightAdd)) { 1269 lineheightAdd = 0; 1270 } 1271 el.each(function () { 1272 $(this).css('line-height', $(this).actual('height') + lineheightAdd + 'px'); 1273 }); 1274 } 1275 } 1276 } 1277 1278 var options = $.extend( 1279 { 1280 slice: null, 1281 sliceNext: null, 1282 outer: false, 1283 lineheight: false, 1284 autoslicecount: true, 1285 classNull: false, 1286 minHeight: false, 1287 row: false, 1288 item: false, 1289 typeResize: false, 1290 typeValue: false, 1291 fixWidth: 0, 1292 resize: true, 1293 mobile: false, 1294 customSlice: false, 1295 breakpoint: {}, 1296 classes: [], 1297 }, 1298 options 1299 ); 1300 1301 var el = $(this); 1302 1303 ignoreResize.push(true); 1304 _slice(el); 1305 ignoreResize.pop(); 1306 1307 if (options.resize) { 1308 BX.addCustomEvent('onWindowResize', function (eventdata) { 1309 try { 1310 ignoreResize.push(true); 1311 _slice(el); 1312 } catch (e) { 1313 } finally { 1314 ignoreResize.pop(); 1315 } 1316 }); 1317 } else { 1318 if (!ignoreResize.length) { 1319 // ignoreResize.push(true); 1320 _slice(el); 1321 // ignoreResize.pop(); 1322 } 1323 } 1324}; 1325 1326$.fn.sliceHeightNoResize = function (options) { 1327 function _slice(el) { 1328 el.each(function () { 1329 $(this).css('line-height', ''); 1330 $(this).css('height', ''); 1331 }); 1332 if (options.mobile == true) { 1333 if (window.matchMedia('(max-width: 550px)').matches) return; 1334 } 1335 if (typeof options.autoslicecount == 'undefined' || options.autoslicecount !== false) { 1336 var elsw = 1337 typeof options.row !== 'undefined' && options.row.length 1338 ? el.first().parents(options.row).getFloatWidth() 1339 : el.first().parents('.items').getFloatWidth(), 1340 elw = 1341 typeof options.item !== 'undefined' && options.item.length 1342 ? $(options.item).first().getFloatWidth() 1343 : el.first().hasClass('item') 1344 ? el.first().getFloatWidth() 1345 : el.first().parents('.item').getFloatWidth(); 1346 1347 if (!elsw) { 1348 elsw = el.first().parents('.row').getFloatWidth(); 1349 } 1350 if (elw && options.fixWidth) elw -= options.fixWidth; 1351 1352 if (elsw && elw) { 1353 options.slice = Math.floor(elsw / elw); 1354 } 1355 } 1356 if (options.customSlice) { 1357 //manual slice count 1358 var arBreakpoints = Object.keys(options.breakpoint),
1359 bSliceNext = false; 1360 if (arBreakpoints.length) { 1361 elw = 1362 typeof options.item !== 'undefined' && options.item.length 1363 ? $(options.item).last().getFloatWidth() 1364 : el.last().hasClass('item') 1365 ? el.last().getFloatWidth() 1366 : el.last().parents('.item').getFloatWidth(); 1367 if (elw) options.sliceNext = Math.floor(elsw / elw); 1368 for (var key in arBreakpoints) { 1369 if (window.matchMedia(arBreakpoints[key].toString()).matches) { 1370 bSliceNext = true; 1371 options.slice = options.breakpoint[arBreakpoints[key]]; 1372 } 1373 } 1374 } 1375 } 1376 if (typeof options.typeResize == 'undefined' || options.typeResize == false) { 1377 if (options.slice) { 1378 for (var i = 0; i < el.length; i += options.slice) { 1379 if (options.customSlice && options.sliceNext && bSliceNext && i) 1380 //manual slice count 1381 options.slice = options.sliceNext; 1382 $(el.slice(i, i + options.slice)).equalizeHeights( 1383 options.outer, 1384 options.classNull, 1385 options.minHeight, 1386 options.typeResize, 1387 options.typeValue 1388 ); 1389 } 1390 } 1391 if (options.lineheight) { 1392 var lineheightAdd = parseInt(options.lineheight); 1393 if (isNaN(lineheightAdd)) { 1394 lineheightAdd = 0; 1395 } 1396 el.each(function () { 1397 $(this).css('line-height', $(this).actual('height') + lineheightAdd + 'px'); 1398 }); 1399 } 1400 } 1401 } 1402 1403 var options = $.extend( 1404 { 1405 slice: null, 1406 sliceNext: null, 1407 outer: false, 1408 lineheight: false, 1409 autoslicecount: true, 1410 classNull: false, 1411 minHeight: false, 1412 row: false, 1413 item: false, 1414 typeResize: false, 1415 typeValue: false, 1416 fixWidth: 0, 1417 resize: true, 1418 mobile: false, 1419 customSlice: false, 1420 breakpoint: {}, 1421 }, 1422 options 1423 ); 1424 1425 var el = $(this); 1426 1427 ignoreResize.push(true); 1428 _slice(el); 1429 ignoreResize.pop(); 1430}; 1431 1432if (!funcDefined('initHoverBlock')) { 1433 function initHoverBlock(target) { 1434 /*$(target).find('.catalog_item.item_wrap').on('mouseenter', function(){ 1435 $(this).addClass('hover'); 1436 }) 1437 $(target).find('.catalog_item.item_wrap').on('mouseleave', function(){ 1438 $(this).removeClass('hover'); 1439 })*/ 1440 } 1441} 1442if (!funcDefined('setStatusButton')) { 1443 function setStatusButton() { 1444 if (!funcDefined('setItemButtonStatus')) { 1445 setItemButtonStatus = function (data) { 1446 if (data.BASKET) { 1447 for (var i in data.BASKET) { 1448 var id = data.BASKET[i]; 1449 if (typeof id === 'number' || typeof id === 'string') { 1450 $('.to-cart[data-item=' + id + ']').hide(); 1451 $('.counter_block[data-item=' + id + ']') 1452 .closest('.counter_block_inner') 1453 .hide(); 1454 $('.counter_block[data-item=' + id + ']').hide(); 1455 $('.in-cart[data-item=' + id + ']').show(); 1456 $('.in-cart[data-item=' + id + ']') 1457 .closest('.button_block') 1458 .addClass('wide'); 1459 } 1460 } 1461 } 1462 if (data.DELAY) { 1463 for (var i in data.DELAY) { 1464 var id = data.DELAY[i]; 1465 if (typeof id === 'number' || typeof id === 'string') { 1466 $('.wish_item.to[data-item=' + id + ']').hide(); 1467 $('.wish_item.in[data-item=' + id + ']').show(); 1468 if ($('.wish_item[data-item=' + id + ']').find('.value.added').length) { 1469 //$('.wish_item[data-item='+id+']').addClass("added"); 1470 $('.wish_item[data-item=' + id + ']') 1471 .find('.value') 1472 .hide(); 1473 $('.wish_item[data-item=' + id + ']') 1474 .find('.value.added') 1475 .show(); 1476 } 1477 } 1478 } 1479 } 1480 if (data.SUBSCRIBE) { 1481 for (var i in data.SUBSCRIBE) { 1482 var id = data.SUBSCRIBE[i]; 1483 if (typeof id === 'number' || typeof id === 'string') { 1484 $('.to-subscribe[data-item=' + id + ']').hide(); 1485 $('.in-subscribe[data-item=' + id + ']').show(); 1486 } 1487 } 1488 } 1489 if (data.COMPARE) { 1490 for (var i in data.COMPARE) { 1491 var id = data.COMPARE[i]; 1492 if (typeof id === 'number' || typeof id === 'string') { 1493 $('.compare_item.to[data-item=' + id + ']').hide(); 1494 $('.compare_item.in[data-item=' + id + ']').show(); 1495 if ($('.compare_item[data-item=' + id + ']').find('.value.added').length) { 1496 $('.compare_item[data-item=' + id + ']') 1497 .find('.value') 1498 .hide(); 1499 $('.compare_item[data-item=' + id + ']') 1500 .find('.value.added') 1501 .show(); 1502 } 1503 } 1504 } 1505 } 1506 }; 1507 } 1508 if (!Object.keys(arStatusBasketAspro).length) { 1509 if (typeof arAsproOptions === 'undefined') { 1510 var arAsproOptions = { 1511 SITE_DIR: '/', 1512 }; 1513 if ($('body').data('site') !== undefined) arAsproOptions['SITE_DIR'] = $('body').data('site'); 1514 } 1515 $.ajax({ 1516 url: arAsproOptions['SITE_DIR'] + 'ajax/getAjaxBasket.php', 1517 type: 'POST', 1518 success: function (data) { 1519 arStatusBasketAspro = data; 1520 setItemButtonStatus(arStatusBasketAspro); 1521 }, 1522 }); 1523 } else setItemButtonStatus(arStatusBasketAspro); 1524 } 1525} 1526 1527if (!funcDefined('onLoadjqm')) { 1528 var onLoadjqm = function (name, hash, requestData, selector, requestTitle, isButton, thButton) { 1529 if (hash.c.noOverlay === undefined || (hash.c.noOverlay !== undefined && !hash.c.noOverlay)) { 1530 $('body').addClass('jqm-initied'); 1531 } 1532 if (window.matchMedia('(min-width: 768px)').matches) { 1533 $('body').addClass('swipeignore'); 1534 } 1535 1536 if (typeof $(hash.t).data('ls') !== ' undefined' && $(hash.t).data('ls')) { 1537 var ls = $(hash.t).data('ls'), 1538 ls_timeout = 0, 1539 v = ''; 1540 1541 if ($(hash.t).data('ls_timeout')) ls_timeout = $(hash.t).data('ls_timeout'); 1542 1543 ls_timeout = ls_timeout ? Date.now() + ls_timeout * 1000 : ''; 1544 1545 if (typeof localStorage !== 'undefined') {
1546 var val = localStorage.getItem(ls); 1547 try { 1548 v = JSON.parse(val); 1549 } catch (e) { 1550 v = val; 1551 } 1552 if (v != null) { 1553 localStorage.removeItem(ls); 1554 } 1555 v = {}; 1556 v['VALUE'] = 'Y'; 1557 v['TIMESTAMP'] = ls_timeout; // default: seconds for 1 day 1558 1559 localStorage.setItem(ls, JSON.stringify(v)); 1560 } else { 1561 var val = $.cookie(ls); 1562 if (!val) $.cookie(ls, 'Y', { expires: ls_timeout }); // default: seconds for 1 day 1563 } 1564 1565 var dopClasses = hash.w.find('.marketing-popup').data('classes'); 1566 if (dopClasses) { 1567 hash.w.addClass(dopClasses); 1568 } 1569 } 1570 1571 //show password eye 1572 if (hash.w.hasClass('auth_frame')) { 1573 hash.w.find('.form-control:not(.eye-password-ignore) [type=password]').each(function (item) { 1574 $(this).closest('.form-control').addClass('eye-password'); 1575 }); 1576 } 1577 1578 $.each($(hash.t).get(0).attributes, function (index, attr) { 1579 if (/^data\-autoload\-(.+)$/.test(attr.nodeName)) { 1580 var key = attr.nodeName.match(/^data\-autoload\-(.+)$/)[1]; 1581 var el = $('input[data-sid="' + key.toUpperCase() + '"]'); 1582 var value = $(hash.t).data('autoload-' + key); 1583 value = String(value).replace(/%99/g, '\\'); // replace symbol \ 1584 el.val(BX.util.htmlspecialcharsback(value)).attr('readonly', 'readonly'); 1585 el.closest('.form-group').addClass('input-filed'); 1586 el.attr('title', el.val()); 1587 } 1588 }); 1589 1590 //show gift block 1591 if (hash.w.hasClass('send_gift_frame')) { 1592 var imgHtml = (priceHtml = propsHtml = ''); 1593 if ($('.offers_img a').length) imgHtml = $('.offers_img a').html(); 1594 else if ($('.product-detail-gallery__container .first_sku_picture').length) 1595 imgHtml = '<img src=' + $('.product-detail-gallery__container link.first_sku_picture').attr('href') + ' />'; 1596 else if ($('.product-detail-gallery__container').length) 1597 imgHtml = '<img src=' + $('.product-detail-gallery__container link[itemprop="image"]').attr('href') + ' />'; 1598 1599 if ($('.product-container *[itemprop="offers"]').length) { 1600 //show price 1601 if ($('.sku-view').length) { 1602 if ($('.prices_block .price').length) 1603 priceHtml = $('.prices_block .cost.prices').html().replace('id', 'data-id'); 1604 } else { 1605 var mainContainer = $(hash.t).closest('.product-main'); 1606 if (mainContainer.find('.prices_block .js_price_wrapper').length) { 1607 if (mainContainer.find('.prices_block .js_price_wrapper .with_matrix').length) { 1608 priceHtml = 1609 '<div class="with_matrix">' + 1610 mainContainer.find('.prices_block .js_price_wrapper .with_matrix').html() + 1611 '</div>'; 1612 } else if (mainContainer.find('.prices_block .with_matrix:visible').length) { 1613 priceHtml = 1614 '<div class="with_matrix">' + mainContainer.find('.prices_block .with_matrix').html() + '</div>'; 1615 } else if (mainContainer.find('.prices_block .price_group.min').length) { 1616 priceHtml = 1617 '<div class="with_matrix">' + mainContainer.find('.prices_block .price_group.min').html() + '</div>'; 1618 } else { 1619 priceHtml = 1620 '<div class="with_matrix">' + mainContainer.find('.prices_block .js_price_wrapper').html() + '</div>'; 1621 } 1622 } else if (mainContainer.find('.prices_block .with_matrix').length) 1623 priceHtml = 1624 '<div class="with_matrix">' + mainContainer.find('.prices_block .with_matrix').html() + '</div>'; 1625 else if (mainContainer.find('.prices_block .price_group.min').length) 1626 priceHtml = mainContainer.find('.prices_block .price_group.min').html(); 1627 else if (mainContainer.find('.prices_block .price_matrix_wrapper').length) 1628 priceHtml = mainContainer.find('.prices_block .price_matrix_wrapper').html(); 1629 } 1630 } 1631 1632 if ($('.buy_block .sku_props').length) { 1633 propsHtml = '<div class="props_item">'; 1634 $('.buy_block .sku_props .bx_catalog_item_scu > div').each(function () { 1635 var title = $(this).find('.bx_item_section_name > span').html(); 1636 var props = ''; 1637 var ikSelect = $(this).find('.ik_select_link_text'); 1638 if (ikSelect.length) { 1639 props = ikSelect.text(); 1640 } else { 1641 var activeSku = $(this).find('ul li.active'); 1642 var isPicture = activeSku.find(' > i'); 1643 if (isPicture.length && isPicture.attr('title')) { 1644 var propTitle = isPicture.attr('title').split(':'); 1645 if (propTitle.length) { 1646 propTitle = propTitle[1].trim(); 1647 } else { 1648 propTitle = isPicture.attr('title'); 1649 } 1650 props = propTitle; 1651 } else { 1652 props = activeSku.find(' > span').text(); 1653 } 1654 } 1655 1656 propsHtml += 1657 '<div class="prop_item">' + 1658 '<span>' + 1659 title + 1660 // '<span class="val">
1660' + 1661 // props + 1662 // "</span>" + 1663 '</span>' + 1664 '</div>'; 1665 }); 1666 propsHtml += '</div>'; 1667 } 1668 $( 1669 '<div class="custom_block">' + 1670 '<div class="title">' + 1671 BX.message('POPUP_GIFT_TEXT') + 1672 '</div>' + 1673 '<div class="item_block">' + 1674 '<table class="item_list"><tr>' + 1675 '<td class="image">' + 1676 '<div>' + 1677 imgHtml + 1678 '</div>' + 1679 '</td>' + 1680 '<td class="text">' + 1681 '<div class="name">' + 1682 $('h1').text() + 1683 '</div>' + 1684 priceHtml + 1685 propsHtml + 1686 '</td>' + 1687 '</tr></table>' + 1688 '</div>' + 1689 '</div>' 1690 ).prependTo(hash.w.find('.form_body')); 1691 } 1692 1693 if ( 1694 arAsproOptions['THEME']['REGIONALITY_SEARCH_ROW'] == 'Y' && 1695 (hash.w.hasClass('city_chooser_frame') || hash.w.hasClass('city_chooser_small_frame')) 1696 ) { 1697 hash.w.addClass('small_popup_regions'); 1698 hash.w.addClass('no_scroll'); 1699 } 1700 1701 if (name == 'fast_view' && $('.smart-filter-filter').length) { 1702 var navButtons = 1703 '<div class="navigation-wrapper-fast-view">' + 1704 '<div class="fast-view-nav prev colored_theme_hover_bg" data-fast-nav="prev">' + 1705 '<i class="svg left">' + 1706 '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6.969" viewBox="0 0 12 6.969"><path id="Rounded_Rectangle_702_copy_24" data-name="Rounded Rectangle 702 copy 24" class="cls-1" d="M361.691,401.707a1,1,0,0,1-1.414,0L356,397.416l-4.306,4.291a1,1,0,0,1-1.414,0,0.991,0.991,0,0,1,0-1.406l5.016-5a1.006,1.006,0,0,1,1.415,0l4.984,5A0.989,0.989,0,0,1,361.691,401.707Z" transform="translate(-350 -395.031)"/></svg>' + 1707 '</i>' + 1708 '</div>' + 1709 '<div class="fast-view-nav next colored_theme_hover_bg" data-fast-nav="next">' + 1710 '<i class="svg right">' + 1711 '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6.969" viewBox="0 0 12 6.969"><path id="Rounded_Rectangle_702_copy_24" data-name="Rounded Rectangle 702 copy 24" class="cls-1" d="M361.691,401.707a1,1,0,0,1-1.414,0L356,397.416l-4.306,4.291a1,1,0,0,1-1.414,0,0.991,0.991,0,0,1,0-1.406l5.016-5a1.006,1.006,0,0,1,1.415,0l4.984,5A0.989,0.989,0,0,1,361.691,401.707Z" transform="translate(-350 -395.031)"/></svg>' + 1712 '</i>' + 1713 '</div>' + 1714 '</div>'; 1715 1716 hash.w.closest('#popup_iframe_wrapper').append(navButtons); 1717 } 1718 1719 hash.w.addClass('scrollblock'); 1720 hash.w.addClass('show').css({ 1721 // 'top': (($(window).height() > hash.w.height()) ? Math.floor(($(window).height() - hash.w.height()) / 2) : 0) + 'px', 1722 // 'margin-left': ($(window).width() > hash.w.outerWidth() ? '-' + hash.w.outerWidth() / 2 + 'px' : '-' + $(window).width() / 2 + 'px'), 1723 opacity: 1, 1724 }); 1725 1726 if (hash.c.noOverlay === undefined || (hash.c.noOverlay !== undefined && !hash.c.noOverlay)) { 1727 $('body').css({ overflow: 'hidden', height: '100vh' }); 1728 hash.w.closest('#popup_iframe_wrapper').css({ 'z-index': 3000, display: 'flex' }); 1729 } 1730 1731 var eventdata = { action: 'loadForm' }; 1732 let _this = $(hash.t)[0]; 1733 if (thButton) { 1734 _this = thButton; 1735 } 1736 BX.onCustomEvent('onCompleteAction', [eventdata, _this]); 1737 1738 if (typeof requestData == 'undefined') { 1739 requestData = ''; 1740 } 1741 if (typeof selector == 'undefined') { 1742 selector = false; 1743 } 1744 1745 var width = $('.' + name + '_frame').width(); 1746 //$('.'+name+'_frame').css('margin-left', '-'+width/2+'px'); 1747 1748 if (name == 'order-popup-call') { 1749 } else if (name == 'order-button') { 1750 $('.order-button_frame') 1751 .find('div[product_name]') 1752 .find('input') 1753 .val(hash.t.title) 1754 .attr('readonly', 'readonly') 1755 .css({ overflow: 'hidden', 'text-overflow': 'ellipsis' }); 1756 } else if (name == 'basket_error') { 1757 $('.basket_error_frame .pop-up-title').text(requestTitle); 1758 $('.basket_error_frame .ajax_text').html(requestData); 1759 1760 if (window.matchMedia('(max-width: 991px)').matches) { 1761 $('body').addClass('all_viewed'); 1762 } 1763 1764 initSelects(document); 1765 if (isButton == 'Y' && thButton) 1766 $( 1767 '<div class=\'popup_button_basket_wr\'><span class=\'popup_button_basket big_btn button\' data-item=' + 1768 thButton.data('item') + 1769 '><span class=\'btn btn-default\'>' + 1770 BX.message('ERROR_BASKET_BUTTON') + 1771 '</span></span></div>' 1772 ).insertAfter($('.basket_error_frame .ajax_text')); 1773 } else if (name === 'fast_view') { 1774 initSelects(document); 1775 } 1776 1777 $('.' + name + '_frame').show(); 1778 }; 1779} 1780 1781if (!funcDefined('onHidejqm')) { 1782 var onHidejqm = function (name, hash) { 1783 if (hash.w.find('.one_click_buy_result_success').is(':visible') && name == 'one_click_buy_basket') { 1784 window.location.href = window.location.href; 1785 } 1786 1787 if ($('.xzoom-source').length) $('.xzoom-source').remove(); 1788 if ($('.xzoom-preview').length) $('.xzoom-preview').remove(); 1789 1790 // hash.w.css('opacity', 0).hide(); 1791 hash.w.animate({ opacity: 0 }, 200, function () { 1792 hash.w.hide(); 1793 hash.w.empty(); 1794 hash.o.remove(); 1795 hash.w.removeClass('show'); 1796 1797 $('body').css({ overflow: '', height: '' }); 1798 1799 if (!hash.w.closest('#popup_iframe_wrapper').find('.jqmOverlay').length) { 1800 hash.w.closest('#popup_iframe_wrapper').css({ 'z-index': '', display: '' }); 1801 } 1802 1803 if (window.matchMedia('(max-width: 991px)').matches) { 1804 $('body').removeClass('all_viewed'); 1805 } 1806 if (!$('.jqmOverlay:not(.mobp)').length || $('.jqmOverlay.waiting').length) { 1807 $('body').removeClass('jqm-initied'); 1808 } 1809 1810 if (window.matchMedia('(min-width: 768px)').matches) { 1811 $('body').removeClass('swipeignore'); 1812 } 1813 1814 if (name == 'fast_view') { 1815 $('.fast_view_popup').remove(); 1816 1817 var navButtons = hash.w.closest('#popup_iframe_wrapper').find('.navigation-wrapper-fast-view'); 1818 navButtons.remove(); 1819 } 1820 }); 1821 1822 window.b24form = false;
1823 }; 1824} 1825 1826$.fn.jqmEx = function () { 1827 // $(this).each(function(){ 1828 var _this = $(this); 1829 var name = _this.data('name'); 1830 1831 if (name.length && _this.attr('disabled') != 'disabled') { 1832 var extClass = '', 1833 paramsStr = '', 1834 trigger = '', 1835 arTriggerAttrs = {}; 1836 1837 // call counter 1838 if (typeof $.fn.jqmEx.counter === 'undefined') { 1839 $.fn.jqmEx.counter = 0; 1840 } else { 1841 ++$.fn.jqmEx.counter; 1842 } 1843 1844 // trigger attrs and params 1845 $.each(_this.get(0).attributes, function (index, attr) { 1846 var attrName = attr.nodeName; 1847 var attrValue = _this.attr(attrName); 1848 if (attrName !== 'onclick') { 1849 trigger += '[' + attrName + '="' + attrValue + '"]'; 1850 arTriggerAttrs[attrName] = attrValue; 1851 } 1852 if (/^data\-custom\-param\-(.+)$/.test(attrName)) { 1853 var key = attrName.match(/^data\-custom\-param\-(.+)$/)[1]; 1854 paramsStr += key + '=' + encodeURIComponent(attrValue) + '&'; 1855 } 1856 if (/^data\-param\-(.+)$/.test(attrName)) { 1857 var key = attrName.match(/^data\-param\-(.+)$/)[1]; 1858 paramsStr += key + '=' + attrValue + '&'; 1859 } 1860 }); 1861 var triggerAttrs = JSON.stringify(arTriggerAttrs); 1862 var encTriggerAttrs = encodeURIComponent(triggerAttrs); 1863 1864 // popup url 1865 var script = arAsproOptions['SITE_DIR'] + 'ajax/form.php'; 1866 if (name == 'auth') { 1867 script += '?' + paramsStr + 'auth=Y'; 1868 } else { 1869 script += '?' + paramsStr + 'data-trigger=' + encTriggerAttrs; 1870 } 1871 1872 // ext frame class 1873 if (_this.closest('#fast_view_item').length) { 1874 extClass = 'fast_view_popup'; 1875 } 1876 1877 // use overlay? 1878 var noOverlay = _this.data('noOverlay') == 'Y'; 1879 1880 // unique frame to each trigger 1881 if (noOverlay) { 1882 var frame = $( 1883 '<div class="' + 1884 name + 1885 '_frame ' + 1886 extClass + 1887 ' jqmWindow popup" data-popup="' + 1888 $.fn.jqmEx.counter + 1889 '" data-trigger="' + 1890 encTriggerAttrs + 1891 '"></div>' 1892 ).appendTo('body'); 1893 } else { 1894 var frame = $( 1895 '<div class="' + 1896 name + 1897 '_frame ' + 1898 extClass + 1899 ' jqmWindow popup" data-popup="' + 1900 $.fn.jqmEx.counter + 1901 '" data-trigger="' + 1902 encTriggerAttrs + 1903 '"></div>' 1904 ).appendTo('#popup_iframe_wrapper'); 1905 } 1906 1907 loadJQM(() => { 1908 frame.jqm({ 1909 ajax: script, 1910 trigger: trigger, 1911 noOverlay: noOverlay, 1912 onLoad: function (hash) { 1913 onLoadjqm(name, hash); 1914 }, 1915 onHide: function (hash) { 1916 onHidejqm(name, hash); 1917 }, 1918 }); 1919 _this.trigger('click'); 1920 }); 1921 } 1922 // }); 1923}; 1924 1925window.addEventListener('keydown', function (e) { 1926 if (e.keyCode == 27) { 1927 $('.jqm-init.show').last().jqmHide(); 1928 1929 // hide fixed search panel with overlay 1930 if ($('.inline-search-block.show').length) { 1931 $('.inline-search-block').toggleClass('show'); 1932 $('.jqmOverlay.search').detach(); 1933 } 1934 1935 // hide already visible search results 1936 $('.title-search-result').hide(); 1937 1938 // unfocus title.search input 1939 $('.search .search-input').trigger('blur'); 1940 1941 $('.mega_fixed_menu').fadeOut(animationTime); 1942 } 1943}); 1944 1945if (!funcDefined('scroll_block')) { 1946 function scroll_block(block, clickedItem) { 1947 if (block.length) { 1948 if (clickedItem !== undefined && clickedItem.length) { 1949 clickedItem.trigger('click'); 1950 } else { 1951 $('.prices_tab').addClass('active').siblings().removeClass('active'); 1952 if ($('.prices_tab .opener').length && !$('.prices_tab .opener .opened').length) { 1953 let item = $('.prices_tab .opener').first(); 1954 item.find('.opener_icon').addClass('opened'); 1955 item.parents('tr').addClass('nb'); 1956 item.parents('tr').next('.offer_stores').find('.stores_block_wrap').slideDown(200); 1957 } 1958 } 1959 let topPos = block.offset().top, 1960 headerOffsetTop = $('#headerfixed').outerHeight(true, true); 1961 1962 let $tabFixed = document.querySelector('.product-item-detail-tabs-container-fixed'); 1963 if ($tabFixed) { 1964 topPos -= $tabFixed.offsetHeight; 1965 } 1966 $('html,body').animate({ scrollTop: topPos - headerOffsetTop }, 150); 1967 } 1968 } 1969} 1970 1971if (!funcDefined('jqmEd')) { 1972 var jqmEd = function (name, form_id, open_trigger, requestData, selector, requestTitle, isButton, thButton) { 1973 if (typeof requestData == 'undefined') { 1974 requestData = ''; 1975 } 1976 if (typeof selector == 'undefined') { 1977 selector = false;
1978 } 1979 $('body #popup_iframe_wrapper') 1980 .find('.' + name + '_frame') 1981 .remove(); 1982 $('body #popup_iframe_wrapper').append('<div class="' + name + '_frame jqmWindow popup"></div>'); 1983 1984 loadJQM(() => { 1985 if (typeof open_trigger == 'undefined') { 1986 $('.' + name + '_frame').jqm({ 1987 trigger: '.' + name + '_frame.popup', 1988 onHide: function (hash) { 1989 onHidejqm(name, hash); 1990 }, 1991 onLoad: function (hash) { 1992 onLoadjqm(name, hash, requestData, selector); 1993 }, 1994 ajax: 1995 arAsproOptions['SITE_DIR'] + 1996 'ajax/form.php?form_id=' + 1997 form_id + 1998 (requestData.length ? '&' + requestData : ''), 1999 }); 2000 } else { 2001 if (name == 'enter') { 2002 $('.' + name + '_frame').jqm({ 2003 trigger: open_trigger, 2004 onHide: function (hash) { 2005 onHidejqm(name, hash); 2006 }, 2007 onLoad: function (hash) { 2008 onLoadjqm(name, hash, requestData, selector); 2009 }, 2010 ajax: arAsproOptions['SITE_DIR'] + 'ajax/auth.php', 2011 }); 2012 } else if (name == 'basket_error') { 2013 $('.' + name + '_frame').jqm({ 2014 trigger: open_trigger, 2015 onHide: function (hash) { 2016 onHidejqm(name, hash); 2017 }, 2018 onLoad: function (hash) { 2019 onLoadjqm(name, hash, requestData, selector, requestTitle, isButton, thButton); 2020 }, 2021 ajax: arAsproOptions['SITE_DIR'] + 'ajax/basket_error.php', 2022 }); 2023 } else { 2024 $('.' + name + '_frame').jqm({ 2025 trigger: open_trigger, 2026 onHide: function (hash) { 2027 onHidejqm(name, hash); 2028 }, 2029 onLoad: function (hash) { 2030 onLoadjqm(name, hash, requestData, selector); 2031 }, 2032 ajax: 2033 arAsproOptions['SITE_DIR'] + 2034 'ajax/form.php?form_id=' + 2035 form_id + 2036 (requestData.length ? '&' + requestData : ''), 2037 }); 2038 } 2039 $(open_trigger).dblclick(function () { 2040 return false; 2041 }); 2042 } 2043 2044 $(open_trigger).click(); 2045 $(open_trigger).remove(); 2046 }); 2047 return true; 2048 }; 2049} 2050 2051if (!funcDefined('replaceBasketPopup')) { 2052 function replaceBasketPopup(hash) { 2053 if (typeof hash != 'undefined') { 2054 hash.w.hide(); 2055 hash.o.hide(); 2056 } 2057 } 2058} 2059 2060if (!funcDefined('waitLayer')) { 2061 function waitLayer(delay, callback) { 2062 if (typeof dataLayer !== 'undefined' && typeof callback === 'function') { 2063 callback(); 2064 } else { 2065 setTimeout(function () { 2066 waitLayer(delay, callback); 2067 }, delay); 2068 } 2069 } 2070} 2071 2072if (!funcDefined('checkCounters')) { 2073 function checkCounters(name) { 2074 if (typeof name !== 'undefined') { 2075 if ( 2076 name == 'google' && 2077 arAsproOptions['COUNTERS']['GOOGLE_ECOMERCE'] == 'Y' && 2078 arAsproOptions['COUNTERS']['GOOGLE_COUNTER'] > 0 2079 ) { 2080 return true; 2081 } else if ( 2082 name == 'yandex' && 2083 arAsproOptions['COUNTERS']['YANDEX_ECOMERCE'] == 'Y' && 2084 arAsproOptions['COUNTERS']['YANDEX_COUNTER'] > 0 2085 ) { 2086 return true; 2087 } else { 2088 return false; 2089 } 2090 } else if ( 2091 (arAsproOptions['COUNTERS']['YANDEX_ECOMERCE'] == 'Y' && arAsproOptions['COUNTERS']['YANDEX_COUNTER'] > 0) || 2092 (arAsproOptions['COUNTERS']['GOOGLE_ECOMERCE'] == 'Y' && arAsproOptions['COUNTERS']['GOOGLE_COUNTER'] > 0) 2093 ) { 2094 return true; 2095 } else { 2096 return false; 2097 } 2098 } 2099} 2100 2101if (!funcDefined('addBasketCounter')) { 2102 window.addBasketCounter = function addBasketCounter(id) { 2103 if (arAsproOptions['COUNTERS']['USE_BASKET_GOALS'] !== 'N') { 2104 var eventdata = { goal: 'goal_basket_add', params: { id: id } }; 2105 BX.onCustomEvent('onCounterGoals', [eventdata]); 2106 } 2107 if (checkCounters()) { 2108 $.ajax({ 2109 url: arAsproOptions['SITE_DIR'] + 'ajax/goals.php', 2110 dataType: 'json', 2111 type: 'POST', 2112 data: { ID: id }, 2113 success: function (item) { 2114 if (!!item && !!item.ID) { 2115 let ecommerce = { 2116 items: [ 2117 { 2118 item_name: item.NAME, // Name or ID is required. 2119 item_id: item.ID, 2120 price: parseFloat(item.PRICE), 2121 item_brand: item.BRAND, 2122 item_category: item.CATEGORY, 2123 item_list_name: 'List Results', 2124 item_list_id: item.IBLOCK_SECTION_ID, 2125 affiliation: item.SHOP_NAME, 2126 index: 1, 2127 quantity: parseFloat(item.QUANTITY), 2128 }, 2129 ], 2130 }; 2131 if (arAsproOptions['COUNTERS']['GA_VERSION'] === 'v3' || 1) { 2132 ecommerce = { 2133 currencyCode: item.CURRENCY, 2134 add: { 2135 products: [ 2136 { 2137 id: item.ID, 2138 name: item.NAME, 2139 price: parseFloat(item.PRICE), 2140 brand: item.BRAND, 2141 category: item.CATEGORY, 2142 quantity: parseFloat(item.QUANTITY), 2143 }, 2144 ], 2145 }, 2146 }; 2147 } 2148 waitLayer(100, function () { 2149 dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object. 2150 dataLayer.push({ 2151 // event: 'add_to_cart', 2152 event: arAsproOptions['COUNTERS']['GOOGLE_EVENTS']['ADD2BASKET'], 2153 currency: item.CURRENCY, 2154 value: parseFloat(item.PRICE), 2155 ecommerce: ecommerce, 2156 }); 2157 }); 2158 } 2159 }, 2160 }); 2161 } 2162 } 2163} 2164 2165if (!funcDefined('purchaseCounter')) { 2166 function purchaseCounter(order_id, type, callback) { 2167 if (checkCounters()) { 2168 $.ajax({ 2169 url: arAsproOptions['SITE_DIR'] + 'ajax/goals.php', 2170 dataType: 'json', 2171 type: 'POST', 2172 data: { ORDER_ID: order_id, TYPE: type }, 2173 success: function (order) { 2174 var products = []; 2175 const items = []; 2176 if (order.ITEMS) { 2177 for (var i in order.ITEMS) { 2178 products.push({ 2179 id: order.ITEMS[i].ID, 2180 sku: order.ITEMS[i].ID, 2181 name: order.ITEMS[i].NAME, 2182 price: order.ITEMS[i].PRICE, 2183 brand: order.ITEMS[i].BRAND, 2184 category: order.ITEMS[i].CATEGORY, 2185 quantity: order.ITEMS[i].QUANTITY, 2186 }); 2187 items.push({ 2188 item_id: order.ITEMS[i].ID, 2189 item_name: order.ITEMS[i].NAME, 2190 price: parseFloat(order.ITEMS[i].PRICE), 2191 item_brand: order.ITEMS[i].BRAND, 2192 item_category: order.ITEMS[i].CATEGORY, 2193 affiliation: order.SHOP_NAME, 2194 quantity: parseFloat(order.ITEMS[i].QUANTITY), 2195 }); 2196 } 2197 } 2198 if (order.ID) { 2199 let ecommerce = { 2200 transaction_id: order.ACCOUNT_NUMBER, 2201 affiliation: order.SHOP_NAME, 2202 value: order.PRICE, 2203 tax: order.TAX_VALUE, 2204 shipping: order.PRICE_DELIVERY, 2205 currency: order.CURRENCY, 2206 items: items, 2207 }; 2208 if (arAsproOptions['COUNTERS']['GA_VERSION'] === 'v3' || 1) { 2209 ecommerce = { 2210 purchase: { 2211 actionField: { 2212 id: order.ACCOUNT_NUMBER, 2213 shipping: order.PRICE_DELIVERY, 2214 tax: order.TAX_VALUE, 2215 list: type, 2216 revenue: order.PRICE, 2217 }, 2218 products: products, 2219 }, 2220 }; 2221 } 2222 waitLayer(100, function () { 2223 dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object. 2224 dataLayer.push({ 2225 event: arAsproOptions['COUNTERS']['GOOGLE_EVENTS']['PURCHASE'], 2226 ecommerce: ecommerce, 2227 }); 2228 2229 if (typeof callback !== 'undefined') { 2230 callback(ecommerce); 2231 } 2232 }); 2233 } else { 2234 if (typeof callback !== 'undefined') { 2235 callback(); 2236 } 2237 } 2238 }, 2239 error: function () { 2240 if (typeof callback !== 'undefined') { 2241 callback(); 2242 } 2243 }, 2244 }); 2245 } 2246 } 2247} 2248 2249if (!funcDefined('viewItemCounter')) { 2250 function viewItemCounter(id, price_id) { 2251 if (checkCounters()) { 2252 $.ajax({ 2253 url: arAsproOptions['SITE_DIR'] + 'ajax/goals.php', 2254 dataType: 'json', 2255 type: 'POST', 2256 data: { PRODUCT_ID: id, PRICE_ID: price_id }, 2257 success: function (item) { 2258 if (item.ID) { 2259 let ecommerce = { 2260 items: [ 2261 { 2262 item_name: item.NAME, // Name or ID is required. 2263 item_id: item.ID, 2264 price: parseFloat(item.PRICE), 2265 item_brand: item.BRAND, 2266 item_category: item.CATEGORY, 2267 item_list_name: 'List Results', 2268 item_list_id: item.IBLOCK_SECTION_ID, 2269 affiliation: item.SHOP_NAME, 2270 index: 1, 2271 quantity: parseFloat(item.QUANTITY), 2272 }, 2273 ], 2274 }; 2275 if (arAsproOptions['COUNTERS']['GA_VERSION'] === 'v3' || 1) { 2276 ecommerce = { 2277 detail: { 2278 products: [ 2279 { 2280 id: item.ID, 2281 name: item.NAME, 2282 price: parseFloat(item.PRICE), 2283 brand: item.BRAND, 2284 category: item.CATEGORY, 2285 }, 2286 ], 2287 }, 2288 }; 2289 } 2290 waitLayer(100, function () { 2291 dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object. 2292 dataLayer.push({ 2293 event: 'view_item', 2294 currency: item.CURRENCY, 2295 value: parseFloat(item.PRICE), 2296 ecommerce: ecommerce, 2297 }); 2298 }); 2299 } 2300 }, 2301 }); 2302 } 2303 } 2304} 2305 2306if (!funcDefined('checkoutCounter')) { 2307 function checkoutCounter(step, option, callback) { 2308 if (checkCounters('google')) { 2309 $.ajax({ 2310 url: arAsproOptions['SITE_DIR'] + 'ajax/goals.php', 2311 dataType: 'json', 2312 type: 'POST', 2313 data: { BASKET: 'Y' }, 2314 success: function (basket) { 2315 var products = []; 2316 const items = []; 2317 let summ = 0;
2318 let currency = 'RUB'; 2319 if (basket.ITEMS) { 2320 for (var i in basket.ITEMS) { 2321 products.push({ 2322 id: basket.ITEMS[i].ID, 2323 name: basket.ITEMS[i].NAME, 2324 price: basket.ITEMS[i].PRICE, 2325 brand: basket.ITEMS[i].BRAND, 2326 category: basket.ITEMS[i].CATEGORY, 2327 quantity: basket.ITEMS[i].QUANTITY, 2328 }); 2329 items.push({ 2330 item_id: basket.ITEMS[i].ID, 2331 item_name: basket.ITEMS[i].NAME, 2332 price: parseFloat(basket.ITEMS[i].PRICE), 2333 item_brand: basket.ITEMS[i].BRAND, 2334 item_category: basket.ITEMS[i].CATEGORY, 2335 affiliation: basket.SHOP_NAME, 2336 quantity: parseFloat(basket.ITEMS[i].QUANTITY), 2337 }); 2338 summ += basket.ITEMS[i].PRICE; 2339 currency = basket.ITEMS[i].CURRENCY; 2340 } 2341 } 2342 if (products) { 2343 let ecommerce = { 2344 items: items, 2345 }; 2346 if (arAsproOptions['COUNTERS']['GA_VERSION'] === 'v3' || 1) { 2347 ecommerce = { 2348 checkout: { 2349 actionField: { 2350 step: step, 2351 option: option, 2352 }, 2353 products: products, 2354 }, 2355 }; 2356 } 2357 waitLayer(100, function () { 2358 dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object. 2359 dataLayer.push({ 2360 event: arAsproOptions['COUNTERS']['GOOGLE_EVENTS']['CHECKOUT_ORDER'], 2361 currency: currency, 2362 value: parseFloat(summ), 2363 ecommerce: ecommerce, 2364 /*"eventCallback": function() { 2365 if((typeof callback !== 'undefined') && (typeof callback === 'function')){ 2366 callback(); 2367 } 2368 }*/ 2369 }); 2370 if (typeof callback !== 'undefined' && typeof callback === 'function') { 2371 callback(); 2372 } 2373 }); 2374 } 2375 }, 2376 }); 2377 } 2378 } 2379} 2380 2381if (!funcDefined('delFromBasketCounter')) { 2382 window.delFromBasketCounter = function delFromBasketCounter(id, callback) { 2383 if (checkCounters()) { 2384 $.ajax({ 2385 url: arAsproOptions['SITE_DIR'] + 'ajax/goals.php', 2386 dataType: 'json', 2387 type: 'POST', 2388 data: { ID: id }, 2389 success: function (item) { 2390 if (item.ID) { 2391 let ecommerce = { 2392 items: [ 2393 { 2394 item_name: item.NAME, // Name or ID is required. 2395 item_id: item.ID, 2396 price: parseFloat(item.PRICE), 2397 item_brand: item.BRAND, 2398 item_category: item.CATEGORY, 2399 affiliation: item.SHOP_NAME, 2400 item_list_name: 'List Results', 2401 }, 2402 ], 2403 }; 2404 if (arAsproOptions['COUNTERS']['GA_VERSION'] === 'v3' || 1) { 2405 ecommerce = { 2406 remove: { 2407 products: [ 2408 { 2409 id: item.ID, 2410 name: item.NAME, 2411 category: item.CATEGORY, 2412 }, 2413 ], 2414 }, 2415 }; 2416 } 2417 waitLayer(100, function () { 2418 dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object. 2419 dataLayer.push({ 2420 event: arAsproOptions['COUNTERS']['GOOGLE_EVENTS']['REMOVE_BASKET'], 2421 currency: item.CURRENCY, 2422 value: parseFloat(item.PRICE), 2423 ecommerce: ecommerce, 2424 }); 2425 if (typeof callback == 'function') { 2426 callback(); 2427 } 2428 }); 2429 } 2430 }, 2431 }); 2432 } 2433 } 2434} 2435 2436if (!funcDefined('setHeightCompany')) { 2437 function setHeightCompany() { 2438 $('.md-50.img').height($('.md-50.big').outerHeight() - 35); 2439 } 2440} 2441 2442if (!funcDefined('initSly')) { 2443 function initSly() { 2444 /*var $frame = $(document).find('.frame'); 2445 var $slidee = $frame.children('ul').eq(0); 2446 var $wrap = $frame.parent(); 2447 2448 if(arAsproOptions["PAGES"]["CATALOG_PAGE"] && $frame.length){ 2449 $frame.sly({ 2450 horizontal: 1, 2451 itemNav: 'basic', 2452 smart: 1, 2453 mouseDragging: 0, 2454 touchDragging: 0, 2455 releaseSwing: 0, 2456 startAt: 0, 2457 scrollBar: $wrap.find('.scrollbar'), 2458 scrollBy: 1, 2459 speed: 300, 2460 elasticBounds: 0, 2461 easing: 'swing', 2462 dragHandle: 1, 2463 dynamicHandle: 1, 2464 clickBar: 1, 2465 2466 // Buttons 2467 forward: $wrap.find('.forward'), 2468 backward: $wrap.find('.backward'), 2469 }); 2470 $frame.sly('reload'); 2471 }*/ 2472 } 2473} 2474 2475if (!funcDefined('createTableCompare')) { 2476 function createTableCompare(originalTable, appendDiv, cloneTable) { 2477 try { 2478 var clone = originalTable.clone().removeAttr('id').addClass('clone'); 2479 if (cloneTable.length) { 2480 cloneTable.remove(); 2481 appendDiv.html(''); 2482 appendDiv.html(clone); 2483 } else { 2484 appendDiv.append(clone); 2485 } 2486 } catch (e) { 2487 } finally { 2488 } 2489 } 2490} 2491 2492if (!funcDefined('fillBasketPropsExt')) { 2493 fillBasketPropsExt = function (that, prop_code, basket_prop_div) { 2494 var i = 0, 2495 propCollection = null, 2496 foundValues = false, 2497 basketParams = {}, 2498 obBasketProps = null; 2499 2500 obBasketProps = BX(basket_prop_div); 2501 if (!obBasketProps && that.closest('.item').find('.basket_props_block').length && that.data('offers') !== 'Y') 2502 obBasketProps = that.closest('.item').find('.basket_props_block')[0]; 2503 2504 if (!!obBasketProps) { 2505 propCollection = obBasketProps.getElementsByTagName('select'); 2506 if (!!propCollection && !!propCollection.length) { 2507 for (i = 0; i < propCollection.length; i++) { 2508 if (!propCollection[i].disabled) { 2509 switch (propCollection[i].type.toLowerCase()) { 2510 case 'select-one': 2511 basketParams[propCollection[i].name] = propCollection[i].value; 2512 foundValues = true; 2513 break; 2514 default: 2515 break; 2516 } 2517 } 2518 } 2519 } 2520 propCollection = obBasketProps.getElementsByTagName('input'); 2521 if (!!propCollection && !!propCollection.length) { 2522 for (i = 0; i < propCollection.length; i++) { 2523 if (!propCollection[i].disabled) { 2524 switch (propCollection[i].type.toLowerCase()) { 2525 case 'hidden': 2526 basketParams[propCollection[i].name] = propCollection[i].value; 2527 foundValues = true; 2528 break; 2529 case 'radio': 2530 if (propCollection[i].checked) { 2531 basketParams[propCollection[i].name] = propCollection[i].value; 2532 foundValues = true; 2533 } 2534 break; 2535 default: 2536 break; 2537 } 2538 } 2539 } 2540 } 2541 } 2542 if (!foundValues) { 2543 basketParams[prop_code] = []; 2544 basketParams[prop_code][0] = 0; 2545 } 2546 return basketParams; 2547 }; 2548} 2549if (!funcDefined('showBasketError')) { 2550 showBasketError = function (mess, title, addButton, th, callback) { 2551 var title_set = title ? title : BX.message('ERROR_BASKET_TITLE'), 2552 isButton = 'N', 2553 thButton = ''; 2554 if (typeof addButton !== undefined) { 2555 isButton = 'Y'; 2556 } 2557 if (typeof th !== undefined) { 2558 thButton = th; 2559 } 2560 $('body').append('<span class=\'add-error-bakset\' style=\'display:none;\'></span>'); 2561 jqmEd('basket_error', 'error-bakset', '.add-error-bakset', mess, this, title_set, isButton, thButton); 2562 2563 if (typeof callback === 'function') { 2564 callback(); 2565 } 2566 }; 2567} 2568 2569CheckTopVisibleMenu = function (that) { 2570 var dropdownMenu = $('.dropdown-menu:visible'); 2571 if (that !== undefined) { 2572 dropdownMenu.push(that); 2573 } 2574 2575 if (dropdownMenu.length) { 2576 dropdownMenu.each(function (i, el) { 2577 var dropdownMenuCurrent = $(el); 2578 dropdownMenuCurrent.find('a').css('white-space', ''); 2579 dropdownMenuCurrent.css('left', ''); 2580 dropdownMenuCurrent.css('right', ''); 2581 dropdownMenuCurrent.removeClass('toright'); 2582 2583 var dropdownMenuCurrent_left = dropdownMenuCurrent.offset().left; 2584 2585 if (typeof dropdownMenuCurrent_left != 'undefined') { 2586 var menu = dropdownMenuCurrent.parents('.mega-menu'); 2587 if (!menu.length) menu = dropdownMenuCurrent.closest('.logo-row'); 2588 var menu_width = menu.outerWidth(); 2589 var menu_left = menu.offset().left; 2590 var menu_right = menu_left + menu_width; 2591 var isToRight = dropdownMenuCurrent.parents('.toright').length > 0; 2592 var parentsdropdownMenuCurrents = dropdownMenuCurrent.parents('.dropdown-menu'); 2593 var isHasParentdropdownMenuCurrent = parentsdropdownMenuCurrents.length > 0; 2594 if (isHasParentdropdownMenuCurrent) { 2595 var parentdropdownMenuCurrent_width = parentsdropdownMenuCurrents.first().outerWidth(); 2596 var parentdropdownMenuCurrent_left = parentsdropdownMenuCurrents.first().offset().left; 2597 var parentdropdownMenuCurrent_right = parentdropdownMenuCurrent_width + parentdropdownMenuCurrent_left; 2598 } 2599 2600 if (parentdropdownMenuCurrent_right + dropdownMenuCurrent.outerWidth() > menu_right) { 2601 dropdownMenuCurrent.find('a').css('white-space', 'normal'); 2602 } 2603 2604 var dropdownMenuCurrent_width = dropdownMenuCurrent.outerWidth(); 2605 var dropdownMenuCurrent_right = dropdownMenuCurrent_left + dropdownMenuCurrent_width; 2606 2607 if (dropdownMenuCurrent_right > menu_right || isToRight) { 2608 var addleft = 0; 2609 addleft = menu_right - dropdownMenuCurrent_right; 2610 if (isHasParentdropdownMenuCurrent || isToRight) { 2611 dropdownMenuCurrent.css('left', 'auto'); 2612 dropdownMenuCurrent.css('right', '100%'); 2613 dropdownMenuCurrent.addClass('toright'); 2614 } else { 2615 var dropdownMenuCurrent_curLeft = parseInt(dropdownMenuCurrent.css('left')); 2616 dropdownMenuCurrent.css('left', dropdownMenuCurrent_curLeft + addleft + 'px'); 2617 } 2618 } 2619 } 2620 }); 2621 } 2622}; 2623 2624if (!funcDefined('isRealValue')) { 2625 function isRealValue(obj) { 2626 return obj && obj !== 'null' && obj !== 'undefined'; 2627 } 2628} 2629 2630if (!funcDefined('rightScroll')) { 2631 function rightScroll(prop, id) { 2632 var el = BX('prop_' + prop + '_' + id); 2633 if (el) { 2634 var curVal = parseInt(el.style.marginLeft); 2635 if (curVal >= 0) el.style.marginLeft = curVal - 20 + '%'; 2636 } 2637 } 2638} 2639 2640if (!funcDefined('leftScroll')) { 2641 function leftScroll(prop, id) { 2642 var el = BX('prop_' + prop + '_' + id); 2643 if (el) { 2644 var curVal = parseInt(el.style.marginLeft); 2645 if (curVal < 0) el.style.marginLeft = curVal + 20 + '%'; 2646 } 2647 } 2648} 2649 2650if (!funcDefined('InitOrderCustom')) { 2651 InitOrderCustom = function () { 2652 $('.ps_logo img').wrap('<div class="image"></div>'); 2653 2654 $('#bx-soa-order .radio-inline').each(function () { 2655 if ($(this).find('input').attr('checked') == 'checked') { 2656 $(this).addClass('checked'); 2657 } 2658 }); 2659 2660 $('#bx-soa-order .checkbox input[type=checkbox]').each(function () { 2661 if ($(this).attr('checked') == 'checked') $(this).parent().addClass('checked'); 2662 }); 2663 2664 $('#bx-soa-order .bx-authform-starrequired').each(function () { 2665 var html = $(this).html(); 2666 $(this) 2667 .closest('label') 2668 .append('<span class="bx-authform-starrequired"> ' + html + '</span>'); 2669 $(this).detach(); 2670 }); 2671 $('.bx_ordercart_coupon').each(function () { 2672 if ($(this).find('.bad').length) $(this).addClass('bad'); 2673 else if ($(this).find('.good').length) $(this).addClass('good'); 2674 }); 2675 /*if (typeof(propsMap) !== 'undefined') { 2676 $(propsMap).on('click', function () { 2677 var value = $('#orderDescription').val(); 2678 if ($('#orderDescription')) { 2679 if (value != '') { 2680 $('#orderDescription').closest('.form-group').addClass('value_y'); 2681 } 2682 } 2683 }); 2684 }*/ 2685 }; 2686} 2687 2688if (!funcDefined('InitLabelAnimation')) { 2689 InitLabelAnimation = function (className) { 2690 // Fix order labels 2691 if (!$(className).length) { 2692 return; 2693 } 2694 $(className) 2695 .find('.form-group') 2696 .each(function () { 2697 if ( 2698 $(this).find('input[type=text], textarea').length && 2699 !$(this).find('.dropdown-block').length && 2700 $(this).find('input[type=text], textarea').val() != '' 2701 ) { 2702 $(this).addClass('value_y'); 2703 } 2704 }); 2705 2706 $(document).on('click', className + ' .form-group:not(.bx-soa-pp-field) label', function () { 2707 $(this).parent().find('input, textarea').focus(); 2708 }); 2709 2710 $(document).on( 2711 'focusout', 2712 className + 2713 ' .form-group:not(.bx-soa-pp-field) input, ' + 2714 className + 2715 ' .form-group:not(.bx-soa-pp-field) textarea', 2716 function () { 2717 var value = $(this).val(); 2718 if ( 2719 value != '' && 2720 !$(this).closest('.form-group').find('.dropdown-block').length && 2721 !$(this).closest('.form-group').find('#profile_change').length 2722 ) { 2723 $(this).closest('.form-group').addClass('value_y'); 2724 } else { 2725 $(this).closest('.form-group').removeClass('value_y'); 2726 } 2727 } 2728 ); 2729 2730 $(document).on( 2731 'focus', 2732 className + 2733 ' .form-group:not(.bx-soa-pp-field) input, ' + 2734 className + 2735 ' .form-group:not(.bx-soa-pp-field) textarea', 2736 function () { 2737 if ( 2738 !$(this).closest('.form-group').find('.dropdown-block').length && 2739 !$(this).closest('.form-group').find('#profile_change').length && 2740 !$(this).closest('.form-group').find('[name=PERSON_TYPE_OLD]').length 2741 ) { 2742 $(this).closest('.form-group').addClass('value_y'); 2743 } 2744 } 2745 ); 2746 }; 2747} 2748 2749function loadScrollTabs(selector, callback) { 2750 $(selector).iAppear(() => { 2751 BX.loadScript([arAsproOptions['SITE_TEMPLATE_PATH'] + '/js/scrollTabs.js?v=1'], function () { 2752 callback(); 2753 }); 2754 }); 2755} 2756 2757checkCaptchaWidth = function () { 2758 $('.captcha-row').each(function () { 2759 var width = $(this).actual('width'); 2760 if ($(this).hasClass('b')) { 2761 if (width > 320) { 2762 $(this).removeClass('b'); 2763 } 2764 } else { 2765 if (width <= 320) { 2766 $(this).addClass('b'); 2767 } 2768 } 2769 }); 2770}; 2771 2772checkFormWidth = function () { 2773 $('.form .form_left').each(function () { 2774 var form = $(this).parents('.form'); 2775 var width = form.actual('width'); 2776 if (form.hasClass('b')) { 2777 if (width > 417) { 2778 form.removeClass('b'); 2779 } 2780 } else { 2781 if (width <= 417) { 2782 form.addClass('b'); 2783 } 2784 } 2785 }); 2786}; 2787 2788checkFormControlWidth = function () { 2789 $('.form-control').each(function () { 2790 var width = $(this).actual('width'); 2791 var labelWidth = $(this).find('label:not(.error) > span').actual('width'); 2792 var errorWidth = $(this).find('label.error').actual('width'); 2793 if (errorWidth > 0) { 2794 if ($(this).hasClass('h')) { 2795 if (width > labelWidth + errorWidth + 5) { 2796 $(this).removeClass('h'); 2797 } 2798 } else { 2799 if (width <= labelWidth + errorWidth + 5) { 2800 $(this).addClass('h'); 2801 } 2802 } 2803 } else { 2804 $(this).removeClass('h'); 2805 } 2806 }); 2807}; 2808 2809scrollToTop = function () { 2810 if (arAsproOptions['THEME']['SCROLLTOTOP_TYPE'] !== 'NONE') { 2811 var _isScrolling = false;
2812 // Append Button 2813 $('body').append( 2814 $('<a />') 2815 .addClass( 2816 'scroll-to-top ' + 2817 arAsproOptions['THEME']['SCROLLTOTOP_TYPE'] + 2818 ' ' + 2819 arAsproOptions['THEME']['SCROLLTOTOP_POSITION'] 2820 ) 2821 .attr({ href: '#', id: 'scrollToTop' }) 2822 ); 2823 2824 if (arAsproOptions['THEME']['SCROLLTOTOP_POSITION_BOTTOM']) { 2825 $('#scrollToTop').css('bottom', +arAsproOptions['THEME']['SCROLLTOTOP_POSITION_BOTTOM'] + 'px'); 2826 } 2827 2828 if (arAsproOptions['THEME']['SCROLLTOTOP_POSITION_RIGHT']) { 2829 $('#scrollToTop').css('right', +arAsproOptions['THEME']['SCROLLTOTOP_POSITION_RIGHT'] + 'px'); 2830 } 2831 2832 $('#scrollToTop').click(function (e) { 2833 e.preventDefault(); 2834 $('body, html').animate({ scrollTop: 0 }, 500); 2835 return false; 2836 }); 2837 // Show/Hide Button on Window Scroll event. 2838 $(window).scroll(function () { 2839 if (!_isScrolling) { 2840 _isScrolling = true; 2841 if (documentScrollTopLast > 150) { 2842 $('#scrollToTop').stop(true, true).addClass('visible'); 2843 _isScrolling = false; 2844 } else { 2845 $('#scrollToTop').stop(true, true).removeClass('visible'); 2846 _isScrolling = false; 2847 } 2848 checkScrollToTop(); 2849 } 2850 }); 2851 } 2852}; 2853 2854checkScrollToTop = function () { 2855 if (arAsproOptions['THEME'] && arAsproOptions['THEME']['SCROLLTOTOP_POSITION_BOTTOM']) 2856 var bottom = +arAsproOptions['THEME']['SCROLLTOTOP_POSITION_BOTTOM']; 2857 else var bottom = 55; 2858 2859 var scrollVal = documentScrollTopLast, 2860 windowHeight = document.documentElement.offsetHeight, 2861 footerOffset = 0; 2862 if ($('footer').length) footerOffset = $('footer .footer-inner').offset().top; 2863 2864 if (arAsproOptions['THEME'] && arAsproOptions['THEME']['SCROLLTOTOP_POSITION'] == 'CONTENT') { 2865 warpperWidth = $('body > .wrapper > .wrapper_inner').width(); 2866 $('#scrollToTop').css('margin-left', Math.ceil(warpperWidth / 2) + 23); 2867 } 2868 2869 if (scrollVal + windowHeight > footerOffset) { 2870 $('#scrollToTop').css('bottom', Math.round(bottom + scrollVal + windowHeight - footerOffset) + 'px'); 2871 } else if (parseInt($('#scrollToTop').css('bottom')) > bottom) { 2872 $('#scrollToTop').css('bottom', Math.round(bottom)); 2873 } 2874}; 2875 2876CheckObjectsSizes = function () { 2877 $('.container iframe,.container object,.container video').each(function () { 2878 var height_attr = $(this).attr('height'); 2879 var width_attr = $(this).attr('width'); 2880 if (height_attr && width_attr) { 2881 $(this).css('height', ($(this).outerWidth() * height_attr) / width_attr); 2882 } 2883 }); 2884}; 2885 2886if (!funcDefined('reloadTopBasket')) { 2887 window.reloadTopBasket = function reloadTopBasket(action, basketWindow, speed, delay, slideDown, item, sync) { 2888 var obj = { 2889 PARAMS: $('#top_basket_params').val(), 2890 ACTION: action, 2891 }; 2892 if (typeof item !== 'undefined' && item) { 2893 obj.delete_top_item = 'Y'; 2894 obj.delete_top_item_id = item.data('id'); 2895 } 2896 // $.post( arAsproOptions['SITE_DIR']+"ajax/show_basket_popup.php", obj, $.proxy(function( data ){ 2897 $.post( 2898 arAsproOptions['SITE_DIR'] + 'ajax/show_basket_actual.php', 2899 obj, 2900 $.proxy(function (data) { 2901 $(basketWindow).html(data); 2902 2903 //getActualBasket('', '', sync); 2904 2905 getActualBasket('', 'Compare', sync); //need for actual compare count when do opt action 2906 2907 var eventdata = { action: 'loadBasket' }; 2908 BX.onCustomEvent('onCompleteAction', [eventdata]); 2909 2910 /*if(arAsproOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N'){ 2911 if($(window).outerWidth() > 520){ 2912 if(slideDown=="Y") 2913 $(basketWindow).find('.basket_popup_wrapp').stop(true,true).slideDown(speed); 2914 clearTimeout(basketTimeoutSlide); 2915 basketTimeoutSlide = setTimeout(function() { 2916 var _this = $('#basket_line').find('.basket_popup_wrapp'); 2917 if (_this.is(':hover')) { 2918 _this.show(); 2919 }else{ 2920 $('#basket_line').find('.basket_popup_wrapp').slideUp(speed); 2921 } 2922 },delay); 2923 } 2924 }*/ 2925 }) 2926 ); 2927 }; 2928} 2929 2930CheckTabActive = function () { 2931 if (typeof clicked_tab && clicked_tab) { 2932 if (window.matchMedia('(min-width: 768px)').matches) { 2933 clicked_tab--; 2934 $('.nav.nav-tabs li').each(function () { 2935 if ($(this).index() == clicked_tab) $(this).addClass('active'); 2936 }); 2937 // $('.nav.nav-tabs li:eq('+clicked_tab+')').addClass('active'); 2938 $('.catalog_detail .tab-content .tab-pane:eq(' + clicked_tab
2938+ ')').addClass('active'); 2939 $('.catalog_detail .tab-content .tab-pane .title-tab-heading').next().removeAttr('style'); 2940 clicked_tab = 0; 2941 } 2942 } 2943}; 2944 2945/*countdown start*/ 2946if (!funcDefined('initCountdown')) { 2947 var initCountdown = function initCountdown() { 2948 if ($('.view_sale_block').length) { 2949 $('.view_sale_block').each(function () { 2950 var _this = $(this); 2951 if (_this.hasClass('init-if-visible') && !_this.is(':visible')) return; 2952 2953 var activeTo = _this.find('.active_to').text(), 2954 dateTo = new Date(activeTo.replace(/(\d+)\.(\d+)\.(\d+)/, '$3/$2/$1')); 2955 if (_this.hasClass('compact')) 2956 _this.find('.countdown').countdown( 2957 { 2958 until: dateTo, 2959 format: 'dHMS', 2960 compact: true, 2961 padZeroes: true, 2962 layout: 2963 '{d<}<span class="days item">{dn}<div class="text">{dl}</div></span>{d>} <span class="hours item">{hn}<div class="text">{hl}</div></span> <span class="minutes item">{mn}<div class="text">{ml}</div></span> <span class="sec item">{sn}<div class="text">{sl}</div></span>', 2964 }, 2965 $.countdown.regionalOptions['ru'] 2966 ); 2967 else 2968 _this.find('.countdown').countdown( 2969 { 2970 until: dateTo, 2971 format: 'dHMS', 2972 padZeroes: true, 2973 layout: 2974 '{d<}<span class="days item">{dnn}<div class="text">{dl}</div></span>{d>} <span class="hours item">{hnn}<div class="text">{hl}</div></span> <span class="minutes item">{mnn}<div class="text">{ml}</div></span> <span class="sec item">{snn}<div class="text">{sl}</div></span>', 2975 }, 2976 $.countdown.regionalOptions['ru'] 2977 ); 2978 }); 2979 } 2980 }; 2981} 2982 2983if (!funcDefined('initCountdownTime')) { 2984 var initCountdownTime = function initCountdownTime(block, time) { 2985 if (time) { 2986 var dateTo = new Date(time.replace(/(\d+)\.(\d+)\.(\d+)/, '$3/$2/$1')); 2987 block.find('.countdown').countdown('destroy'); 2988 if (block.hasClass('compact')) 2989 block.find('.countdown').countdown( 2990 { 2991 until: dateTo, 2992 format: 'dHM', 2993 compact: true, 2994 padZeroes: true, 2995 layout: 2996 '{d<}<span class="days item">{dn}<div class="text">{dl}</div></span>{d>} <span class="hours item">{hn}<div class="text">{hl}</div></span> <span class="minutes item">{mn}<div class="text">{ml}</div></span> <span class="sec item">{sn}<div class="text">{sl}</div></span>', 2997 }, 2998 $.countdown.regionalOptions['ru'] 2999 ); 3000 else 3001 block.find('.countdown').countdown( 3002 { 3003 until: dateTo, 3004 format: 'dHMS', 3005 padZeroes: true, 3006 layout: 3007 '{d<}<span class="days item">{dnn}<div class="text">{dl}</div></span>{d>} <span class="hours item">{hnn}<div class="text">{hl}</div></span> <span class="minutes item">{mnn}<div class="text">{ml}</div></span> <span class="sec item">{snn}<div class="text">{sl}</div></span>', 3008 }, 3009 $.countdown.regionalOptions['ru'] 3010 ); 3011 block.find('.view_sale_block').show(); 3012 } else { 3013 block.find('.view_sale_block').hide(); 3014 } 3015 }; 3016} 3017/*countdown end*/ 3018 3019waitCounter = function (idCounter, delay, callback) { 3020 var obCounter = window['yaCounter' + idCounter]; 3021 if (typeof obCounter == 'object') { 3022 if (typeof callback == 'function') callback(); 3023 } else { 3024 setTimeout(function () { 3025 waitCounter(idCounter, delay, callback); 3026 }, delay); 3027 } 3028}; 3029 3030var isOnceInited = (insertFilter = false); 3031var animationTime = 200; 3032var delayTime = 200; 3033var topMenuEnterTimer = false; 3034var previewMode = window != window.top; 3035var isMobile = window.matchMedia('(max-width:991px)').matches; 3036if (isMobile) document.documentElement.className += ' mobile'; 3037if (previewMode) document.documentElement.className += ' previewMode'; 3038 3039if (navigator.userAgent.indexOf('Edge') != -1) document.documentElement.className += ' bx-ie-edge'; 3040 3041/*filter start*/ 3042if (!funcDefined('checkVerticalMobileFilter')) { 3043 var checkVerticalMobileFilter = function checkVerticalMobileFilter() { 3044 /*if($('.right_block1.catalog.vertical').length && !$('.left_block.filter_ajax').length) 3045 { 3046 if(typeof window['trackBarOptions'] !== 'undefined') 3047 { 3048 window['trackBarValues'] = {} 3049 for(key in window['trackBarOptions']) 3050 { 3051 window['trackBarValues'][key] = { 3052 'leftPercent': window['trackBar' + key].leftPercent, 3053 'leftValue': window['trackBar' + key].minInput.value, 3054 'rightPercent': window['trackBar' + key].rightPercent, 3055 'rightValue': window['trackBar' + key].maxInput.value, 3056 } 3057 } 3058 } 3059 3060 if(window.matchMedia('(max-width: 991px)').matches) 3061 { 3062 if(!insertFilter) 3063 { 3064 $('.js_filter .bx_filter.bx_filter_vertical').html($('.left_block .bx_filter.bx_filter_vertical').html()); 3065 $('.left_block .bx_filter.bx_filter_vertical .bx_filter_section').remove(); 3066 insertFilter=true; 3067 } 3068 } 3069 else 3070 { 3071 if(insertFilter) 3072 { 3073 $('.left_block .bx_filter.bx_filter_vertical').html($('.js_filter .bx_filter.bx_filter_vertical').html()); 3074 $('.js_filter .bx_filter.bx_filter_vertical .bx_filter_section').remove(); 3075 insertFilter=false; 3076 } 3077 } 3078 3079 if(typeof window['trackBarOptions'] !== 'undefined') 3080 { 3081 for(key in window['trackBarOptions']) 3082 { 3083 window['trackBarOptions'][key].leftPercent = window['trackBarValues'][key].leftPercent; 3084 window['trackBarOptions'][key].rightPercent = window['trackBarValues'][key].rightPercent; 3085 window['trackBarOptions'][key].curMinPrice = window['trackBarValues'][key].leftValue; 3086 window['trackBarOptions'][key].curMaxPrice = window['trackBarValues'][key].rightValue; 3087 window['trackBar' + key] = new BX.Iblock.SmartFilter(window['trackBarOptions'][key]); 3088 window['trackBar' + key].minInput.value = window['trackBarValues'][key].leftValue; 3089 window['trackBar' + key].maxInput.value = window['trackBarValues'][key].rightValue; 3090 } 3091 } 3092 } 3093 else if($('.visible_mobile_filter').length) 3094 { 3095 var posTopBlock = BX.pos($('.detail.partners')[0]), 3096 posBlock = $('.ajax_load').position(); 3097 // $('.visible_mobile_filter').css('top', posBottomBlock.top-posTopBlock.top); 3098 $('.visible_mobile_filter').css('top', posBlock.top); 3099 3100 }*/ 3101 }; 3102} 3103/*filter end*/ 3104 3105// ONE CLICK 3106if (!funcDefined('oneClickBuy')) { 3107 var oneClickBuy = function (elementID, iblockID, that) { 3108 var name = 'one_click_buy'; 3109 var elementQuantity = 1; 3110 var offerProps = false;
3111 var buy_btn = $(that).closest('.buy_block').find('.to-cart'); 3112 var buy_btn2 = $(that).closest('tr').find('.to-cart'); 3113 var buy_btn3 = $(that).closest('.item').find('.to-cart'); 3114 3115 if (typeof that !== 'undefined') { 3116 elementQuantity = $(that).attr('data-quantity'); 3117 offerProps = $(that).attr('data-props'); 3118 } 3119 3120 if (elementQuantity < 0) { 3121 elementQuantity = 1; 3122 } 3123 3124 var tmp_props = buy_btn.data('props') || buy_btn2.data('props') || buy_btn3.data('props'), 3125 props = '', 3126 part_props = '', 3127 add_props = 'N', 3128 fill_prop = {}, 3129 iblockid = buy_btn.data('iblockid'), 3130 item = buy_btn.attr('data-item'); 3131 3132 if (tmp_props) { 3133 props = tmp_props.split(';'); 3134 } 3135 if (buy_btn.data('part_props')) { 3136 part_props = buy_btn.data('part_props'); 3137 } 3138 if (buy_btn.data('add_props')) { 3139 add_props = buy_btn.data('add_props'); 3140 } 3141 3142 fill_prop = fillBasketPropsExt(buy_btn, 'prop', buy_btn.data('bakset_div')); 3143 fill_prop.iblockID = iblockid; 3144 fill_prop.part_props = part_props; 3145 fill_prop.add_props = add_props; 3146 fill_prop.props = JSON.stringify(props); 3147 fill_prop.item = item; 3148 fill_prop.ocb_item = 'Y'; 3149 3150 // if (!isMobile) { 3151 if (!$(that).hasClass('clicked')) { 3152 $(that).addClass('clicked'); 3153 $('body') 3154 .find('.' + name + '_frame') 3155 .remove(); 3156 $('body') 3157 .find('.' + name + '_trigger') 3158 .remove(); 3159 $('body #popup_iframe_wrapper').append('<div class="' + name + '_frame popup"></div>'); 3160 $('body #popup_iframe_wrapper').append('<div class="' + name + '_trigger"></div>'); 3161 3162 loadJQM(() => { 3163 $('.' + name + '_frame').jqm({ 3164 trigger: '.' + name + '_trigger', 3165 onHide: function (hash) { 3166 onHidejqm(name, hash); 3167 }, 3168 toTop: false, 3169 onLoad: function (hash) { 3170 onLoadjqm(name, hash, '', false, false, false, that); 3171 }, 3172 ajax: 3173 arAsproOptions['SITE_DIR'] + 3174 'ajax/one_click_buy.php?ELEMENT_ID=' + 3175 elementID + 3176 '&IBLOCK_ID=' + 3177 iblockID + 3178 '&ELEMENT_QUANTITY=' + 3179 elementQuantity + 3180 '&OFFER_PROPS=' + 3181 fill_prop.props, 3182 }); 3183 3184 $('.' + name + '_trigger').click(); 3185 }); 3186 } 3187 }; 3188} 3189 3190if (!funcDefined('oneClickBuyBasket')) { 3191 var oneClickBuyBasket = function () { 3192 const name = 'one_click_buy_basket'; 3193 if (!$('.fast_order').hasClass('clicked')) { 3194 $('.fast_order').addClass('clicked'); 3195 $('body .' + name + '_frame').remove(); 3196 $('body .' + name + '_trigger').remove(); 3197 $('body #popup_iframe_wrapper').append( 3198 '<div class="' + name + '_frame popup"></div>', 3199 '<div class="' + name + '_trigger"></div>' 3200 ); 3201 3202 loadJQM(() => { 3203 $('.' + name + '_frame').jqm({ 3204 trigger: '.' + name + '_trigger', 3205 onHide: function (hash) { 3206 onHidejqm(name, hash); 3207 }, 3208 onLoad: function (hash) { 3209 onLoadjqm(name, hash); 3210 }, 3211 ajax: arAsproOptions['SITE_DIR'] + 'ajax/one_click_buy_basket.php', 3212 }); 3213 3214 $('.' + name + '_trigger').click(); 3215 }); 3216 } 3217 }; 3218} 3219 3220// TOP MENU ANIMATION 3221$(document).on('click', '.menu_top_block>li .more a', function () { 3222 $this = $(this); 3223 $this.parents('.dropdown').first().find('>.hidden').removeClass('hidden'); 3224 $this.parent().addClass('hidden'); 3225 setTimeout(function () { 3226 $this.parent().remove(); 3227 }, 500); 3228}); 3229 3230$(document).on('mouseenter', '.menu_top_block.catalogfirst>li>.dropdown>li.full', function () { 3231 var $submenu = $(this).find('>.dropdown'); 3232 3233 if ($submenu.length) { 3234 if (topMenuEnterTimer) { 3235 clearTimeout(topMenuEnterTimer); 3236 topMenuEnterTimer = false; 3237 } 3238 } 3239}); 3240 3241$(document).on('mouseenter', '.menu_top_block>li:not(.full)', function () { 3242 var $submenu = $(this).find('>.dropdown'); 3243 3244 if ($submenu.length && !$submenu.hasClass('visible')) { 3245 var $menu = $(this).parents('.menu'); 3246 var $wrapmenu = $menu.parents('.wrap_menu'); 3247 var wrapMenuWidth = $wrapmenu.actual('outerWidth'); 3248 var wrapMenuLeft = $wrapmenu.offset().left; 3249 var wrapMenuRight = wrapMenuLeft + wrapMenuWidth; 3250 var left = wrapMenuRight - ($(this).offset().left + $submenu.actual('outerWidth')); 3251 if ( 3252 window.matchMedia('(min-width: 951px)').matches && 3253 $(this).hasClass('catalog') && 3254 ($('.banner_auto').hasClass('catalog_page') || $('.banner_auto').hasClass('front_page')) 3255 ) { 3256 return; 3257 } 3258 if (left < 0) { 3259 $submenu.css({ left: left + 'px' }); 3260 } 3261 $submenu.stop().slideDown(animationTime, function () { 3262 $submenu.css({ height: '', overflow: 'visible' }); 3263 }); 3264 3265 $(this).on('mouseleave', function () { 3266 var leaveTimer = setTimeout(function () { 3267 $submenu.stop().slideUp(animationTime, function () { 3268 $submenu.css({ left: '' }); 3269 }); 3270 }, delayTime); 3271 3272 $(this).on('mouseenter', function () { 3273 if (leaveTimer) { 3274 clearTimeout(leaveTimer); 3275 leaveTimer = false;
3276 } 3277 }); 3278 }); 3279 } 3280}); 3281 3282$(document).on('mouseenter', '.menu_top_block>li .dropdown>li', function () { 3283 var $this = $(this); 3284 var $submenu = $this.find('>.dropdown'); 3285 3286 if ( 3287 $submenu.length && 3288 ((!$this.parents('.full').length && !$this.hasClass('full')) || $this.parents('.more').length) 3289 ) { 3290 var $menu = $this.parents('.menu'); 3291 var $wrapmenu = $menu.parents('.wrap_menu'); 3292 var arParentSubmenuForOpacity = []; 3293 topMenuEnterTimer = setTimeout(function () { 3294 var wrapMenuWidth = $wrapmenu.actual('outerWidth'); 3295 var wrapMenuLeft = $wrapmenu.offset().left; 3296 var wrapMenuRight = wrapMenuLeft + wrapMenuWidth; 3297 var $parentSubmenu = $this.parent(); 3298 var bToLeft = $parentSubmenu.hasClass('toleft') ? true : false; 3299 if (!bToLeft) { 3300 bToLeft = $this.offset().left + $this.actual('outerWidth') + $submenu.actual('outerWidth') > wrapMenuRight; 3301 } else { 3302 bToLeft = $this.offset().left + $this.actual('outerWidth') - $submenu.actual('outerWidth') < wrapMenuLeft; 3303 } 3304 3305 if (bToLeft) { 3306 $this.find('>.dropdown').addClass('toleft').show(); 3307 } else { 3308 $this.find('>.dropdown').removeClass('toleft').show(); 3309 } 3310 var submenuLeft = $submenu.offset().left; 3311 var submenuRight = submenuLeft + $submenu.actual('outerWidth'); 3312 3313 $this.parents('.dropdown').each(function () { 3314 var $this = $(this); 3315 var leftOffset = $this.offset().left; 3316 var rightOffset = leftOffset + $this.actual('outerWidth'); 3317 if ( 3318 (leftOffset >= submenuLeft && leftOffset < submenuRight - 1) || 3319 (rightOffset > submenuLeft + 1 && rightOffset <= submenuRight) 3320 ) { 3321 arParentSubmenuForOpacity.push($this); 3322 $this.find('>li>a').css({ opacity: '0.1' }); 3323 } 3324 }); 3325 }, delayTime); 3326 3327 $this.unbind('mouseleave'); 3328 $this.on('mouseleave', function () { 3329 var leaveTimer = setTimeout(function () { 3330 $this.find('.dropdown').removeClass('toleft').hide(); 3331 if (arParentSubmenuForOpacity.length) { 3332 for (i in arParentSubmenuForOpacity) { 3333 arParentSubmenuForOpacity[i].find('>li>a').css({ opacity: '' }); 3334 } 3335 } 3336 }, delayTime); 3337 3338 $this.unbind('mouseenter'); 3339 $this.on('mouseenter', function () { 3340 if (leaveTimer) { 3341 clearTimeout(leaveTimer); 3342 leaveTimer = false; 3343 } 3344 }); 3345 }); 3346 } 3347});
3348CheckFlexSlider = function () { 3349}; 3350 3351InitScrollBar = function (el, initOptions) { 3352}; 3353InitCustomScrollBar = function (el) { 3354}; 3355 3356/* slider gallery for fancybox */ 3357const InitFancyboxThumbnailsGallery = function (instance) { 3358 if ( 3359 $('.fancybox-thumbs') && 3360 $('.fancybox-thumbs__list a').length > 1 && 3361 !$('.fancybox-thumbs .swiper').length && 3362 typeof initSwiperSlider === 'function' 3363 ) { 3364 // update preview when lazyloaded 3365 3366 instance.Thumbs.$grid.find('.fancybox-thumbs__list a').each(function (i, el) { 3367 const path = instance.group[i].thumb || instance.group[i].src; 3368 3369 $(el).css('background-image', 'url(\'' + encodeURI(path) + '\')'); 3370 }); 3371 const SLIDER_RESIZE_BREAKPOINT = 600; 3372 const $swiperSlides = $('.fancybox-thumbs__list a'); 3373 const $swiperWrapper = $('.fancybox-thumbs__list'); 3374 const sliderDirection = window.innerWidth >= SLIDER_RESIZE_BREAKPOINT ? 'vertical' : 'horizontal'; 3375 3376 const options = { 3377 centerInsufficientSlides: true, 3378 direction: sliderDirection, 3379 mousewheelControl: true, 3380 setWrapperSize: true, 3381 slidesPerView: 3, 3382 spaceBetween: 16, 3383 breakpoints: { 3384 400: { 3385 slidesPerView: 5, 3386 }, 3387 }, 3388 }; 3389 3390 if ($swiperSlides.length > 5) { 3391 options.navigation = { 3392 nextEl: '.fancybox-thumbs__wrapper .swiper-button-next', 3393 prevEl: '.fancybox-thumbs__wrapper .swiper-button-prev', 3394 }; 3395 } 3396 3397 $('.fancybox-thumbs').wrapInner( 3398 '<div class=\'fancybox-thumbs__wrapper\'><div class=\'swiper\' data-plugin-options=\'' + 3399 JSON.stringify(options) + 3400 '\' /></div>' 3401 ); 3402 const $swiperContainerWrapper = $('.fancybox-thumbs__wrapper'); 3403 3404 if ($swiperSlides.length > 5) { 3405 $swiperContainerWrapper.append( 3406 '<div class=\'swiper-button-next\'><i class=\'svg right\'><svg xmlns=\'http://www.w3.org/2000/svg\' width=\'12\' height=\'6.969\' viewBox=\'0 0 12 6.969\'><path id=\'Rounded_Rectangle_702_copy_24\' data-name=\'Rounded Rectangle 702 copy 24\' class=\'cls-1\' d=\'M361.691,401.707a1,1,0,0,1-1.414,0L356,397.416l-4.306,4.291a1,1,0,0,1-1.414,0,0.991,0.991,0,0,1,0-1.406l5.016-5a1.006,1.006,0,0,1,1.415,0l4.984,5A0.989,0.989,0,0,1,361.691,401.707Z\' transform=\'translate(-350 -395.031)\'></path></svg></i></div>' 3407 ); 3408 $swiperContainerWrapper.prepend( 3409 '<div class=\'swiper-button-prev\'><i class=\'svg left\'><svg xmlns=\'http://www.w3.org/2000/svg\' width=\'12\' height=\'6.969\' viewBox=\'0 0 12 6.969\'><path id=\'Rounded_Rectangle_702_copy_24\' data-name=\'Rounded Rectangle 702 copy 24\' class=\'cls-1\' d=\'M361.691,401.707a1,1,0,0,1-1.414,0L356,397.416l-4.306,4.291a1,1,0,0,1-1.414,0,0.991,0.991,0,0,1,0-1.406l5.016-5a1.006,1.006,0,0,1,1.415,0l4.984,5A0.989,0.989,0,0,1,361.691,401.707Z\' transform=\'translate(-350 -395.031)\'></path></svg></i></div>' 3410 ); 3411 } 3412 $swiperWrapper.addClass('swiper-wrapper'); 3413 $swiperSlides.addClass('swiper-slide'); 3414 3415 initSwiperSlider('.fancybox-thumbs .swiper'); 3416 3417 const swiper = $('.fancybox-thumbs .swiper').data('swiper'); 3418 3419 swiper.slideTo(instance.curPos, 10); 3420 swiper.on('resize', function () { 3421 if (window.innerWidth >= SLIDER_RESIZE_BREAKPOINT && options.direction === 'horizontal') { 3422 options.direction = 'vertical'; 3423 swiper.changeDirection(options.direction, false); 3424 $swiperWrapper.css('width', 'auto'); 3425 swiper.update(); 3426 } else if (window.innerWidth < SLIDER_RESIZE_BREAKPOINT && options.direction === 'vertical') { 3427 options.direction = 'horizontal'; 3428 swiper.changeDirection(options.direction, false); 3429 $swiperWrapper.css('height', 'auto'); 3430 swiper.update(); 3431 } 3432 }); 3433 } 3434}; 3435/** */ 3436InitFancyBox = function () { 3437 if (typeof $.fn.fancybox !== 'function') { 3438 return; 3439 } 3440 3441 if (!$('.fancy').length) { 3442 return; 3443 } 3444 $('.fancy').fancybox({ 3445 padding: [40, 40, 64, 40], 3446 openEffect: 'fade', 3447 closeEffect: 'fade', 3448 nextEffect: 'fade', 3449 prevEffect: 'fade', 3450 opacity: true, 3451 tpl: { 3452 closeBtn: 3453 '<span title="' + 3454 BX.message('FANCY_CLOSE') + 3455 '" class="fancybox-item fancybox-close inline svg"><svg width="26" height="26" viewBox="0 0 26 26" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 24L24 2M2 2L24 24" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/></svg></span>', 3456 next: 3457 '<a title="' + 3458 BX.message('FANCY_NEXT') + 3459 '" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>', 3460 prev: 3461 '<a title="' + 3462 BX.message('FANCY_PREV') + 3463 '" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>', 3464 }, 3465 btnTpl: { 3466 close: 3467 '<button data-fancybox-close class="fancybox-button fancybox-button--close" title="{{CLOSE}}">' + 3468 '<i class="svg"><svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><path d="M2 24L24 2M2 2L24 24" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" /></svg></i>' + 3469 '</button>', 3470 3471 arrowLeft: 3472 '<button data-fancybox-prev class="fancybox-button fancybox-button--arrow_left" title="{{PREV}}">' + 3473 '<div><i class="svg left"><svg width="16" height="26" viewBox="0 0 15 26" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 13L0.585787 14.4142C-0.195262 13.6332 -0.195262 12.3668 0.585787 11.5858L2 13ZM11.5858 0.585786C12.3668 -0.195262 13.6332 -0.195262 14.4142 0.585786C15.1953 1.36683 15.1953 2.63317 14.4142 3.41421L11.5858 0.585786ZM14.4142 22.5858C15.1953 23.3668 15.1953 24.6332 14.4142 25.4142C13.6332 26.1953 12.3668 26.1953 11.5858 25.4142L14.4142 22.5858ZM0.585787 11.5858L11.5858 0.585786L14.4142 3.41421L3.41421 14.4142L0.585787 11.5858ZM3.41421 11.5858L14.4142 22.5858L11.5858 25.4142L0.585787 14.4142L3.41421 11.5858Z" fill="#999999"/></svg></i></div>' + 3474 '</button>', 3475 3476 arrowRight: 3477 '<button data-fancybox-next class="fancybox-button fancybox-button--arrow_right" title="{{NEXT}}">' + 3478 '<div><i class="svg right"><svg width="16" height="26" viewBox="0 0 15 26" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13 13L14.4142 14.4142C15.1953 13.6332 15.1953 12.3668 14.4142 11.5858L13 13ZM3.41421 0.585786C2.63317 -0.195262 1.36683 -0.195262 0.585786 0.585786C-0.195262 1.36683 -0.195262 2.63317 0.585786 3.41421L3.41421 0.585786ZM0.585786 22.5858C-0.195262 23.3668 -0.195262 24.6332 0.585786 25.4142C1.36683 26.1953 2.63317 26.1953 3.41421 25.4142L0.585786 22.5858ZM14.4142 11.5858L3.41421 0.585786L0.585786 3.41421L11.5858 14.4142L14.4142 11.5858ZM11.5858 11.5858L0.585786 22.5858L3.41421 25.4142L14.4142 14.4142L11.5858 11.5858Z" fill="white"/></svg></i></div>' + 3479 '</button>', 3480 }, 3481 touch: 'enabled', 3482 buttons: ['close'], 3483 thumbs: { 3484 autoStart: true, 3485 }, 3486 backFocus: false, 3487 onActivate: function (instance) { 3488 InitFancyboxThumbnailsGallery(instance); 3489 }, 3490 beforeShow: function (instance, current) { 3491 if ($('.fancybox-thumbs .swiper').length) { 3492 const swiper = $('.fancybox-thumbs .swiper').data('swiper'); 3493 3494 swiper.slideTo(current.index); 3495 } 3496 var $video_block = $('.company-block .video')[0]; 3497 if ($video_block && !$video_block.nextElementSibling) { 3498 $videoContent = $video_block.content.cloneNode(true); 3499 $source = $videoContent.querySelector('.video-block'); 3500 $source.setAttribute('src', $source.dataset['src']); 3501 $video_block.parentNode.insertBefore($videoContent, $video_block.nextSibling); 3502 } 3503 var video_block_frame = $('.company-block #company_video_iframe'); 3504 if (video_block_frame.length) { 3505 var data_src_iframe = video_block_frame.attr('data-src'); 3506 video_block_frame.attr('src', data_src_iframe); 3507 video_block_frame.attr('allow', 'autoplay'); 3508 } 3509 }, 3510 afterShow: function () { 3511 if ($('.fancybox-overlay').css('opacity') == 0) { 3512 setTimeout(function () { 3513 $('.fancybox-overlay').css('opacity', 1); 3514 $('html').addClass('overflow_html'); 3515 }, 200); 3516 } 3517 3518 $('.fancybox-nav').css('opacity', 0); 3519 setTimeout(function () { 3520 $('.fancybox-nav').css('opacity', 1); 3521 }, 150); 3522 if ($('.fancybox-inner #company_video').length) { 3523 // var fancyHeight = $('.fancybox-wrap').height(); 3524 // $('.fancybox-inner').height(fancyHeight); 3525 setTimeout(function () { 3526 $('.fancybox-wrap video').resize(); 3527 setTimeout(function () { 3528 $('.fancybox-wrap').addClass('show_video'); 3529 document.getElementById('company_video').currentTime = 0; 3530 document.getElementById('company_video').play(); 3531 }, 300); 3532 }, 150); 3533 } else if ($('.fancybox-wrap iframe').length) { 3534 $('.fancybox-inner').height('100%'); 3535 } 3536 }, 3537 beforeClose: function () { 3538 $('.fancybox-overlay').fadeOut(); 3539 if ($('#company_video').length) { 3540 document.getElementById('company_video').currentTime = 0; 3541 } 3542 $('html').removeClass('overflow_html'); 3543 var video_block_frame = $('.company-block .video-block'); 3544 if (video_block_frame.length) { 3545 $('#company_video_iframe').attr('src', ''); 3546 } 3547 }, 3548 onClosed: function () { 3549 if ($('.fancybox-wrap #company_video').length) { 3550 document.getElementById('company_video').pause(); 3551 } 3552 }, 3553 }); 3554}; 3555 3556InitFancyBoxVideo = function () { 3557 if (typeof $.fn.fancybox !== 'function') { 3558 return; 3559 } 3560 3561 if (!$('.video_link').length) { 3562 return; 3563 } 3564 $('.video_link').fancybox({ 3565 type: 'iframe', 3566 maxWidth: 800, 3567 maxHeight: 600, 3568 fitToView: false, 3569 width: '70%', 3570 height: '70%', 3571 autoSize: false, 3572 closeClick: false, 3573 opacity: true, 3574 tpl: { 3575 closeBtn: 3576 '<span title="' + 3577 BX.message('FANCY_CLOSE') + 3578 '" class="fancybox-item fancybox-close inline svg"><svg class="svg svg-close" width="14" height="14" viewBox="0 0 14 14"><path data-name="Rounded Rectangle 568 copy 16" d="M1009.4,953l5.32,5.315a0.987,0.987,0,0,1,0,1.4,1,1,0,0,1-1.41,0L1008,954.4l-5.32,5.315a0.991,0.991,0,0,1-1.4-1.4L1006.6,953l-5.32-5.315a0.991,0.991,0,0,1,1.4-1.4l5.32,5.315,5.31-5.315a1,1,0,0,1,1.41,0,0.987,0.987,0,0,1,0,1.4Z" transform="translate(-1001 -946)"></path></svg></span>', 3579 next: 3580 '<a title="' + 3581 BX.message('FANCY_NEXT') + 3582 '" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>', 3583 prev: 3584 '<a title="' + 3585 BX.message('FANCY_PREV') + 3586 '" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>', 3587 }, 3588 afterShow: function () { 3589 if ($('.fancybox-overlay').css('opacity') == 0) { 3590 setTimeout(function () { 3591 $('.fancybox-overlay').css('opacity', 1); 3592 $('html').addClass('overflow_html'); 3593 }, 200); 3594 } 3595 3596 $('.fancybox-nav').css('opacity', 0); 3597 setTimeout(function () { 3598 $('.fancybox-nav').css('opacity', 1); 3599 }, 150); 3600 if ($('.fancybox-wrap iframe').length) { 3601 $('.fancybox-inner').height('100%'); 3602 } 3603 }, 3604 beforeClose: function () { 3605 $('.fancybox-overlay').fadeOut(); 3606 $('html').removeClass('overflow_html'); 3607 }, 3608 }); 3609}; 3610 3611InitStickySideBar = function (el, container_el) { 3612 var block = '.sticky-sidebar',
3613 container_catalog = '.wraps .wrapper_inner .container_inner .main-catalog-wrapper', 3614 container = '.wraps .wrapper_inner .container_inner'; 3615 if (typeof el !== 'undefined') block = el; 3616 3617 if ($(container_catalog).length) container = container_catalog; 3618 3619 if (typeof container_el !== 'undefined') container = container_el; 3620 3621 if ($(block).length && arAsproOptions['THEME']['STICKY_SIDEBAR'] != 'N') { 3622 if (typeof window['stickySidebar'] !== 'undefined') { 3623 window['stickySidebar'].destroy(); 3624 } 3625 3626 window['stickySidebar'] = new StickySidebar(block, { 3627 topSpacing: 60, 3628 bottomSpacing: 20, 3629 containerSelector: container, 3630 resizeSensor: true, 3631 innerWrapperSelector: '.sticky-sidebar__inner', 3632 }); 3633 3634 if ($('.sticky-sidebar .sticky-sidebar__inner .banner img').length) { 3635 $('.sticky-sidebar .sticky-sidebar__inner .banner img')[0].onload = function () { 3636 if (typeof window['stickySidebar'] !== 'undefined') { 3637 window['stickySidebar'].updateSticky(); 3638 } 3639 }; 3640 } 3641 } 3642}; 3643 3644InitOwlSlider = function () { 3645 if (typeof $.fn.owlCarousel !== 'function') { 3646 return; 3647 } 3648 $('.owl-carousel:not(.owl-loaded):not(.appear-block)').each(function () { 3649 var slider = $(this); 3650 var options; 3651 var svg = 3652 '<svg xmlns="http://www.w3.org/2000/svg" width="12" height="6.969" viewBox="0 0 12 6.969"><path id="Rounded_Rectangle_702_copy_24" data-name="Rounded Rectangle 702 copy 24" class="cls-1" d="M361.691,401.707a1,1,0,0,1-1.414,0L356,397.416l-4.306,4.291a1,1,0,0,1-1.414,0,0.991,0.991,0,0,1,0-1.406l5.016-5a1.006,1.006,0,0,1,1.415,0l4.984,5A0.989,0.989,0,0,1,361.691,401.707Z" transform="translate(-350 -395.031)"/></svg>'; 3653 var defaults = { 3654 navText: [ 3655 '<i class="svg left colored_theme_hover_text">' + svg + '</i>', 3656 '<i class="svg right colored_theme_hover_text">' + svg + '</i>', 3657 ], 3658 }; 3659 var config = $.extend({}, defaults, options, slider.data('plugin-options')); 3660 3661 slider.on('initialized.owl.carousel', function (event) { 3662 var eventdata = { slider: event }; 3663 BX.onCustomEvent('onSliderInitialized', [eventdata]); 3664 3665 $(event.target).removeClass('loading-state'); 3666 $(event.target).find('.owl-item:first').addClass('current'); 3667 3668 if ($(event.target).hasClass('catalog_block')) { 3669 if (typeof sliceItemBlockSlide === 'function') { 3670 sliceItemBlockSlide(); 3671 } 3672 } 3673 3674 if (typeof window['stickySidebar'] !== 'undefined') { 3675 window['stickySidebar'].updateSticky(); 3676 } 3677 }); 3678 slider.owlCarousel(config); 3679 3680 slider.on('change.owl.carousel', function (event) { 3681 var eventdata = { slider: event }; 3682 BX.onCustomEvent('onSlideChange', [eventdata]); 3683 }); 3684 slider.on('resized.owl.carousel', function (event) { 3685 if (typeof sliceItemBlockSlide === 'function') { 3686 sliceItemBlockSlide({ resize: false }); 3687 } 3688 }); 3689 3690 slider.on('changed.owl.carousel', function (event) { 3691 var eventdata = { slider: event }; 3692 BX.onCustomEvent('onSlideChanged', [eventdata]); 3693 3694 if ($(event.target).data('pluginOptions')) { 3695 if ('index' in $(event.target).data('pluginOptions')) { 3696 if ($('.switch-item-block').length) { 3697 $('.switch-item-block__count-wrapper--big .switch-item-block__count-value').text( 3698 event.item.index + 1 + '/' + event.item.count 3699 ); 3700 } 3701 } 3702 3703 if ('relatedTo' in $(event.target).data('pluginOptions')) { 3704 var relatedClass = $(event.target).data('pluginOptions').relatedTo, 3705 relatedBlock = $(relatedClass); 3706 3707 if (relatedBlock.length && $(event.target).data('owl.carousel')) { 3708 if (!$(event.target).data('owl.carousel').loop) { 3709 var current = event.item.index; 3710 } else { 3711 var count = event.item.count - 1; 3712 var current = Math.round(event.item.index - event.item.count / 2 - 0.5); 3713 3714 if (current < 0) current = count; 3715 3716 if (current > count) current = 0; 3717 } 3718 3719 relatedBlock.find('.owl-item').removeClass('current').eq(current).addClass('current'); 3720 3721 var onscreen = relatedBlock.find('.owl-item.active').length - 1; 3722 var start = relatedBlock.find('.owl-item.active').first().index(); 3723 var end = relatedBlock.find('.owl-item.active').last().index(); 3724 3725 if (current > end) relatedBlock.data('owl.carousel').to(current, 100, true); 3726 3727 if (current < start) relatedBlock.data('owl.carousel').to(current - onscreen, 100, true); 3728 // $(".owl-slider-"+id).trigger('to.owl.carousel', [itemCarousel]) 3729 } 3730 } 3731 } 3732 }); 3733 3734 slider.on('translated.owl.carousel', function (event) { 3735 }); 3736 3737 if ('clickTo' in config) { 3738 var relatedClass = config.clickTo, 3739 magnifier = 'magnifier' in config; 3740 3741 slider.on('click', '.owl-item', function (e) { 3742 e.preventDefault(); 3743 var _this = $(this), 3744 number = _this.index(); 3745 3746 if (magnifier) { 3747 const $parent = $(relatedClass).closest('.product-container'); 3748 if ($parent.find('.zoom_picture').length) { 3749 const $zoomImg = $parent.find('.zoom_picture'); 3750 const $galleryImg = _this.find('.product-detail-gallery__item img'); 3751 3752 const bigImage = _this.find('.product-detail-gallery__item').data('big'), 3753 srcImage = $galleryImg.attr('src'); 3754 3755 $zoomImg.attr('data-large', bigImage || srcImage); 3756 $zoomImg.attr('xoriginal', bigImage || srcImage); 3757 $zoomImg.attr('src', bigImage || srcImage); 3758 $zoomImg.attr('data-xoriginalwidth', $galleryImg.attr('data-xoriginalwidth')); 3759 $zoomImg.attr('data-xoriginalheight', $galleryImg.attr('data-xoriginalheight')); 3760 $parent.find('.product-detail-gallery__link').attr('href', srcImage); 3761 } 3762 _this.siblings('').removeClass('current'); 3763 _this.addClass('current'); 3764 } else { 3765 $(relatedClass).data('owl.carousel').to(number, 300, true); 3766 } 3767 }); 3768 } 3769 }); 3770}; 3771 3772InitFlexSlider = function () { 3773 //todo need remove 3774}; 3775 3776inIframe = function () { 3777 try { 3778 return window.self !== window.top; 3779 } catch (e) { 3780 return true; 3781 } 3782}; 3783 3784InitZoomPict = function (el) { 3785 const zoomer = typeof el !== 'undefined' ? el : $('.zoom_picture'); 3786 3787 if (zoomer.length) { 3788 var options;
3789 const defaults = { 3790 title: true, 3791 scroll: false, 3792 Xoffset: 15, 3793 tint: '#333', 3794 defaultScale: -1, 3795 }; 3796 3797 const config = $.extend({}, defaults, options, zoomer.data('plugin-options')); 3798 zoomer.xzoom(config); 3799 3800 // checks if zoomer doesn't have the event listenners 3801 const zoomerEventsListeners = $._data(zoomer.get(0), 'events'); 3802 3803 if (!zoomerEventsListeners.mouseout && !zoomerEventsListeners.load) { 3804 zoomer.on('mouseleave', function () { 3805 zoomer.data('xzoom').movezoom; 3806 let mObjWidth = parseInt(zoomer.attr('data-xoriginalwidth')); 3807 let mObHeight = parseInt(zoomer.attr('data-xoriginalheight')); 3808 let imgObjWidth = zoomer.width(); 3809 let imgObjheight = zoomer.height(); 3810 if (mObjWidth === imgObjWidth && imgObjheight === mObHeight) { 3811 $('.xzoom-preview').addClass('hidden'); 3812 $('.xzoom-source > div').addClass('hidden'); 3813 } else { 3814 $('.xzoom-preview').removeClass('hidden'); 3815 $('.xzoom-source > div').removeClass('hidden'); 3816 } 3817 }); 3818 3819 zoomer.on('load', function () { 3820 const zoomerParentWidth = zoomer.parent().width(); 3821 const zoomerHeight = zoomer.height(); 3822 const zoomerWidth = zoomer.width(); 3823 const sizeMultiplier = 1.5; 3824 3825 const zoomWidth = 3826 zoomerWidth < zoomerParentWidth / 2 && zoomerHeight > zoomerWidth ? zoomerWidth * sizeMultiplier : 'auto'; 3827 3828 zoomer.data('xzoom').destroy(); 3829 zoomer.removeData('xzoom'); 3830 zoomer.width('auto'); 3831 3832 config.zoomWidth = zoomWidth; 3833 zoomer.xzoom(config); 3834 }); 3835 } 3836 } 3837}; 3838 3839var arBasketAsproCounters = (arStatusBasketAspro = arBasketPrices = {}); 3840SetActualBasketFlyCounters = function (sync) { 3841 if (arBasketAsproCounters.DEFAULT == true) { 3842 $.ajax({ 3843 url: arAsproOptions['SITE_DIR'] + 'ajax/basket_fly.php', 3844 type: 'post', 3845 success: function (html) { 3846 $('#basket_line .basket_fly').removeClass('loaded').html(html); 3847 3848 if (typeof sync !== 'undefined') { 3849 $.ajax({ 3850 type: 'GET', 3851 url: arAsproOptions['SITE_DIR'] + 'ajax/actualBasket.php', 3852 // data:data, 3853 success: function (data) { 3854 if (!$('.js_ajax').length) $('body').append('<div class="js_ajax"></div>'); 3855 $('.js_ajax').html(data); 3856 3857 setBasketStatusBtn(true); 3858 }, 3859 }); 3860 } 3861 }, 3862 }); 3863 } else { 3864 // insert currency ₽ by this hack!: $('<div/>').html(arBasketAsproCounters.READY.TITLE).text() 3865 $('.basket_fly .opener .basket_count .count') 3866 .attr('class', 'count' + (arBasketAsproCounters.READY.COUNT > 0 ? '' : ' empty_items')) 3867 .find('.items span') 3868 .text(arBasketAsproCounters.READY.COUNT); 3869 $('.basket_fly .opener .basket_count + a').attr('href', arBasketAsproCounters['READY']['HREF']); 3870 $('.basket_fly .opener .basket_count') 3871 .attr('title', $('<div/>').html(arBasketAsproCounters.READY.TITLE).text()) 3872 .attr( 3873 'class', 3874 'colored_theme_hover_text basket_count small clicked' + (arBasketAsproCounters.READY.COUNT > 0 ? '' : ' empty') 3875 ); 3876 3877 $('.basket_fly .opener .wish_count .count') 3878 .attr('class', 'count' + (arBasketAsproCounters.DELAY.COUNT > 0 ? '' : ' empty_items')) 3879 .find('.items span') 3880 .text(arBasketAsproCounters.DELAY.COUNT); 3881 $('.basket_fly .opener .wish_count + a').attr('href', arBasketAsproCounters.DELAY.HREF); 3882 $('.basket_fly .opener .wish_count') 3883 .attr('title', $('<div/>').html(arBasketAsproCounters.DELAY.TITLE).text()) 3884 .attr( 3885 'class', 3886 'colored_theme_hover_text wish_count small clicked' + (arBasketAsproCounters.DELAY.COUNT > 0 ? '' : ' empty') 3887 ); 3888 3889 $('.basket_fly .opener .compare_count .wraps_icon_block').attr( 3890 'class', 3891 'wraps_icon_block compare' + (arBasketAsproCounters.COMPARE.COUNT > 0 ? '' : ' empty_block') 3892 ); 3893 $('.basket_fly .opener .compare_count .count') 3894 .attr('class', 'count' + (arBasketAsproCounters.COMPARE.COUNT > 0 ? '' : ' empty_items')) 3895 .find('.items span') 3896 .text(arBasketAsproCounters.COMPARE.COUNT); 3897 $('.basket_fly .opener .compare_count + a').attr('href', arBasketAsproCounters.COMPARE.HREF); 3898 3899 updateBottomIconsPanel(arBasketAsproCounters); 3900 } 3901}; 3902 3903CheckHeaderFixed = function () { 3904 var header = $('header, body.simple_basket_mode #header').first(), 3905 header_fixed = $('#headerfixed, body.simple_basket_mode #header'), 3906 header_simple = $('body.simple_basket_mode #header'); 3907 3908 if (header_fixed.length) { 3909 if (header.length) { 3910 var isHeaderFixed = false, 3911 isTabsFixed = false, 3912 headerCanFix = true, 3913 headerFixedHeight = header_fixed.actual('outerHeight'), 3914 headerNormalHeight = header.actual('outerHeight'), 3915 headerDiffHeight = headerNormalHeight - headerFixedHeight, 3916 mobileBtnMenu = $('.btn.btn-responsive-nav'), 3917 headerTop = $('#panel:visible').actual('outerHeight'), 3918 topBlock = $('.TOP_HEADER').first(), 3919 $headerFixedNlo = header_fixed.find('[data-nlo]'), 3920 isNloLoaded = !$headerFixedNlo.length, 3921 OnHeaderFixedScrollHandler; 3922 3923 if (headerDiffHeight <= 0) headerDiffHeight = 0; 3924 3925 if (topBlock.length) headerTop += topBlock.actual('outerHeight'); 3926 3927 $(window).scroll( 3928 (OnHeaderFixedScrollHandler = function () { 3929 var tabs_fixed = $('.product-item-detail-tabs-container-fixed'); 3930 3931 if (window.matchMedia('(min-width:992px)').matches) { 3932 var scrollTop = documentScrollTopLast, 3933 current_is = $('.search-wrapper .search-input:visible'), 3934 tabs = $('.ordered-block .nav.nav-tabs'), 3935 headerCanFix = !mobileBtnMenu.is(':visible'); /* && !$('.dropdown-menu:visible').length*/ 3936 3937 if (!isHeaderFixed) { 3938 if (headerCanFix && scrollTop > headerNormalHeight + headerTop) { 3939 if (!isNloLoaded) { 3940 if (!$headerFixedNlo.hasClass('nlo-loadings')) { 3941 $headerFixedNlo.addClass('nlo-loadings'); 3942 setTimeout(function () { 3943 $.ajax({ 3944 data: { nlo: $headerFixedNlo.attr('data-nlo') }, 3945 success: function (response) { 3946 // stop ya metrika webvisor DOM indexer 3947 pauseYmObserver(); 3948 3949 isNloLoaded = true; 3950 $headerFixedNlo[0].insertAdjacentHTML('beforebegin', $.trim(response)); 3951 $headerFixedNlo.remove(); 3952 3953 InitMenuNavigationAim(); 3954 OnHeaderFixedScrollHandler(); 3955 3956 // resume ya metrika webvisor 3957 // (300ms transition) + (100ms scroll handler) 3958 setTimeout(resumeYmObserver, 400); 3959 }, 3960 error: function () { 3961 $headerFixedNlo.removeClass('nlo-loadings'); 3962 }, 3963 }); 3964 }, 300); 3965 } 3966 } else { 3967 isHeaderFixed = true; 3968 if (header_simple.length) { 3969 headerSimpleHeight = header_simple.actual('outerHeight'); 3970 header_simple.closest('.header_wrap').css({ 'margin-top': headerSimpleHeight }); 3971 } 3972 header_fixed.addClass('fixed'); 3973 3974 $('nav.mega-menu.sliced.initied').removeClass('initied'); 3975 CheckTopMenuDotted(); 3976 } 3977 } 3978 } 3979 if (isHeaderFixed || !headerCanFix) { 3980 if (!headerCanFix || scrollTop <= headerDiffHeight + headerTop) { 3981 isHeaderFixed = false;
3982 header_fixed.removeClass('fixed'); 3983 if (header_simple.length) { 3984 header_simple.closest('.header_wrap').css({ 'margin-top': '' }); 3985 } 3986 } 3987 } 3988 3989 //fixed tabs 3990 if (tabs_fixed.length && tabs.length) { 3991 var tabs_offset = $('.ordered-block .nav.nav-tabs').offset(); 3992 if (scrollTop + headerFixedHeight > tabs_offset.top) { 3993 tabs_fixed.css({ top: header_fixed.actual('outerHeight') }); 3994 tabs_fixed.addClass('fixed'); 3995 3996 header_fixed.addClass('tabs-fixed'); 3997 } else if (tabs_fixed.hasClass('fixed')) { 3998 tabs_fixed.removeAttr('style'); 3999 tabs_fixed.removeClass('fixed'); 4000 4001 header_fixed.removeClass('tabs-fixed'); 4002 } 4003 } 4004 } 4005 }) 4006 ); 4007 } 4008 } 4009 4010 //mobile fixed 4011 var headerSimple = $('body.simple_basket_mode .wrapper1.mfixed_Y #header'); 4012 var mfixed = headerSimple.length ? headerSimple : $('.wrapper1.mfixed_Y #mobileheader'); 4013 if (mfixed.length && isMobile) { 4014 var isMHeaderFixed = false, 4015 mheaderCanFix = true, 4016 mheaderFixedHeight = mfixed.actual('outerHeight'), 4017 // mheaderFixedHeight = 0, 4018 mheaderTop = $('#panel:visible').actual('outerHeight'), 4019 mHeaderScrollTop = $('.wrapper1').hasClass('mfixed_view_scroll_top'); 4020 $(window).scroll(function () { 4021 var scrollTop = documentScrollTopLast; 4022 if (window.matchMedia('(max-width:991px)').matches) { 4023 if (mHeaderScrollTop) { 4024 if (scrollTop > startScroll) { 4025 if (!$('#mobilePhone.show').length) { 4026 mfixed.removeClass('fixed'); 4027 if (headerSimple.length) { 4028 headerSimple.closest('.header_wrap').css({ 'margin-top': '' }); 4029 } 4030 } 4031 } else if (scrollTop > mheaderFixedHeight + mheaderTop) { 4032 mfixed.addClass('fixed'); 4033 if (headerSimple.length) { 4034 headerSimple.closest('.header_wrap').css({ 'margin-top': mheaderFixedHeight }); 4035 } 4036 } else if (scrollTop <= mheaderFixedHeight + mheaderTop) { 4037 mfixed.removeClass('fixed'); 4038 if (headerSimple.length) { 4039 headerSimple.closest('.header_wrap').css({ 'margin-top': '' }); 4040 } 4041 } 4042 startScroll = scrollTop; 4043 } else { 4044 if (!isMHeaderFixed) { 4045 if (scrollTop > mheaderFixedHeight + mheaderTop) { 4046 isMHeaderFixed = true; 4047 mfixed.addClass('fixed'); 4048 if (headerSimple.length) { 4049 headerSimple.closest('.header_wrap').css({ 'margin-top': mheaderFixedHeight }); 4050 } 4051 } 4052 } else if (isMHeaderFixed) { 4053 if (scrollTop <= mheaderFixedHeight + mheaderTop) { 4054 isMHeaderFixed = false; 4055 mfixed.removeClass('fixed'); 4056 if (headerSimple.length) { 4057 headerSimple.closest('.header_wrap').css({ 'margin-top': '' }); 4058 } 4059 } 4060 } 4061 } 4062 } else { 4063 mfixed.removeClass('fixed'); 4064 if (headerSimple.length) { 4065 headerSimple.closest('.header_wrap').css({ 'margin-top': '' }); 4066 } 4067 } 4068 }); 4069 } 4070}; 4071 4072CheckHeaderFixedMenu = function () { 4073 if ( 4074 arAsproOptions['THEME'] && 4075 arAsproOptions['THEME']['HEADER_FIXED'] == 2 && 4076 $('#headerfixed .js-nav').length && 4077 window.matchMedia('(min-width: 992px)').matches 4078 ) { 4079 $('#headerfixed .js-nav').css('width', '0'); 4080 var all_width = 0, 4081 cont_width = $('#headerfixed .maxwidth-theme').actual('width'), 4082 padding_menu = 4083 $('#headerfixed .logo-row.v2 .menu-block').actual('outerWidth') - 4084 $('#headerfixed .logo-row.v2 .menu-block').actual('width'); 4085 $('#headerfixed .logo-row.v2 > .inner-table-block').each(function () { 4086 if (!$(this).hasClass('menu-block')) all_width += $(this).actual('outerWidth'); 4087 }); 4088 $('#headerfixed .js-nav').width(cont_width - all_width - padding_menu); 4089 } 4090}; 4091 4092CheckSearchWidth = function () { 4093 if ($('.logo_and_menu-row .search_wrap').length) { 4094 var searchPosition = $('.logo_and_menu-row .search_wrap').position().left, 4095 maxWidth = $('.logo_and_menu-row .maxwidth-theme').width() - 2; 4096 width = 0; 4097 if ($('.logo_and_menu-row .subtop .search_wrap').length) { 4098 maxWidth = $('.logo_and_menu-row .subtop').width() - 2; 4099 $('.logo_and_menu-row .subtop > .row >div >div') 4100 .each(function () { 4101 if (!$(this).hasClass('search_wrap')) { 4102 var elementWidth = $(this).outerWidth(); 4103 if (!$(this).is(':visible') || !$(this).height()) elementWidth = 0; 4104 width = width ? width - elementWidth : maxWidth - elementWidth; 4105 } 4106 }) 4107 .promise() 4108 .done(function () { 4109 if ($('.logo_and_menu-row .search_wrap.wide_search').length) 4110 $('.logo_and_menu-row .search_wrap .search-block').outerWidth(width); 4111 else $('.logo_and_menu-row .search_wrap').outerWidth(width); 4112 $('.logo_and_menu-row .search_wrap').css({ opacity: 1, visibility: 'visible' }); 4113 }); 4114 } else {
4115 if ($('.logo_and_menu-row .subbottom .search_wrap').length) { 4116 maxWidth = $('.logo_and_menu-row .subbottom').width() - 2; 4117 $('.logo_and_menu-row .subbottom >div') 4118 .each(function () { 4119 if (!$(this).hasClass('search_wrap')) { 4120 var elementWidth = $(this).outerWidth(); 4121 if (!$(this).is(':visible') || !$(this).height()) elementWidth = 0; 4122 width = width ? width - elementWidth : maxWidth - elementWidth; 4123 } 4124 }) 4125 .promise() 4126 .done(function () { 4127 if ($('.logo_and_menu-row .search_wrap.wide_search').length) 4128 $('.logo_and_menu-row .search_wrap .search-block').outerWidth(width); 4129 else $('.logo_and_menu-row .search_wrap').outerWidth(width); 4130 $('.logo_and_menu-row .search_wrap').css({ opacity: 1, visibility: 'visible' }); 4131 }); 4132 } else { 4133 $('.logo_and_menu-row .maxwidth-theme > .row >div >div') 4134 .each(function () { 4135 if (!$(this).hasClass('search_wrap')) { 4136 var elementWidth = $(this).outerWidth(); 4137 if (!$(this).is(':visible') || !$(this).height()) elementWidth = 0; 4138 width = width ? width - elementWidth : maxWidth - elementWidth; 4139 } 4140 }) 4141 .promise() 4142 .done(function () { 4143 if ($('.logo_and_menu-row .search_wrap.wide_search').length) 4144 $('.logo_and_menu-row .search_wrap .search-block').outerWidth(width); 4145 else $('.logo_and_menu-row .search_wrap').outerWidth(width); 4146 $('.logo_and_menu-row .search_wrap').css({ opacity: 1, visibility: 'visible' }); 4147 }); 4148 } 4149 } 4150 } 4151}; 4152 4153if (!funcDefined('showItemStoresAmount')) { 4154 var showItemStoresAmount = function () { 4155 let blocks = $('.item-stock .status-amount--stores:not(.status-amount--loaded)'); 4156 if (blocks.length) { 4157 let stores = []; 4158 let ids = []; 4159 4160 for (let i = 0, cnt = blocks.length; i < cnt; ++i) { 4161 $(blocks[i]).addClass('status-amount--loaded'); 4162 4163 var data = $(blocks[i]).data('param-amount'); 4164 if (typeof data === 'object' && data) { 4165 ids.push(data.ID); 4166 stores = data.STORES; 4167 } 4168 } 4169 4170 if (ids) { 4171 let data = { 4172 ids: ids, 4173 stores: stores, 4174 }; 4175 4176 $.ajax({ 4177 url: arAsproOptions.SITE_DIR + 'ajax/amount.php', 4178 type: 'POST', 4179 data: data, 4180 dataType: 'json', 4181 success: function (result) { 4182 if (typeof result === 'object' && result && result.success && result.amount) { 4183 for (let i = 0, cnt = blocks.length; i < cnt; ++i) { 4184 var data = $(blocks[i]).data('param-amount'); 4185 if (typeof data === 'object' && data) { 4186 if (result.amount[data.ID]) { 4187 $(blocks[i]).html(result.amount[data.ID]); 4188 } 4189 4190 $(blocks[i]).addClass('status-amount--visible'); 4191 } 4192 } 4193 } 4194 }, 4195 }); 4196 } 4197 } 4198 }; 4199} 4200 4201lazyLoadPagenBlock = function () { 4202 setTimeout(function () { 4203 if ($('.with-load-block .ajax_load_btn:not(.appear-block)').length) { 4204 $('.with-load-block .ajax_load_btn:not(.appear-block)').iAppear( 4205 function () { 4206 var $this = $(this); 4207 $this.addClass('appear-block').trigger('click'); 4208 }, 4209 { rootMargin: '200px 0px 200px 0px', accX: 0, accY: 200 } 4210 ); 4211 } 4212 }, 200); 4213}; 4214 4215scrollPreviewBlock = function () { 4216 if (typeof $.cookie('scroll_block') != 'undefined' && $.cookie('scroll_block')) { 4217 var scroll_block = $($.cookie('scroll_block')); 4218 if (scroll_block.length) { 4219 let position = scroll_block.offset().top 4220 let $fixedHeader = null 4221 if ($fixedHeader = document.getElementById('headerfixed')) { 4222 position -= $fixedHeader.clientHeight 4223 } 4224 $('body, html').animate({ scrollTop: position }, 500); 4225 } 4226 $.cookie('scroll_block', null); 4227 } 4228}; 4229 4230scrollToBlock = function (block) { 4231 if ($(block).length) { 4232 var offset = $(block).offset().top; 4233 if (typeof $(block).data('toggle') != 'undefined') $(block).click(); 4234 4235 if (typeof $(block).data('offset') != 'undefined') offset += $(block).data('offset'); 4236 4237 $('body, html').animate({ scrollTop: offset }, 500); 4238 } 4239}; 4240 4241checkMenuLines = function () { 4242 if ($('.front_page .menu-row .left_border').length || $('.front_page .menu-row .right_border').length) { 4243 var positionMenu = $('.centered .menu-row .mega-menu table').length 4244 ? $('.centered .menu-row .mega-menu table').offset().left 4245 : 0, 4246 varFixLineWidth = 4247 $('body').hasClass('with_decorate') && window.matchMedia('(min-width: 1100px)').matches ? 126 : 7; 4248 4249 $('.menu-row .left_border, .menu-row .right_border').css('width', positionMenu - varFixLineWidth); 4250 } 4251}; 4252 4253SetFixedAskBlock = function () { 4254 if ($('.ask_a_question_wrapper').length) { 4255 var offset = $('.ask_a_question_wrapper').offset(), 4256 footer_offset = 0, 4257 block = $('.ask_a_question_wrapper').find('.ask_a_question'), 4258 block_offset = BX.pos(block[0]), 4259 block_height = block_offset.bottom - block_offset.top, 4260 diff_top_scroll = $('#headerfixed').height() + 20; 4261 4262 if ($('footer').length) footer_offset = $('footer').offset().top; 4263 4264 if ($('.banner.CONTENT_BOTTOM').length) footer_offset = $('.banner.CONTENT_BOTTOM').offset().top; 4265 4266 /* removed for ISSUE NEXT-414 4267 if(block_height+130 > block.closest('.fixed_wrapper').height()) 4268 block.addClass('nonfixed'); 4269 else 4270 block.removeClass('nonfixed'); 4271 */ 4272 4273 if (block_height + diff_top_scroll + documentScrollTopLast + 130 > footer_offset) { 4274 block.removeClass('fixed').css({ top: 'auto', width: 'auto', bottom: 0 }); 4275 block.parent().css('position', 'static'); 4276 block.parent().parent().css('position', 'static'); 4277 } else { 4278 block.parent().removeAttr('style'); 4279 block.parent().parent().removeAttr('style'); 4280 4281 if (documentScrollTopLast + diff_top_scroll > offset.top) { 4282 var fixed_width = $('.fixed_block_fix').width(); 4283 block.addClass('fixed').css({ top: diff_top_scroll, bottom: 'auto' }); 4284 if (fixed_width) block.css({ width: $('.fixed_block_fix').width() }); 4285 } else block.removeClass('fixed').css({ top: 0, width: 'auto' }); 4286 } 4287 } 4288}; 4289 4290MegaMenuFixed = function () { 4291 var animationTime = 150, 4292 $megaFixedNlo = $('.mega_fixed_menu').find('[data-nlo]'); 4293 4294 $('header .burger, #headerfixed .burger').on('click', function () { 4295 if ($megaFixedNlo.length) { 4296 if (!$megaFixedNlo.hasClass('nlo-loadings')) { 4297 $megaFixedNlo.addClass('nlo-loadings'); 4298 setTimeout(function () { 4299 $.ajax({ 4300 data: { nlo: $megaFixedNlo.attr('data-nlo') }, 4301 success: function (response) { 4302 $megaFixedNlo[0].insertAdjacentHTML('beforebegin', $.trim(response)); 4303 $megaFixedNlo.remove(); 4304 }, 4305 error: function () { 4306 $megaFixedNlo.removeClass('nlo-loadings'); 4307 }, 4308 }); 4309 }, 300); 4310 } 4311 } 4312 4313 $('.mega_fixed_menu').fadeIn(animationTime); 4314 }); 4315 4316 $('.mega_fixed_menu .svg.svg-close').on('click', function () { 4317 $(this).closest('.mega_fixed_menu').fadeOut(animationTime); 4318 //$('.header_wrap').toggleClass('zindexed'); 4319 }); 4320 4321 $('.mega_fixed_menu .dropdown-menu .arrow').on('click', function (e) { 4322 e.preventDefault(); 4323 e.stopPropagation(); 4324 $(this).closest('.dropdown-submenu').find('.dropdown-menu').slideToggle(animationTime); 4325 $(this).closest('.dropdown-submenu').addClass('opened'); 4326 }); 4327}; 4328 4329CheckPopupTop = function () { 4330}; 4331 4332AjaxClickLink = function (e) { 4333 var _this = '', 4334 container = $('.js-load-wrapper'), 4335 container_inner = $('.js-load-wrapper').find('.ajax_load'), 4336 dopAction = ''; 4337 url = ''; 4338 if ('preventDefault' in e) { 4339 e.preventDefault();
4340 _this = $(e.target).hasClass('js-load-link') ? $(e.target) : $(e.target).closest('.js-load-link'); 4341 } else { 4342 _this = $(e); 4343 dopAction = 'Y'; 4344 } 4345 4346 if (container.length) { 4347 var objUrl = parseUrlQuery(), 4348 obGetData = { ajax_get_filter: 'Y', control_ajax: 'Y' }; 4349 4350 obGetData.bitrix_include_areas = 'N'; 4351 4352 if ('clear_cache' in objUrl) { 4353 if (objUrl.clear_cache == 'Y') { 4354 obGetData.clear_cache = 'Y'; 4355 } 4356 } 4357 4358 if (container_inner.length) { 4359 container_inner.addClass('loading-state'); 4360 } else { 4361 container.addClass('loading-state'); 4362 } 4363 4364 if (_this.data('url')) { 4365 url = _this.data('url'); 4366 } 4367 4368 if (_this.data('click_block') && $(_this.data('click_block')).length) { 4369 if ($(_this.data('click_block')).data('url')) { 4370 url = $(_this.data('click_block')).data('url'); 4371 } 4372 } 4373 4374 if (dopAction) { 4375 BX.PopupWindowManager.getCurrentPopup().close(); 4376 $('.bx_filter_select_popup ul li .sort_btn').removeClass('current'); 4377 _this.addClass('current'); 4378 _this.closest('.bx_filter_block').find('.bx_filter_select_text').text(_this.text()); 4379 } 4380 4381 $('.bx_filter .bx_sort_filter .bx_filter_select_text').text(_this.text()); 4382 $('.bx_filter .bx_sort_filter .bx_filter_select_popup ul li span.current').removeClass('current'); 4383 $('.bx_filter .bx_sort_filter .bx_filter_select_popup ul li') 4384 .eq(_this.parent().index()) 4385 .find('span') 4386 .addClass('current'); 4387 4388 $.ajax({ 4389 url: url, 4390 data: obGetData, 4391 success: function (html) { 4392 container.html(html); 4393 4394 if (container_inner.length) container_inner.removeClass('loading-state'); 4395 else container.removeClass('loading-state'); 4396 4397 initAnimateLoad(); 4398 4399 var eventdata = { action: 'jsLoadBlock' }; 4400 BX.onCustomEvent('onCompleteAction', [eventdata, _this]); 4401 4402 BX.onCustomEvent('onHeaderProgressBarChange', [{}]); 4403 4404 initSelects(document); 4405 // InitCustomScrollBar(); 4406 // InitScrollBar(); 4407 4408 if (window.FilterHelper !== undefined) { 4409 FilterHelper.resultDiv = $('#filter-helper'); 4410 FilterHelper.show(); 4411 } 4412 }, 4413 }); 4414 } 4415}; 4416 4417initCalculatePreview = function (removeAppearAttr) { 4418 $('.calculate-delivery.with_preview:not(.inited)').each(function () { 4419 if (removeAppearAttr) { 4420 $(this).attr('data-i-appeared', ''); 4421 } 4422 var $this = $(this); 4423 var $calculateSpan = $this.find('span[data-event=jqm]'); 4424 var $preview = $this.find('.calculate-delivery-preview'); 4425 4426 4427 $this.addClass('inited'); 4428 $this.iAppear( 4429 function () { 4430 if ($calculateSpan.length) { 4431 if (typeof window['calculate-delivery-preview-index'] === 'undefined') { 4432 window['calculate-delivery-preview-index'] = 1001; 4433 } else { 4434 ++window['calculate-delivery-preview-index']; 4435 } 4436 4437 var productId = $calculateSpan.attr('data-param-product_id') * 1; 4438 var quantity = $calculateSpan.attr('data-param-quantity') * 1; 4439 4440 if (productId > 0) { 4441 var areaIndexSended = window['calculate-delivery-preview-index']; 4442 $calculateSpan.data({ areaIndex: areaIndexSended }); 4443 4444 $.ajax({ 4445 url: arAsproOptions['SITE_DIR'] + 'ajax/delivery.php', 4446 type: 'POST', 4447 data: { 4448 is_preview: 'Y', 4449 index: areaIndexSended, 4450 product_id: productId, 4451 quantity: quantity, 4452 }, 4453 beforeSend: function () { 4454 $this.addClass('loadings'); 4455 }, 4456 success: function (response) { 4457 var areaIndex = $calculateSpan.data('areaIndex'); 4458 if (typeof areaIndex !== 'undefined' && areaIndex == areaIndexSended) { 4459 $calculateSpan.hide(); 4460 $preview.html(response); 4461 if (!$preview.find('.catalog-delivery-preview').length) { 4462 $preview.empty(); 4463 $calculateSpan.show(); 4464 } 4465 } 4466 }, 4467 error: function (xhr, ajaxOptions, thrownError) { 4468 }, 4469 complete: function () { 4470 var areaIndex = $calculateSpan.data('areaIndex'); 4471 if (typeof areaIndex !== 'undefined' && areaIndex == areaIndexSended) { 4472 $this.removeClass('loadings'); 4473 } 4474 }, 4475 }); 4476 } 4477 } 4478 }, 4479 { accX: 0, accY: 0 } 4480 ); 4481 }); 4482}; 4483 4484/*set price item*/ 4485if (!funcDefined('setPriceItem')) { 4486 var setPriceItem = function setPriceItem( 4487 main_block, 4488 quantity, 4489 rewrite_price, 4490 check_quantity, 4491 is_sku, 4492 show_percent, 4493 percent 4494 ) { 4495 var old_quantity = main_block.find('.to-cart').attr('data-ratio'), 4496 value = 4497 typeof rewrite_price !== 'undefined' && rewrite_price 4498 ? rewrite_price 4499 : main_block.find('.to-cart').attr('data-value'), 4500 currency = main_block.find('.to-cart').attr('data-currency'), 4501 total_block = 4502 '<div class="total_summ" style="display:none;"><div>' +
4503 BX.message('TOTAL_SUMM_ITEM') + 4504 '<span></span></div></div>', 4505 price_block = main_block.find('.cost.prices'), 4506 use_percent = typeof show_percent !== 'undefined' && show_percent == 'Y', 4507 percent_number = typeof percent !== 'undefined' && percent, 4508 sku_checked = main_block.find('.has_offer_prop').length ? 'Y' : 'N', 4509 check = typeof check_quantity !== 'undefined' && check_quantity; 4510 4511 if (main_block.find('.counter_wrapp + .wrapp-one-click').length) { 4512 if (!main_block.find('.wrapp-one-click .total_summ').length && !is_sku) 4513 $(total_block).appendTo(main_block.find('.counter_wrapp + .wrapp-one-click')); 4514 } else if (main_block.find('.buy_block').length) { 4515 if (!main_block.find('.buy_block .total_summ').length && !is_sku) 4516 $(total_block).appendTo(main_block.find('.buy_block')); 4517 } else if (main_block.find('.counter_wrapp').length) { 4518 if (!main_block.find('.counter_wrapp .total_summ').length && !is_sku) 4519 $(total_block).appendTo(main_block.find('.counter_wrapp:first')); 4520 } 4521 if (main_block.find('.total_summ').length) { 4522 if (value && currency) { 4523 if ((1 == quantity && old_quantity == quantity) || (typeof is_sku !== 'undefined' && is_sku && !check)) { 4524 main_block.find('.total_summ').slideUp(50); 4525 } else { 4526 main_block.find('.total_summ span').html(BX.Currency.currencyFormat(value * quantity, currency, true)); 4527 if (main_block.find('.total_summ').is(':hidden') /* || sku_checked == 'Y'*/) 4528 main_block.find('.total_summ').slideDown(100); 4529 } 4530 } else { 4531 main_block.find('.total_summ').slideUp(100); 4532 } 4533 } 4534 }; 4535} 4536 4537if (!funcDefined('getCurrentPrice')) { 4538 var getCurrentPrice = function getCurrentPrice(price, currency, print_price) { 4539 var val = ''; 4540 var format_value = BX.Currency.currencyFormat(price, currency); 4541 if (print_price.indexOf(format_value) >= 0) { 4542 val = print_price.replace( 4543 format_value, 4544 '<span class="price_value">' + format_value + '</span><span class="price_currency">' 4545 ); 4546 val += '</span>'; 4547 } else { 4548 val = print_price; 4549 } 4550 4551 return val; 4552 }; 4553} 4554 4555if (!funcDefined('initAnimateLoad')) { 4556 var initAnimateLoad = function initAnimateLoad() { 4557 $('.animate-load').click(function () { 4558 if (!jQuery.browser.mobile) { 4559 $(this).parent().addClass('loadings'); 4560 } 4561 }); 4562 }; 4563} 4564 4565if (!funcDefined('showBasketShareBtn')) { 4566 var showBasketShareBtn = function () { 4567 if (arAsproOptions['THEME']['SHOW_SHARE_BASKET'] === 'Y') { 4568 if (!document.querySelector('.basket-checkout-block-btns')) { 4569 var checkout = document.querySelector('.basket-checkout-section-inner'); 4570 if (checkout) { 4571 var btns = BX.create({ 4572 tag: 'div', 4573 attrs: { 4574 class: 'basket-checkout-block basket-checkout-block-btns', 4575 }, 4576 html: '<div class="basket-checkout-block-btns-wrap"></div>', 4577 }); 4578 4579 BX.insertAfter(btns, BX.lastChild(checkout)); 4580 var btnsWrap = btns.querySelector('.basket-checkout-block-btns-wrap'); 4581 4582 var btnCheckout = checkout.querySelector('.basket-checkout-block-btn'); 4583 if (btnCheckout) { 4584 btnsWrap.appendChild(btnCheckout); 4585 } 4586 4587 var btnFastOrder = checkout.querySelector('.fastorder'); 4588 if (btnFastOrder) { 4589 btnsWrap.appendChild(btnFastOrder); 4590 } 4591 4592 if ($('.basket-btn-checkout').length && !$('.basket-btn-checkout').hasClass('disabled')) { 4593 var btnShareBasket = BX.create({ 4594 tag: 'div', 4595 attrs: { 4596 class: 'basket-checkout-block basket-checkout-block-share colored_theme_hover_bg-block', 4597 title: arAsproOptions['THEME']['EXPRESSION_FOR_SHARE_BASKET'], 4598 }, 4599 html: 4600 '<span class="animate-load" data-event="jqm" data-param-form_id="share_basket" data-name="share_basket"><i class="svg colored_theme_hover_bg-el-svg"><svg class="svg svg-share" xmlns="http://www.w3.org/2000/svg" width="14" height="16" viewBox="0 0 14 16"><path data-name="Ellipse 223 copy 8" d="M1613,203a2.967,2.967,0,0,1-1.86-.661l-3.22,2.01a2.689,2.689,0,0,1,0,1.3l3.22,2.01A2.961,2.961,0,0,1,1613,207a3,3,0,1,1-3,3,3.47,3.47,0,0,1,.07-0.651l-3.21-2.01a3,3,0,1,1,0-4.678l3.21-2.01A3.472,3.472,0,0,1,1610,200,3,3,0,1,1,1613,203Zm0,8a1,1,0,1,0-1-1A1,1,0,0,0,1613,211Zm-8-7a1,1,0,1,0,1,1A1,1,0,0,0,1605,204Zm8-5a1,1,0,1,0,1,1A1,1,0,0,0,1613,199Z" transform="translate(-1602 -197)" fill="#B8B8B8"></path></svg></i><span class="title">' + 4601 arAsproOptions['THEME']['EXPRESSION_FOR_SHARE_BASKET'] + 4602 '</span></span>', 4603 }); 4604 4605 btnsWrap.appendChild(btnShareBasket); 4606 initAnimateLoad(); 4607 } 4608 } 4609 } 4610 } 4611 }; 4612} 4613 4614if (!funcDefined('showBasketHeadingBtn')) { 4615 var showBasketHeadingBtn = function () { 4616 if (document.querySelector('.page-top h1')) { 4617 var topicHeading = document.querySelector('.page-top .topic .topic__heading'); 4618 if (topicHeading) { 4619 if (arAsproOptions['THEME']['SHOW_BASKET_PRINT'] === 'Y') { 4620 if (!document.querySelector('.btn_basket_heading--print')) { 4621 var btnPrintBasket = BX.create({ 4622 tag: 'div', 4623 attrs: { 4624 class: 'btn_basket_heading btn_basket_heading--print print-link colored_theme_hover_bg-block', 4625 title: arAsproOptions['THEME']['EXPRESSION_FOR_PRINT_PAGE'], 4626 }, 4627 html: '<i class="svg colored_theme_hover_bg-el-svg"><svg class="svg svg-print" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewB
4627ox="0 0 16 16"><path id="Rectangle_665_copy_4" data-name="Rectangle 665 copy 4" class="cls-print" d="M1570,210h-2v3h-8v-3h-2a2,2,0,0,1-2-2v-5a2,2,0,0,1,2-2h2v-4h8v4h2a2,2,0,0,1,2,2v5A2,2,0,0,1,1570,210Zm-8,1h4v-4h-4v4Zm4-12h-4v2h4v-2Zm4,4h-12v5h2v-3h8v3h2v-5Z" transform="translate(-1556 -197)"></path></svg></i>', 4628 }); 4629 BX.insertBefore(btnPrintBasket, topicHeading); 4630 } 4631 } 4632 4633 if ($('.basket-btn-checkout').length && !$('.basket-btn-checkout').hasClass('disabled')) { 4634 // if(arAsproOptions['THEME']['SHOW_SEND_BASKET_2EMAIL'] === 'Y'){ 4635 // if(!document.querySelector('.btn_basket_heading--send2email')){ 4636 // var btnSendBasket2Email = BX.create({ 4637 // tag: 'div', 4638 // attrs: { 4639 // class: 'btn_basket_heading btn_basket_heading--with_title btn_basket_heading--send2email colored_theme_hover_bg-block', 4640 // title: arAsproOptions['THEME']["EXPRESSION_FOR_SEND_BASKET_2EMAIL"], 4641 // }, 4642 // html: '<i class="svg colored_theme_hover_bg-el-svg"><svg class="svg" width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M3 0H4H12H13V1V3.125L15.06 4.4125C15.6448 4.77798 16 5.41892 16 6.1085V6.98162C16.0002 6.99325 16.0002 7.00488 16 7.01649V14C16 15.1046 15.1046 16 14 16H2C0.895429 16 -1.43918e-06 15.1046 -1.43918e-06 14V7.01644C-0.000202747 7.00486 -0.000203195 6.99327 -1.43918e-06 6.98167V6.1085C-1.43918e-06 5.41892 0.355238 4.77798 0.940001 4.4125L3 3.125V1V0ZM5 4.2335L5 2H11V7L11 8.23381L9.62943 9.05615L8.64018 8.23178C8.26934 7.92274 7.73066 7.92274 7.35981 8.23178L6.37057 9.05615L5 8.23381V4.2335ZM2 6.1085L3 5.4835V7.03381L2 6.43381V6.1085ZM14 6.1085L13 5.4835V7.03381L14 6.43381V6.1085ZM12.4379 14L8 10.3017L3.56205 14H12.4379ZM14 12.6983V8.76619L11.2567 10.4122L14 12.6983ZM2 8.76619V12.6983L4.74333 10.4122L2 8.76619Z" fill="#B8B8B8"/></svg></i><span class="title">' + arAsproOptions['THEME']["EXPRESSION_FOR_SEND_BASKET_2EMAIL"] + '</span>', 4643 // }); 4644 // BX.insertBefore(btnSendBasket2Email, topicHeading); 4645 // } 4646 // } 4647 4648 if (arAsproOptions['THEME']['SHOW_DOWNLOAD_BASKET'] === 'Y') { 4649 if (!document.querySelector('.btn_basket_heading--download')) { 4650 var btnDownloadBasket = BX.create({ 4651 tag: 'div', 4652 attrs: { 4653 class: 4654 'btn_basket_heading btn_basket_heading--with_title btn_basket_heading--download colored_theme_hover_bg-block', 4655 title: arAsproOptions['THEME']['EXPRESSION_FOR_DOWNLOAD_BASKET'], 4656 }, 4657 events: { 4658 click: BX.proxy(function (e) { 4659 if (!e) { 4660 e = window.event; 4661 } 4662 4663 BX.PreventDefault(e); 4664 4665 var button = e.target.closest('.btn_basket_heading'); 4666 if (button) { 4667 if (BX.hasClass(button, 'loadings')) { 4668 return; 4669 } 4670 4671 BX.addClass(button, 'loadings'); 4672 setTimeout(function () { 4673 BX.removeClass(button, 'loadings'); 4674 }, 2000); 4675 } 4676 4677 location.href = 4678 '/ajax/download_basket.php?params[type]=' + 4679 arAsproOptions['THEME']['BASKET_FILE_DOWNLOAD_TEMPLATE']; 4680 }, this), 4681 }, 4682 html: 4683 '<i class="svg colored_theme_hover_bg-el-svg"><svg class="svg" width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M5 14H14L14 6H11H10V5V2H5V6H7H9V8V10V12H7H5V14ZM13.6716 4L12 2.32843V4H13.6716ZM6 8H7V10H6H5H3H2V8H3H5H6ZM3 6H2H0V8V10V12H2H3V14V16H5H14H16V14V4.32843C16 3.79799 15.7893 3.28929 15.4142 2.91421L13.0858 0.585786C12.7107 0.210714 12.202 0 11.6716 0H5H3V2V6Z" fill="#B8B8B8"/></svg></i><span class="title">' + 4684 arAsproOptions['THEME']['EXPRESSION_FOR_DOWNLOAD_BASKET'] + 4685 '</span>', 4686 }); 4687 BX.insertBefore(btnDownloadBasket, topicHeading); 4688 } 4689 } 4690 } else { 4691 BX.remove(document.querySelector('.btn_basket_heading--send2email')); 4692 BX.remove(document.querySelector('.btn_basket_heading--download')); 4693 } 4694 4695 var eventdata = { parent: topicHeading }; 4696 BX.onCustomEvent('onShowBasketHeadingBtn', [eventdata]); 4697 } 4698 } 4699 }; 4700} 4701 4702$(window).on('load', function () { 4703 //check width for menu and search 4704 //CheckSearchWidth(); 4705}); 4706 4707$(document).ready(function () { 4708 MegaMenuFixed(); 4709 // InitScrollBar(); 4710 4711 /*ripple effect for buttons*/ 4712 $.ripple('.btn', { 4713 debug: false, // Turn Ripple.js logging on/off 4714 on: 'mouseenter', // The event to trigger a ripple effect 4715 4716 opacity: 0.4, // The opacity of the ripple 4717 color: 'auto', // Set the background color. If set to "auto", it will use the text color 4718 multi: true, // Allow multiple ripples per element 4719 4720 duration: 0.6, // The duration of the ripple 4721 4722 easing: 'linear', // The CSS3 easing function of the ripple 4723 }); 4724 /**/ 4725 4726 //ecommerce order 4727 if (arAsproOptions['PAGES']['ORDER_PAGE']) { 4728 var arUrl = parseUrlQuery(); 4729 if ('ORDER_ID' in arUrl) { 4730 var _id = arUrl['ORDER_ID']; 4731 if (arAsproOptions['COUNTERS']['USE_FULLORDER_GOALS'] !== 'N') { 4732 var eventdata = { goal: 'goal_order_success', result: _id }; 4733 BX.onCustomEvent('onCounterGoals', [eventdata]); 4734 } 4735 if (checkCounters()) { 4736 if (typeof localStorage !== 'undefined') { 4737 var val = localStorage.getItem('gtm_e_' + _id), 4738 d = ''; 4739 try { 4740 d = JSON.parse(val); 4741 } catch (e) { 4742 d = val; 4743 } 4744 if (typeof d === 'object') { 4745 window.dataLayer = window.dataLayer || []; 4746 dataLayer.push({ 4747 event: arAsproOptions['COUNTERS']['GOOGLE_EVENTS']['PURCHASE'], 4748 ecommerce: d 4749 }); 4750 } 4751 4752 if (typeof localStorage !== 'undefined') { 4753 localStorage.removeItem('gtm_e_' + _id); 4754 } 4755 } 4756 } 4757 } 4758 } 4759 var bSafary = false;
4760 if (typeof jQuery.browser == 'object') bSafary = jQuery.browser.safari; 4761 else if (typeof browser == 'object') bSafary = browser.safari; 4762 if (!bSafary) { 4763 CheckTopMenuDotted(); 4764 CheckHeaderFixed(); 4765 checkMenuLines(); 4766 } else { 4767 setTimeout(function () { 4768 $(window).resize(); // need to check resize flexslider & menu 4769 setTimeout(function () { 4770 CheckTopMenuDotted(); 4771 CheckHeaderFixed(); 4772 checkMenuLines(); 4773 4774 setTimeout(function () { 4775 $(window).scroll(); 4776 }, 50); 4777 }, 50); 4778 }, 350); 4779 } 4780 4781 showItemStoresAmount(); 4782 4783 if (arAsproOptions['THEME']['USE_DEBUG_GOALS'] === 'Y') $.cookie('_ym_debug', 1, { path: '/' }); 4784 else $.cookie('_ym_debug', null, { path: '/' }); 4785 4786 /* change type2 menu for fixed */ 4787 if ($('#headerfixed .js-nav').length) { 4788 setTimeout(function () { 4789 $('#headerfixed .js-nav').addClass('opacity1'); 4790 }, 350); 4791 } 4792 4793 // -- scroll after apply option 4794 if ($('.instagram_ajax').length) { 4795 BX.addCustomEvent('onCompleteAction', function (eventdata) { 4796 if (eventdata.action === 'instagrammLoaded') scrollPreviewBlock(); 4797 }); 4798 } else scrollPreviewBlock(); 4799 4800 scrollToTop(); 4801 checkVerticalMobileFilter(); 4802 4803 $('[data-scroll-block]').click(function () { 4804 var _this = $(this); 4805 if (_this.data('scrollBlock')) { 4806 var target = $(_this.data('scrollBlock')); 4807 if (target.length) { 4808 scroll_block(target); 4809 } 4810 } 4811 }); 4812 4813 $.extend($.validator.messages, { 4814 required: BX.message('JS_REQUIRED'), 4815 email: BX.message('JS_FORMAT'), 4816 equalTo: BX.message('JS_PASSWORD_COPY'), 4817 minlength: BX.message('JS_PASSWORD_LENGTH'), 4818 remote: BX.message('JS_ERROR'), 4819 }); 4820 4821 $.validator.addMethod( 4822 'regexp', 4823 function (value, element, regexp) { 4824 var re = new RegExp(regexp); 4825 return this.optional(element) || re.test(value); 4826 }, 4827 BX.message('JS_FORMAT') 4828 ); 4829 4830 $.validator.addMethod( 4831 'filesize', 4832 function (value, element, param) { 4833 return this.optional(element) || element.files[0].size <= param; 4834 }, 4835 BX.message('JS_FILE_SIZE') 4836 ); 4837 4838 $.validator.addMethod( 4839 'date', 4840 function (value, element, param) { 4841 var status = false; 4842 if (!value || value.length <= 0) { 4843 status = false; 4844 } else { 4845 // html5 date allways yyyy-mm-dd 4846 var re = new RegExp('^([0-9]{4})(.)([0-9]{2})(.)([0-9]{2})$'); 4847 var matches = re.exec(value); 4848 if (matches) { 4849 var composedDate = new Date(matches[1], matches[3] - 1, matches[5]); 4850 status = 4851 composedDate.getMonth() == matches[3] - 1 && 4852 composedDate.getDate() == matches[5] && 4853 composedDate.getFullYear() == matches[1]; 4854 } else { 4855 // firefox 4856 var re = new RegExp('^([0-9]{2})(.)([0-9]{2})(.)([0-9]{4})$'); 4857 var matches = re.exec(value); 4858 if (matches) { 4859 var composedDate = new Date(matches[5], matches[3] - 1, matches[1]); 4860 status = 4861 composedDate.getMonth() == matches[3] - 1 && 4862 composedDate.getDate() == matches[1] && 4863 composedDate.getFullYear() == matches[5]; 4864 } 4865 } 4866 } 4867 return status; 4868 }, 4869 BX.message('JS_DATE') 4870 ); 4871 4872 $.validator.addMethod( 4873 'extension', 4874 function (value, element, param) { 4875 param = typeof param === 'string' ? param.replace(/,/g, '|') : 'png|jpe?g|gif'; 4876 return this.optional(element) || value.match(new RegExp('.(' + param + ')$', 'i')); 4877 }, 4878 BX.message('JS_FILE_EXT') 4879 ); 4880 4881 $.validator.addMethod( 4882 'captcha', 4883 function (value, element, params) { 4884 return $.validator.methods.remote.call(this, value, element, { 4885 url: arAsproOptions['SITE_DIR'] + 'ajax/check-captcha.php', 4886 type: 'post', 4887 data: { 4888 captcha_word: value, 4889 captcha_sid: function () { 4890 return $(element).closest('form').find('input[name="captcha_sid"]').val(); 4891 }, 4892 }, 4893 }); 4894 }, 4895 BX.message('JS_ERROR') 4896 ); 4897 4898 $.validator.addMethod( 4899 'recaptcha', 4900 function (value, element, param) { 4901 var id = $(element).closest('form').find('.g-recaptcha').attr('data-widgetid'); 4902 if (typeof id !== 'undefined') { 4903 return grecaptcha.getResponse(id) != ''; 4904 } else { 4905 return true; 4906 } 4907 }, 4908 BX.message('JS_RECAPTCHA_ERROR') 4909 ); 4910 4911 $.validator.addClassRules({ 4912 /*phone: { 4913 regexp: arAsproOptions["THEME"]["VALIDATE_PHONE_MASK"], 4914 },*/ 4915 confirm_password: { 4916 equalTo: 'input[name="REGISTER[PASSWORD]"]', 4917 minlength: 6, 4918 }, 4919 password: { 4920 minlength: 6, 4921 }, 4922 inputfile: { 4923 extension: arAsproOptions['THEME']['VALIDATE_FILE_EXT'], 4924 filesize: 5000000, 4925 }, 4926 captcha: { 4927 captcha: '', 4928 }, 4929 recaptcha: { 4930 recaptcha: '', 4931 }, 4932 }); 4933 4934 // init calculate delivery with preview 4935 initCalculatePreview(); 4936 4937 /*city*/ 4938 $('select.region').on('change', function () { 4939 var val = parseInt($(this).val()); 4940 if ($('select.city').length) { 4941 if (val) { 4942 $('select.city option').hide(); 4943 $('select.city option').prop('disabled', 'disabled'); 4944 $('select.city option[data-parent_section=' + val + ']').prop('disabled', ''); 4945 $('select.city option:eq(0)').prop('disabled', ''); 4946 $('select.city').ikSelect('reset'); 4947 $('select.city option[data-parent_section=' + val + ']').show(); 4948 } else $('select.city option').prop('disabled', 'disabled'); 4949 $('select.city option:eq(0)').prop('disabled', ''); 4950 $('select.city').ikSelect('reset'); 4951 } 4952 }); 4953 4954 $('select.city, select.region').on('change', function () { 4955 var _this = $(this), 4956 val = parseInt(_this.val()); 4957 if (_this.hasClass('region')) { 4958 $('select.city option:eq(0)').show(); 4959 $('select.city').val(0); 4960 } 4961 4962 if ((_this.hasClass('region') && !val) || _this.hasClass('city')) { 4963 $.ajax({ 4964 type: 'POST', 4965 data: { ID: val }, 4966 success: function (html) { 4967 var ob = BX.processHTML(html); 4968 $('.ajax_items')[0].innerHTML = ob.HTML; 4969 BX.ajax.processScripts(ob.SCRIPT); 4970 }, 4971 }); 4972 } 4973 }); 4974 4975 $(document).on('mouseenter', '.section-gallery-wrapper .section-gallery-wrapper__item', function () { 4976 $(this).siblings().removeClass('_active'); 4977 $(this).addClass('_active'); 4978 }); 4979 4980 $(document).on('mouseleave', '.image_wrapper_block', function () { 4981 const $elements = $(this).find('.section-gallery-wrapper .section-gallery-wrapper__item'); 4982 if ($elements.length) { 4983 $elements.removeClass('_active'); 4984 $($elements[0]).addClass('_active'); 4985 } 4986 }); 4987 4988 $(document).on('click', '.hint .icon', function (e) {
4989 var tooltipWrapp = $(this).closest('.hint'); 4990 4991 if (tooltipWrapp.hasClass('active')) { 4992 tooltipWrapp.removeClass('active').find('.tooltip').slideUp(200); 4993 } else { 4994 tooltipWrapp.addClass('active'); 4995 tooltipWrapp.find('.tooltip').slideDown(200); 4996 tooltipWrapp.find('.tooltip_close').click(function (e) { 4997 e.stopPropagation(); 4998 tooltipWrapp.removeClass('active').find('.tooltip').slideUp(100); 4999 }); 5000 } 5001 e.stopPropagation(); 5002 }); 5003 5004 $(document).on('click', '.mobile_regions .mobile-city a', function (e) { 5005 e.preventDefault(); 5006 5007 let $this = $(this); 5008 let regionId = $this.data('id'); 5009 5010 if (regionId) { 5011 $.cookie('current_region', regionId, { 5012 path: '/', 5013 domain: arAsproOptions['SITE_ADDRESS'], 5014 }); 5015 5016 let locationId = $this.data('locid'); 5017 if (locationId) { 5018 $.cookie('current_location', locationId, { 5019 path: '/', 5020 domain: arAsproOptions['SITE_ADDRESS'], 5021 }); 5022 } else { 5023 $.cookie('current_location', '', { 5024 expires: -1, 5025 path: '/', 5026 domain: arAsproOptions['SITE_ADDRESS'], 5027 }); 5028 } 5029 5030 let href = $this.attr('href'); 5031 location.href = href; 5032 } 5033 }); 5034 5035 /* toggle */ 5036 var $this = this, 5037 previewParClosedHeight = 25; 5038 5039 $('section.toggle > label').prepend($('<i />').addClass('fa fa-plus')); 5040 $('section.toggle > label').prepend($('<i />').addClass('fa fa-minus')); 5041 $('section.toggle.active > p').addClass('preview-active'); 5042 $('section.toggle.active > div.toggle-content').slideDown(350, function () { 5043 }); 5044 5045 $('section.toggle > label').click(function (e) { 5046 var parentSection = $(this).parent(), 5047 parentWrapper = $(this).parents('div.toogle'), 5048 previewPar = false, 5049 isAccordion = parentWrapper.hasClass('toogle-accordion'); 5050 5051 if (isAccordion && typeof e.originalEvent != 'undefined') { 5052 parentWrapper.find('section.toggle.active > label').trigger('click'); 5053 } 5054 5055 parentSection.toggleClass('active'); 5056 5057 // Preview Paragraph 5058 if (parentSection.find('> p').get(0)) { 5059 previewPar = parentSection.find('> p'); 5060 var previewParCurrentHeight = previewPar.css('height'); 5061 previewPar.css('height', 'auto'); 5062 var previewParAnimateHeight = previewPar.css('height'); 5063 previewPar.css('height', previewParCurrentHeight); 5064 } 5065 5066 // Content 5067 var toggleContent = parentSection.find('> div.toggle-content'); 5068 5069 if (parentSection.hasClass('active')) { 5070 $(previewPar).animate( 5071 { 5072 height: previewParAnimateHeight, 5073 }, 5074 350, 5075 function () { 5076 $(this).addClass('preview-active'); 5077 } 5078 ); 5079 toggleContent.slideDown(350, function () { 5080 }); 5081 } else { 5082 $(previewPar).animate( 5083 { 5084 height: previewParClosedHeight, 5085 }, 5086 350, 5087 function () { 5088 $(this).removeClass('preview-active'); 5089 } 5090 ); 5091 toggleContent.slideUp(350, function () { 5092 }); 5093 } 5094 }); 5095 5096 if (typeof $.fn.footable == 'function') { 5097 $('.tables-responsive .responsive').footable(); //responsive table 5098 } 5099 5100 $('a[rel=tooltip]').tooltip(); 5101 $('span[data-toggle=tooltip]').tooltip(); 5102 5103 $('.toggle .more_items').on('click', function () { 5104 $(this).closest('.toggle').find('.collapsed').css('display', 'inline-block').removeClass('collapsed'); 5105 $(this).remove(); 5106 if (typeof $(this).data('resize') !== 'undefined' && $(this).data('resize')) $(window).resize(); 5107 }); 5108 $('.toggle_menu .more_items').on('click', function () { 5109 $(this).closest('.toggle_menu').find('.collapsed').addClass('clicked_exp'); 5110 $(this).remove(); 5111 }); 5112 5113 /* search sync */ 5114 $(document).on('keyup', '.search-input-div input', function (e) { 5115 var inputValue = $(this).val(); 5116 $('.search-input-div input:not(:focus').val(inputValue); 5117 5118 if ($(this).closest('#headerfixed').length) { 5119 if (e.keyCode == 13) $('.search form').submit(); 5120 } 5121 }); 5122 $(document).on('click', '.search-button-div button', function (e) { 5123 if ($(this).closest('#headerfixed').length) $('.search form').submit(); 5124 }); 5125 5126 $('.inline-search-show, .inline-search-hide').on('click', function (e) { 5127 CloseMobilePhone(); 5128 // if(window.matchMedia('(min-width: 600px)').matches) 5129 // { 5130 if (typeof $(this).data('type_search') != 'undefined' && $(this).data('type_search') == 'fixed') 5131 $('.inline-search-block').addClass('fixed'); 5132 5133 if (arAsproOptions['THEME']['TYPE_SEARCH'] == 'fixed') { 5134 /*setTimeout(function(){ 5135 $('.inline-search-block.fixed.big .search-input').focus(); 5136 }, 200);*/ 5137 $('.inline-search-block.fixed.big .search-input').focus(); 5138 } 5139 if (arAsproOptions['THEME']['TYPE_SEARCH'] != 'fixed') { 5140 $('#title-search-input').focus(); 5141 } 5142 5143 $('.inline-search-block').toggleClass('show'); 5144 if ($('.top-block').length) { 5145 if ($('.inline-search-block').hasClass('show')) 5146 $('.inline-search-block').css('background', $('.top-block').css('background-color')); 5147 else $('.inline-search-block').css('background', '#fff'); 5148 } 5149 if (arAsproOptions['THEME']['TYPE_SEARCH'] == 'fixed') {
5150 if ($('.inline-search-block').hasClass('show')) $('<div class="jqmOverlay search"></div>').appendTo('body'); 5151 else { 5152 $('#title-search-input').blur(); 5153 $('.jqmOverlay').detach(); 5154 } 5155 } 5156 // } 5157 // else 5158 // location.href = arAsproOptions['PAGES']['CATALOG_PAGE_URL']+'?q'; 5159 }); 5160 5161 /* close search block */ 5162 $('html, body').on('mousedown', function (e) { 5163 if (typeof e.target.className == 'string' && e.target.className.indexOf('adm') < 0) { 5164 e.stopPropagation(); 5165 5166 var search_target = $(e.target).closest('.title-search-result'); 5167 if ( 5168 !$(e.target).closest('inline-search-block').length && 5169 !$(e.target).closest('.dropdown-select.searchtype').length && 5170 !$(e.target).hasClass('svg') && 5171 !search_target.length 5172 ) { 5173 $('.inline-search-block').removeClass('show'); 5174 $('.title-search-result').hide(); 5175 if (arAsproOptions['THEME']['TYPE_SEARCH'] == 'fixed') $('.jqmOverlay.search').detach(); 5176 } 5177 5178 if ($('#mobilePhone').length) { 5179 CloseMobilePhone(); 5180 } 5181 5182 if ($('#basket_line .basket_fly').length && parseInt($('#basket_line .basket_fly').css('right')) >= 0) { 5183 if (!$(e.target).closest('.basket_wrapp').length) { 5184 $('#basket_line .basket_fly') 5185 .stop() 5186 .animate({ right: -$('#basket_line .basket_fly').outerWidth() }, 150); 5187 $('#basket_line .basket_fly .opener > div').removeClass('cur'); 5188 $('#basket_line .basket_fly').removeClass('swiped'); 5189 } 5190 } 5191 5192 if (isMobile) { 5193 if (search_target.length) location.href = search_target.attr('href'); 5194 } 5195 5196 if (!$(e.target).closest('.js-info-block').length && !$(e.target).closest('.js-show-info-block').length) { 5197 $('.js-show-info-block').removeClass('opened'); 5198 $('.js-info-block').fadeOut(); 5199 } 5200 5201 if (!$(e.target).closest('.hint.active').length) { 5202 $('.hint.active .icon').trigger('click'); 5203 } 5204 5205 var class_name = $(e.target).attr('class'); 5206 if (typeof class_name == 'undefined' || class_name.indexOf('tooltip') < 0) 5207 //tooltip link 5208 $('.tooltip-link').tooltip('hide'); 5209 } 5210 }); 5211 $('.inline-search-block') 5212 .find('*') 5213 .on('mousedown', function (e) { 5214 e.stopPropagation(); 5215 }); 5216 5217 initAnimateLoad(); 5218 5219 /*check all opt table items*/ 5220 $(document).on('change', 'input#select_all_items', function () { 5221 var _this = $(this); 5222 var notOfferCount = 0; 5223 var bComplect = _this.closest('.complect_main_wrap').length; 5224 if (bComplect) { 5225 notOfferCount = _this 5226 .closest('.complect_main_wrap') 5227 .find('.catalog-block-view__item .counter_wrapp:not(.ce_cmp_visible) .button_block .to-cart').length; 5228 } else { 5229 notOfferCount = $( 5230 '.table-view__item:not([data-product_type=3]), .table-view-offer-tree .table-view__item[data-product_type=3] .counter_wrapp:not(.ce_cmp_visible)' 5231 ).find('.button_block .to-cart').length; 5232 } 5233 var wishCount = $( 5234 '.table-view__item:not([data-product_type=3]), .table-view-offer-tree .table-view__item[data-product_type=3]' 5235 ).find('.item-icons .wish_item_button .wish_item.to').length; 5236 var allGoodsCount = $('.table-view__item').length; 5237 5238 if (_this.is(':checked')) { 5239 //buy && wish 5240 if (notOfferCount != 0) { 5241 $('.opt_action:not([data-action=compare])').removeClass('no-action'); 5242 } 5243 5244 //compare 5245 $('.opt_action[data-action=compare]').removeClass('no-action'); 5246 5247 $('.opt_action').addClass('animate-load'); 5248 $('.opt_action .text').remove(); 5249 5250 //buy 5251 $('<div class="text">(<span>' + notOfferCount + '</span>)</div>').appendTo($('.opt_action[data-action=buy]')); 5252 5253 //wish 5254 $('<div class="text muted">(<span>' + wishCount + '</span>)</div>').appendTo($('.opt_action[data-action=wish]')); 5255 5256 //compare 5257 $('<div class="text muted">(<span>' + allGoodsCount + '</span>)</div>').appendTo( 5258 $('.opt_action[data-action=compare]') 5259 ); 5260 5261 $('input[name="chec_item"]').prop('checked', 'checked'); 5262 } else { 5263 $('.opt_action').addClass('no-action'); 5264 $('.opt_action').removeClass('animate-load'); 5265 $('.opt_action .text').remove(); 5266 5267 $('input[name="chec_item"]').removeAttr('checked'); 5268 } 5269 5270 if (_this.closest('.complect_header_block').length && typeof setNewPriceComplect === 'function') { 5271 setNewPriceComplect(); 5272 } 5273 }); 5274 5275 /*check opt table item*/ 5276 $(document).on('change', 'input[name=\'chec_item\']', function () { 5277 var _this = $(this); 5278 5279 var canBuy = 5280 _this.closest('.table-view__item').find('.button_block .to-cart').length || 5281 _this.closest('.catalog-block-view__item').find('.button_block .to-cart').length; 5282 var isOffer = _this.closest('.main_item_wrapper').attr('data-product_type') == '3' && !canBuy; 5283 5284 if (_this.is(':checked')) { 5285 $('.opt_action').each(function () { 5286 var _this = $(this); 5287 5288 var isBuyAction = _this.attr('data-action') == 'buy'; 5289 var isWishAction = _this.attr('data-action') == 'wish'; 5290 5291 if (isOffer && (isBuyAction || isWishAction)) { 5292 return true; 5293 } 5294 5295 if (isBuyAction && !canBuy) { 5296 return true; 5297 } 5298 5299 if (_this.find('.text').length) { 5300 var count = parseInt(_this.find('.text span').text()); 5301 _this.find('.text span').text(++count); 5302 } else { 5303 _this.removeClass('no-action'); 5304 _this.addClass('animate-load'); 5305 $('<div class="text muted">(<span>1</span>)</div>').appendTo(_this); 5306 } 5307 }); 5308 } else { 5309 $('.opt_action').each(function () { 5310 var _this = $(this); 5311 5312 var isBuyAction = _this.attr('data-action') == 'buy'; 5313 var isWishAction = _this.attr('data-action') == 'wish'; 5314 5315 if (isOffer && (isBuyAction || isWishAction)) { 5316 return true; 5317 } 5318 5319 if (isBuyAction && !canBuy) { 5320 return true; 5321 } 5322 5323 if (_this.find('.text').length) { 5324 var count = parseInt(_this.find('.text span').text()); 5325 --count; 5326 _this.find('.text span').text(count); 5327 5328 if (!count) { 5329 _this.addClass('no-action'); 5330 _this.removeClass('animate-load'); 5331 _this.find('.text').remove(); 5332 } 5333 } 5334 }); 5335 } 5336 }); 5337 5338 /*buy|wish|compare opt table items*/ 5339 $(document).on('click', '.opt_action', function () { 5340 var _this = $(this), 5341 action = _this.data('action'), 5342 itemsAll = [], 5343 basketParams = { 5344 type: 'multiple', 5345 iblock_id: _this.data('iblock_id'), 5346 action: action, 5347 items: {}, 5348 }; 5349 5350 if (!_this.hasClass('no-action')) { 5351 $('.opt_action').addClass('no-action'); 5352 _this.removeClass('no-action'); 5353 5354 $('.table-view__item, .catalog-block-view__item').each(function () { 5355 var _this = $(this); 5356 var canBuy = _this.find('.button_block .to-cart').length; 5357 var add = _this.find('input[name="chec_item"]').is(':checked') && (canBuy || action != 'buy'); 5358 var addOffer = _this.data('product_type') == '3' && _this.find('.button_block .to-cart').length; 5359 if (add) { 5360 var itemId = addOffer ? _this.find('.button_block .to-cart').data('item') : _this.data('id'); 5361 itemsAll.push(_this[0]); 5362 basketParams['items'][itemId] = {}; 5363 basketParams['items'][itemId]['id'] = itemId; 5364 basketParams['items'][itemId]['product_type'] = _this.data('product_type'); 5365 basketParams['items'][itemId]['quantity'] = _this.find('input[name="quantity"]').val(); 5366 if (addOffer) { 5367 basketParams['items'][itemId]['add_offer'] = 'Y'; 5368 } 5369 } 5370 }); 5371 $.ajax({ 5372 type: 'POST', 5373 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 5374 data: basketParams, 5375 dataType: 'json', 5376 success: function (data) { 5377 if ('STATUS' in data) { 5378 if (data.STATUS !== 'OK') { 5379 showBasketError(BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT); 5380 } 5381 5382 //js notice
5383 if (typeof JNoticeSurface !== 'undefined') { 5384 switch (action) { 5385 case 'buy': 5386 JNoticeSurface.get().onAdd2cart(itemsAll); 5387 break; 5388 case 'wish': 5389 JNoticeSurface.get().onAdd2Delay(itemsAll); 5390 break; 5391 case 'compare': 5392 JNoticeSurface.get().onAdd2Compare(itemsAll); 5393 break; 5394 default: 5395 console.log('nothing'); 5396 } 5397 } 5398 // 5399 5400 if ($('.header-cart.fly').length) { 5401 arBasketAsproCounters.DEFAULT = true; 5402 SetActualBasketFlyCounters(true); 5403 } else { 5404 if ($('#ajax_basket').length) { 5405 reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'N', '', true); 5406 } else { 5407 reloadBasketCounters('', true); 5408 } 5409 } 5410 } 5411 _this.parent().removeClass('loadings'); 5412 $('.opt_action').removeClass('no-action'); 5413 }, 5414 }); 5415 } 5416 }); 5417 5418 /*check complect item*/ 5419 if ($('#product-complect-block')) { 5420 let priceChecked = 0; 5421 5422 $('.catalog-block-view__item').each(function () { 5423 var _this = $(this); 5424 var checked = _this.find('input[name="chec_item_complect"]').is(':checked'); 5425 if (checked) { 5426 priceChecked += parseInt(_this.find('input[name="chec_item_complect"]').data('product_price')) * parseInt(_this.find('input[name="chec_item_complect"]').data('min_quantity')); 5427 5428 if ($('.opt_action_complect')) { 5429 var optActionComplectBtn = $('.opt_action_complect'); 5430 var someOptActionComplectBtn = $('.some_opt_action_complect'); 5431 5432 if (optActionComplectBtn.find('.text').length) { 5433 var count = parseInt(optActionComplectBtn.find('.text span').text()); 5434 optActionComplectBtn.find('.text span').text(count + _this.find('input[name="chec_item_complect"]').data('min_quantity')); 5435 } else { 5436 var count = _this.find('input[name="chec_item_complect"]').data('min_quantity'); 5437 optActionComplectBtn.removeClass('no-action'); 5438 optActionComplectBtn.addClass('animate-load'); 5439 $('<div class="text">(<span>' + count + '</span>)</div>').appendTo(optActionComplectBtn); 5440 5441 if (someOptActionComplectBtn) { 5442 someOptActionComplectBtn.removeClass('no-action'); 5443 } 5444 } 5445 } 5446 } 5447 }); 5448 5449 $('.complect-action-block .prices_block .price_value').text(priceChecked.toLocaleString()); 5450 } 5451 5452 /*change check complect item*/ 5453 $(document).on('change', 'input[name="chec_item_complect"]', function () { 5454 var _this = $(this); 5455 var optActionComplectBtn = $('.opt_action_complect'); 5456 var someOptActionComplectBtn = $('.some_opt_action_complect'); 5457 let priceChecked = parseInt(String($('.complect-action-block .prices_block .price_value').text()).replace(/\s+/g, '')); 5458 5459 if (optActionComplectBtn) { 5460 if (_this.is(':checked')) { 5461 priceChecked += parseInt(_this.data('product_price')) * parseInt(_this.data('min_quantity')); 5462 5463 if (optActionComplectBtn.find('.text').length) { 5464 var count = parseInt(optActionComplectBtn.find('.text span').text()); 5465 optActionComplectBtn.find('.text span').text(count + _this.data('min_quantity')); 5466 } else { 5467 var count = _this.data('min_quantity'); 5468 optActionComplectBtn.removeClass('no-action'); 5469 optActionComplectBtn.addClass('animate-load'); 5470 $('<div class="text">(<span>' + count + '</span>)</div>').appendTo(optActionComplectBtn); 5471 5472 if (someOptActionComplectBtn) { 5473 someOptActionComplectBtn.removeClass('no-action'); 5474 } 5475 } 5476 } else { 5477 priceChecked -= parseInt(_this.data('product_price')) * parseInt(_this.data('min_quantity')); 5478 5479 if (optActionComplectBtn.find('.text').length) { 5480 var count = parseInt(optActionComplectBtn.find('.text span').text()); 5481 optActionComplectBtn.find('.text span').text(count - _this.data('min_quantity')); 5482 5483 if ((count - _this.data('min_quantity')) <= 0) { 5484 optActionComplectBtn.addClass('no-action'); 5485 optActionComplectBtn.removeClass('animate-load'); 5486 optActionComplectBtn.find('.text').remove(); 5487 5488 if (someOptActionComplectBtn) { 5489 someOptActionComplectBtn.addClass('no-action'); 5490 } 5491 } 5492 } 5493 } 5494 } 5495 5496 $('.complect-action-block .prices_block .price_value').text(priceChecked.toLocaleStr
5496ing()); 5497 }); 5498 5499 /*buy complect items*/ 5500 $(document).on('click', '.opt_action_complect', function () { 5501 var _this = $(this), 5502 action = _this.data('action'), 5503 itemsAll = [], 5504 basketParams = { 5505 iblock_id: _this.data('iblock_id'), 5506 type: 'multiple', 5507 action: action, 5508 items: {}, 5509 }; 5510 5511 if (!_this.hasClass('no-action')) { 5512 const wait = BX.showWait(document.querySelector('.complect-button-block')); 5513 document.querySelector('.complect-button-block').classList.add('_wait'); 5514 $('.opt_action_complect').addClass('no-action'); 5515 _this.removeClass('no-action'); 5516 5517 $('.catalog-block-view__item').each(function () { 5518 var _this = $(this); 5519 var add = _this.find('input[name="chec_item_complect"]').is(':checked'); 5520 if (add) { 5521 var itemId = _this.find('input[name="chec_item_complect"]').data('id'); 5522 itemsAll.push(_this[0]); 5523 basketParams['items'][itemId] = {}; 5524 basketParams['items'][itemId]['id'] = itemId; 5525 basketParams['items'][itemId]['product_type'] = _this.find('input[name="chec_item_complect"]').data('product_type'); 5526 basketParams['items'][itemId]['quantity'] = _this.find('input[name="chec_item_complect"]').data('min_quantity'); 5527 } 5528 }); 5529 5530 $.ajax({ 5531 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 5532 type: 'POST', 5533 data: basketParams, 5534 dataType: 'json', 5535 success: function (data) { 5536 if ('STATUS' in data) { 5537 if (data.STATUS !== 'OK') { 5538 showBasketError(BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT); 5539 } 5540 5541 //js notice 5542 if (typeof JNoticeSurface !== 'undefined') { 5543 switch (action) { 5544 case 'buy': 5545 JNoticeSurface.get().onAdd2cart(itemsAll); 5546 break; 5547 default: 5548 console.log('nothing'); 5549 } 5550 } 5551 // 5552 5553 if ($('.header-cart.fly').length) { 5554 arBasketAsproCounters.DEFAULT = true; 5555 SetActualBasketFlyCounters(true); 5556 } else { 5557 if ($('#ajax_basket').length) { 5558 reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'N', '', true); 5559 } else { 5560 reloadBasketCounters('', true); 5561 } 5562 } 5563 } 5564 _this.parent().removeClass('loadings'); 5565 $('.opt_action_complect').removeClass('no-action'); 5566 document.querySelector('.complect-button-block').classList.remove('_wait'); 5567 BX.closeWait(document.querySelector('.complect-button-block'), wait); 5568 }, 5569 }); 5570 } 5571 }); 5572 5573 /*buy opt complect items*/ 5574 $(document).on('click', '.some_opt_action_complect', function () { 5575 var _this = $(this), 5576 action = _this.data('action'), 5577 itemsAll = [], 5578 basketParams = { 5579 iblock_id: _this.data('iblock_id'), 5580 type: 'multiple', 5581 action: action, 5582 complect: 'Y', 5583 complect_id: _this.data('complect_id'), 5584 complect_count: 1, 5585 items: {}, 5586 }; 5587 5588 if (!_this.hasClass('no-action')) { 5589 const wait = BX.showWait(document.querySelector('.complect-button-block')); 5590 document.querySelector('.complect-button-block').classList.add('_wait'); 5591 $('.some_opt_action_complect').addClass('no-action'); 5592 _this.removeClass('no-action'); 5593 5594 $('.catalog-block-view__item').each(function () { 5595 var _this = $(this); 5596 var add = _this.find('input[name="chec_item_complect"]').is(':checked'); 5597 if (add) { 5598 var itemId = _this.find('input[name="chec_item_complect"]').data('id'); 5599 itemsAll.push(_this[0]); 5600 basketParams['items'][itemId] = {}; 5601 basketParams['items'][itemId]['id'] = itemId; 5602 basketParams['items'][itemId]['product_type'] = _this.find('input[name="chec_item_complect"]').data('product_type'); 5603 basketParams['items'][itemId]['quantity'] = _this.find('input[name="chec_item_complect"]').data('min_quantity'); 5604 } 5605 }); 5606 5607 $.ajax({ 5608 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 5609 type: 'POST', 5610 data: basketParams, 5611 dataType: 'json', 5612 success: function (data) { 5613 if ('STATUS' in data) { 5614 if (data.STATUS !== 'OK') { 5615 showBasketError(BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT); 5616 } 5617 5618 //js notice 5619 if (typeof JNoticeSurface !== 'undefined') { 5620 switch (action) { 5621 case 'buy': 5622 JNoticeSurface.get().onAdd2cart(itemsAll); 5623 break; 5624 default: 5625 console.log('nothing'); 5626 } 5627 } 5628 // 5629 5630 if ($('.header-cart.fly').length) { 5631 arBasketAsproCounters.DEFAULT = true; 5632 SetActualBasketFlyCounters(true); 5633 } else { 5634 if ($('#ajax_basket').length) { 5635 reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'N', '', true); 5636 } else { 5637 reloadBasketCounters('', true); 5638 } 5639 } 5640 5641 if (data.STATUS === 'OK') { 5642 document.querySelector('.complect-button-block input[name=complect-counter]').value = 1; 5643 $('.some_opt_action_complect').addClass('_no-active'); 5644 $('.complect-button-block .counter-block').removeClass('_no-active'); 5645 } 5646 } 5647 5648 _this.parent().removeClass('loadings'); 5649 $('.some_opt_action_complect').removeClass('no-action'); 5650 document.querySelector('.complect-button-block').classList.remove('_wait'); 5651 BX.closeWait(document.querySelector('.complect-button-block'), wait); 5652 }, 5653 }); 5654 } 5655 }); 5656 5657 if ($('.complect-button-block')) { 5658 $(document).on('click', '.complect-button-block .counter-block .minus', function () { 5659 let inputCounter = document.querySelector('.complect-button-block input[name=complect-counter]'); 5660 var _this = $(this), 5661 action = _this.data('action'), 5662 basketParams = { 5663 iblock_id: _this.data('iblock_id'), 5664 type: 'multiple', 5665 action: action, 5666 complect: 'Y', 5667 complect_id: _this.data('complect_id'), 5668 complect_count: parseInt(inputCounter.value) 5669 }; 5670 5671 const wait = BX.showWait(document.querySelector('.complect-button-block')); 5672 document.querySelector('.complect-button-block').classList.add('_wait'); 5673 5674 $.ajax({ 5675 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 5676 type: 'POST', 5677 data: basketParams, 5678 dataType: 'json', 5679 success: function (data) { 5680 if ('STATUS' in data) { 5681 if (data.STATUS !== 'OK') { 5682 showBasketError(BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT); 5683 } 5684 5685 if (data.STATUS === 'OK') { 5686 if ($('.header-cart.fly').length) { 5687 arBasketAsproCounters.DEFAULT = true; 5688 SetActualBasketFlyCounters(true); 5689 } else { 5690 if ($('#ajax_basket').length) { 5691 reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'N', '', true); 5692 } else { 5693 reloadBasketCounters('', true); 5694 } 5695 } 5696 5697 inputCounter.value = parseInt(inputCounter.value) - 1; 5698 5699 if (parseInt(inputCounter.value) <= 0) { 5700 $('.complect-button-block .counter-block').addClass('_no-active'); 5701 $('.some_opt_action_complect').removeClass('_no-active'); 5702 } 5703 } 5704 } 5705 5706 document.querySelector('.complect-button-block').classList.remove('_wait'); 5707 BX.closeWait(document.querySelector('.complect-button-block'), wait); 5708 }, 5709 }); 5710 }); 5711 5712 $(document).on('click', '.complect-button-block .counter-block .plus', function () { 5713 let inputCounter = document.querySelector('.complect-button-block input[name=complect-counter]'); 5714 var _this = $(this), 5715 action = _this.data('action'), 5716 itemsAll = [], 5717 basketParams = { 5718 iblock_id: _this.data('iblock_id'), 5719 type: 'multiple', 5720 action: action, 5721 complect: 'Y', 5722 complect_id: _this.data('complect_id'), 5723 complect_count: parseInt(inputCounter.value) + 1, 5724 items: {}, 5725 }; 5726 5727 const wait = BX.showWait(document.querySelector('.complect-button-block')); 5728 document.querySelector('.complect-button-block').classList.add('_wait'); 5729 5730 $('.catalog-block-view__item').each(function () { 5731 var _this = $(this); 5732 var add = _this.find('input[name="chec_item_complect"]').is(':checked'); 5733 if (add) { 5734 var itemId = _this.find('input[name="chec_item_complect"]').data('id'); 5735 itemsAll.push(_this[0]); 5736 basketParams['items'][itemId] = {}; 5737 basketParams['items'][itemId]['id'] = itemId; 5738 basketParams['items'][itemId]['product_type'] = _this.find('input[name="chec_item_complect"]').data('product_type'); 5739 basketParams['items'][itemId]['quantity'] = _this.find('input[name="chec_item_complect"]').data('min_quantity'); 5740 } 5741 }); 5742 5743 $.ajax({ 5744 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 5745 type: 'POST', 5746 data: basketParams, 5747 dataType: 'json', 5748 success: function (data) { 5749 if ('STATUS' in data) { 5750 if (data.STATUS !== 'OK') { 5751 showBasketError(BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT); 5752 } 5753 5754 if (data.STATUS === 'OK') { 5755 if ($('.header-cart.fly').length) { 5756 arBasketAsproCounters.DEFAULT = true; 5757 SetActualBasketFlyCounters(true); 5758 } else { 5759 if ($('#ajax_basket').length) { 5760 reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'N', '', true); 5761 } else { 5762 reloadBasketCounters('', true); 5763 } 5764 } 5765 5766 inputCounter.value = parseInt(inputCounter.value) + 1; 5767 } 5768 } 5769 5770 document.querySelector('.complect-button-block').classList.remove('_wait'); 5771 BX.closeWait(document.querySelector('.complect-button-block'), wait); 5772 }, 5773 }); 5774 }); 5775 } 5776 5777 //fix opt checked for back in browser 5778 setTimeout(function () { 5779 if ($('.with-opt-buy input[name="chec_item"], .with-opt-buy input[name="select_all_items"]').length) { 5780 $('.with-opt-buy input[name="chec_item"], .with-opt-buy input[name="select_all_items"]').prop('checked', false); 5781 } 5782 }, 1); 5783 5784 /*check mobile device*/ 5785 $(document).on('click', '*[data-event="jqm"]', function (e) { 5786 e.preventDefault(); 5787 e.stopPropagation(); 5788 5789 var _this = $(this); 5790 var name = _this.data('name'); 5791 if (previewMode && ((name.length && name == 'auth') || window.matchMedia('(max-width:400px)').matches)) { 5792 var script = arAsproOptions['SITE_DIR'] + 'form/'; 5793 var paramsStr = ''; 5794 var arTriggerAttrs = {}; 5795 $.each(_this.get(0).attributes, function (index, attr) { 5796 var attrName = attr.nodeName; 5797 var attrValue = _this.attr(attrName); 5798 arTriggerAttrs[attrName] = attrValue;
5799 if (/^data\-param\-(.+)$/.test(attrName)) { 5800 var key = attrName.match(/^data\-param\-(.+)$/)[1]; 5801 paramsStr += key + '=' + attrValue + '&'; 5802 } 5803 }); 5804 5805 var triggerAttrs = JSON.stringify(arTriggerAttrs); 5806 var encTriggerAttrs = encodeURIComponent(triggerAttrs); 5807 script += '?name=' + name + '&' + paramsStr + 'data-trigger=' + encTriggerAttrs; 5808 5809 if (_this.attr('href') !== undefined) { 5810 script = _this.attr('href'); 5811 } 5812 5813 location.href = script; 5814 } else { 5815 if (!$(this).hasClass('clicked')) { 5816 $(this).addClass('clicked'); 5817 $(this).jqmEx(); 5818 // $(this).trigger("click"); 5819 } 5820 } 5821 5822 return false; 5823 }); 5824 // } 5825 5826 BX.addCustomEvent('onCompleteAction', function (eventdata, _this) { 5827 try { 5828 if (eventdata.action === 'loadForm') { 5829 $(_this).parent().removeClass('loadings'); 5830 $(_this).removeClass('clicked'); 5831 5832 if ($(_this).hasClass('one_click_buy_trigger')) { 5833 $('.wrapp_one_click > span').removeClass('clicked'); 5834 $('.one_click').removeClass('clicked'); 5835 } else if ($(_this).hasClass('one_click_buy_basket_trigger')) { 5836 $('.fast_order').removeClass('clicked'); 5837 } 5838 } else if (eventdata.action === 'loadBasket') { 5839 $('.basket-link.basket').attr('title', $('<div/>').html(arBasketPrices.BASKET_SUMM_TITLE).text()); 5840 $('.basket-link.delay').attr('title', $('<div/>').html(arBasketPrices.DELAY_SUMM_TITLE).text()); 5841 5842 if (arBasketPrices.BASKET_COUNT > 0) { 5843 $('.basket-link.basket').addClass('basket-count'); 5844 $('.basket-link.basket .count').removeClass('empted'); 5845 if ($('.basket-link.basket .prices').length) 5846 $('.basket-link.basket .prices').html(arBasketPrices.BASKET_SUMM); 5847 } else { 5848 $('.basket-link.basket').removeClass('basket-count'); 5849 $('.basket-link.basket .count').addClass('empted'); 5850 if ($('.basket-link.basket .prices').length) 5851 $('.basket-link.basket .prices').html(arBasketPrices.BASKET_SUMM_TITLE_SMALL); 5852 } 5853 $('.basket-link.basket .count').text(arBasketPrices.BASKET_COUNT); 5854 if (arBasketPrices.DELAY_COUNT > 0) { 5855 $('.basket-link.delay').addClass('basket-count'); 5856 $('.basket-link.delay .count').removeClass('empted'); 5857 $('.basket-link.delay[data-href]').attr('href', $('.basket-link.delay[data-href]').data('href')); 5858 } else { 5859 $('.basket-link.delay').removeClass('basket-count'); 5860 $('.basket-link.delay .count').addClass('empted'); 5861 $('.basket-link.delay[data-href]').attr('href', 'javascript:void(0)'); 5862 } 5863 $('.basket-link.delay .count').text(arBasketPrices.DELAY_COUNT); 5864 5865 updateBottomIconsPanel(arBasketPrices); 5866 } else if (eventdata.action === 'loadActualBasketCompare') { 5867 var compare_count = Object.keys(arBasketAspro.COMPARE).length; 5868 if (compare_count > 0) { 5869 $('.basket-link.compare').addClass('basket-count'); 5870 $('.basket-link.compare .count').removeClass('empted'); 5871 if ($('#compare_fly').length) $('#compare_fly').removeClass('empty_block'); 5872 } else { 5873 $('.basket-link.compare').removeClass('basket-count'); 5874 $('.basket-link.compare .count').addClass('empted'); 5875 if ($('#compare_fly').length) $('#compare_fly').addClass('empty_block'); 5876 } 5877 $('.basket-link.compare .count').text(compare_count); 5878 5879 updateBottomIconsPanel(arBasketAspro); 5880 } else if (eventdata.action === 'loadRSS') { 5881 } else if (eventdata.action === 'ajaxContentLoaded') { 5882 } else if (eventdata.action === 'jsLoadBlock') { 5883 // initCountdown(); 5884 setStatusButton(); 5885 setTimeout(function () { 5886 InitOwlSlider(); 5887 }, 200); 5888 if (typeof initSwiperSlider === 'function') { 5889 initSwiperSlider(); 5890 } 5891 InitFancyBox(); 5892 5893 checkLinkedArticles(); 5894 checkLinkedBlocks('.linked-banners-list'); 5895 lazyLoadPagenBlock(); 5896 5897 if (typeof window['stickySidebar'] !== 'undefined') { 5898 window['stickySidebar'].updateSticky(); 5899 } 5900 } 5901 } catch (e) { 5902 console.error(e); 5903 } 5904 }); 5905 5906 /*slices*/ 5907 if ($('.banners-small .item.normal-block').length) $('.banners-small .item.normal-block').sliceHeight(); 5908 if ($('.teasers .item').length) $('.teasers .item').sliceHeight(); 5909 if ($('.wrap-portfolio-front .row.items > div').length) 5910 $('.wrap-portfolio-front .row.items > div').sliceHeight({ row: '.row.items', item: '.item1' }); 5911 5912 /* bug fix in ff*/ 5913 $('img').removeAttr('draggable'); 5914 5915 $('.title-tab-heading').on('click', function () { 5916 var container = $(this).parent(), 5917 slide_block = $(this).next(), 5918 bReviewTab = container.hasClass('media_review'); 5919 5920 clicked_tab = container.index() + 1; 5921 5922 container.siblings().removeClass('active'); 5923 5924 $('.nav.nav-tabs li').removeClass('active'); 5925 5926 if (container.hasClass('active')) { 5927 if (bReviewTab) { 5928 $('#reviews_content').slideUp(200, function () { 5929 container.removeClass('active'); 5930 }); 5931 } else {
5932 slide_block.slideUp(200, function () { 5933 container.removeClass('active'); 5934 }); 5935 } 5936 } else { 5937 container.addClass('active'); 5938 if (bReviewTab) { 5939 $('#reviews_content').slideDown(); 5940 } else { 5941 if ($('.tabs_section + #reviews_content').length) $('.tabs_section + #reviews_content').slideUp(); 5942 slide_block.slideDown(); 5943 if (typeof container.attr('id') !== 'undefined' && container.attr('id') == 'descr') { 5944 var $gallery = $('.galerys-block'); 5945 if ($gallery.length) { 5946 var bTypeBig = $gallery.find('.big_slider').length; 5947 var $slider = bTypeBig ? $gallery.find('.big_slider') : $gallery.find('.small_slider'); 5948 var interval = setInterval(function () { 5949 if ($slider.find('.slides .item').attr('style').indexOf('height') === -1) { 5950 $(window).resize(); 5951 } else { 5952 clearInterval(interval); 5953 } 5954 }, 100); 5955 } 5956 } 5957 } 5958 } 5959 }); 5960 5961 InitOwlSlider(); 5962 InitStickySideBar(); 5963 InitFancyBox(); 5964 InitFancyBoxVideo(); 5965 5966 /* setTimeout(function () { 5967 InitTopestMenuGummi(); 5968 isOnceInited = true; 5969 $(".menu.topest").closest(".dotted-flex-1").addClass("dotted-complete"); 5970 }, 100);*/ 5971 5972 InitZoomPict(); 5973 5974 $(document).on('click', '.captcha_reload', function (e) { 5975 var captcha = $(this).parents('.captcha-row'); 5976 e.preventDefault(); 5977 $.ajax({ 5978 url: arAsproOptions['SITE_DIR'] + 'ajax/captcha.php', 5979 success: function (text) { 5980 captcha.find('input[name=captcha_sid],input[name=captcha_code]').val(text); 5981 captcha.find('img').attr('src', '/bitrix/tools/captcha.php?captcha_sid=' + text); 5982 captcha.find('input[name=captcha_word]').val('').removeClass('error'); 5983 captcha.find('.captcha_input').removeClass('error').find('.error').remove(); 5984 }, 5985 }); 5986 }); 5987 5988 /* show print */ 5989 if (arAsproOptions['PAGES']['BASKET_PAGE']) { 5990 showBasketHeadingBtn(); 5991 } else { 5992 if (arAsproOptions['THEME']['PRINT_BUTTON'] === 'Y') { 5993 setTimeout(function () { 5994 var topicHeading = document.querySelector('.period_wrapper.in-detail-news1 .period_wrapper_inner') 5995 ? document.querySelector('.detail-news1 .period_wrapper .period_wrapper_inner') 5996 : document.querySelector('.page-top .topic .topic__heading') 5997 ? document.querySelector('.page-top .topic .topic__heading') 5998 : null; 5999 if (topicHeading) { 6000 var btnPrint = BX.create({ 6001 tag: 'div', 6002 attrs: { 6003 class: 'print-link colored_theme_hover_bg-block', 6004 title: arAsproOptions['THEME']['EXPRESSION_FOR_PRINT_PAGE'], 6005 }, 6006 html: '<i class="svg colored_theme_hover_bg-el-svg"><svg class="svg svg-print" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path id="Rectangle_665_copy_4" data-name="Rectangle 665 copy 4" class="cls-print" d="M1570,210h-2v3h-8v-3h-2a2,2,0,0,1-2-2v-5a2,2,0,0,1,2-2h2v-4h8v4h2a2,2,0,0,1,2,2v5A2,2,0,0,1,1570,210Zm-8,1h4v-4h-4v4Zm4-12h-4v2h4v-2Zm4,4h-12v5h2v-3h8v3h2v-5Z" transform="translate(-1556 -197)"></path></svg></i>', 6007 }); 6008 BX.insertBefore(btnPrint, topicHeading); 6009 } 6010 }, 150); 6011 } 6012 } 6013 6014 $(document).on('click', '.print-link', function () { 6015 window.print(); 6016 }); 6017 6018 $('.head-block .item-link').on('click', function () { 6019 var _this = $(this); 6020 _this.siblings().removeClass('active'); 6021 _this.addClass('active'); 6022 }); 6023 6024 $('table.table').each(function () { 6025 var _this = $(this), 6026 first_td = _this.find('thead tr th'); 6027 if (!first_td.length) first_td = _this.find('thead tr td'); 6028 if (first_td.length) { 6029 var j = 0; 6030 _this.find('tbody tr td').each(function (i) { 6031 if (j > first_td.length - 1) j = 0; 6032 $('<div class="th-mobile">' + first_td[j].textContent + '</div>').appendTo($(this)); 6033 j++; 6034 }); 6035 } 6036 }); 6037 6038 if (window.matchMedia('(min-width: 768px)').matches) $('.wrapper_middle_menu.wrap_menu').removeClass('mobile'); 6039 6040 if (window.matchMedia('(max-width: 767px)').matches) $('.wrapper_middle_menu.wrap_menu').addClass('mobile'); 6041 6042 $(document).on('click', '.menu_top_block .v_bottom a', function (e) { 6043 if ($(e.target).hasClass('toggle_block')) e.preventDefault(); 6044 }); 6045 $(document).on('click', '.menu_top_block .v_bottom a .toggle_block', function (e) { 6046 var _this = $(this), 6047 menu = _this.closest('.has-child').find('> .dropdown'), 6048 bVisibleMeu = menu.is(':visible'), 6049 animate = bVisibleMeu ? 'slideUp' : 'slideDown'; 6050 6051 if (!_this.hasClass('clicked')) { 6052 _this.addClass('clicked'); 6053 6054 menu.stop().slideToggle({ 6055 duration: 150, 6056 start: function () { 6057 _this.toggleClass('closed'); 6058 }, 6059 complete: function () { 6060 _this.removeClass('clicked'); 6061 6062 if (typeof window['stickySidebar'] !== 'undefined') { 6063 window['stickySidebar'].updateSticky(); 6064 } 6065 }, 6066 }); 6067 } 6068 6069 $(this).closest('.has-child').toggleClass('opened'); 6070 }); 6071 6072 $(document).on('click', '.show_props', function () { 6073 $(this).prev().stop().slideToggle(333); 6074 $(this).find('.char_title').toggleClass('opened'); 6075 }); 6076 6077 $('.see_more').on('click', function (e) { 6078 e.preventDefault(); 6079 var see_more = $(this).is('.see_more') ? $(this) : $(this).parents('.see_more').first(); 6080 var see_moreText = see_more.find('> a').length ? see_more.find('> a') : see_more; 6081 var see_moreHiden = see_more.parent().find('> .d'); 6082 if (see_more.hasClass('open')) { 6083 see_moreText.text(BX.message('CATALOG_VIEW_MORE')); 6084 see_more.removeClass('open'); 6085 see_moreHiden.hide(); 6086 } else { 6087 see_moreText.text(BX.message('CATALOG_VIEW_LESS')); 6088 see_more.addClass('open'); 6089 see_moreHiden.show(); 6090 } 6091 return false;
6092 }); 6093 6094 $('.button.faq_button').click(function (e) { 6095 e.preventDefault(); 6096 $(this).toggleClass('opened'); 6097 $('.faq_ask .form').slideToggle(); 6098 }); 6099 6100 $('.staff.list .staff_section .staff_section_title a').click(function (e) { 6101 e.preventDefault(); 6102 $(this).parents('.staff_section').toggleClass('opened'); 6103 $(this).parents('.staff_section').find('.staff_section_items').stop().slideToggle(600); 6104 $(this).parents('.staff_section_title').find('.opener_icon').toggleClass('opened'); 6105 }); 6106 6107 $('.jobs_wrapp .item .name').click(function (e) { 6108 $(this).closest('.item').toggleClass('opened'); 6109 $(this).closest('.item').find('.description_wrapp').stop().slideToggle(600); 6110 $(this).closest('.item').find('.opener_icon').toggleClass('opened'); 6111 }); 6112 6113 $('.faq.list .item .q a').on('click', function (e) { 6114 e.preventDefault(); 6115 $(this).parents('.item').toggleClass('opened'); 6116 $(this).parents('.item').find('.a').stop().slideToggle(); 6117 $(this).parents('.item').find('.q .opener_icon').toggleClass('opened'); 6118 }); 6119 6120 $('.opener_icon').click(function (e) { 6121 e.preventDefault(); 6122 $(this).parent().find('a').trigger('click'); 6123 }); 6124 6125 $('.more_block span').on('click', function () { 6126 var content_offset = $('.catalog_detail .tabs_section').offset(); 6127 $('html, body').animate({ scrollTop: content_offset.top - 43 }, 400); 6128 }); 6129 6130 $(document).on('click', '.counter_block:not(.basket) .plus', function () { 6131 if (!$(this).parents('.basket_wrapp').length || $(this).parents('.services_in_basket').length) { 6132 if ($(this).parent().data('offers') != 'Y') { 6133 var isDetailSKU2 = $(this).parents('.counter_block_wr').length; 6134 input = $(this).parents('.counter_block').find('input[type=text]'); 6135 (tmp_ratio = !isDetailSKU2 6136 ? $(this).parents('.counter_wrapp').find('.to-cart').data('ratio') 6137 : $(this).parents('tr').first().find('td.buy .to-cart').data('ratio')), 6138 (isDblQuantity = !isDetailSKU2 6139 ? $(this).parents('.counter_wrapp').find('.to-cart').data('float_ratio') 6140 : $(this).parents('tr').first().find('td.buy .to-cart').data('float_ratio')), 6141 (ratio = isDblQuantity ? parseFloat(tmp_ratio) : parseInt(tmp_ratio, 10)), 6142 (max_value = ''); 6143 currentValue = input.val(); 6144 6145 if (isDblQuantity) 6146 ratio = 6147 Math.round(ratio * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 6148 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 6149 6150 curValue = isDblQuantity ? parseFloat(currentValue) : parseInt(currentValue, 10); 6151 6152 curValue += ratio; 6153 if (isDblQuantity) { 6154 curValue = 6155 Math.round(curValue * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 6156 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 6157 } 6158 6159 if (parseFloat($(this).data('max')) > 0) { 6160 if (input.val() < $(this).data('max')) { 6161 if (curValue <= $(this).data('max')) input.val(curValue); 6162 6163 input.change(); 6164 } 6165 } else { 6166 input.val(curValue); 6167 input.change(); 6168 } 6169 } 6170 } 6171 }); 6172 $(document).on('click', '.counter_block:not(.basket) .minus', function () { 6173 if (!$(this).parents('.basket_wrapp').length || $(this).parents('.services_in_basket').length) { 6174 if ($(this).parent().data('offers') != 'Y') { 6175 var isDetailSKU2 = $(this).parents('.counter_block_wr').length; 6176 input = $(this).parents('.counter_block').find('input[type=text]'); 6177 (tmp_ratio = !isDetailSKU2 6178 ? $(this).parents('.counter_wrapp').find('.to-cart').data('ratio') 6179 : $(this).parents('tr').first().find('td.buy .to-cart').data('ratio')), 6180 (isDblQuantity = !isDetailSKU2 6181 ? $(this).parents('.counter_wrapp').find('.to-cart').data('float_ratio') 6182 : $(this).parents('tr').first().find('td.buy .to-cart').data('float_ratio')), 6183 (ratio = isDblQuantity ? parseFloat(tmp_ratio) : parseInt(tmp_ratio, 10)), 6184 (max_value = ''); 6185 currentValue = input.val(); 6186 6187 if (isDblQuantity) 6188 ratio = 6189 Math.round(ratio * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 6190 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 6191 6192 curValue = isDblQuantity ? parseFloat(currentValue) : parseInt(currentValue, 10); 6193 6194 curValue -= ratio; 6195 if (isDblQuantity) { 6196 curValue = 6197 Math.round(curValue * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 6198 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 6199 } 6200 const minValue = parseFloat($(this).parents('.counter_block').find('.minus').data('min')); 6201 if (minValue) { 6202 ratio = minValue; 6203 } 6204 6205 if (parseFloat($(this).parents('.counter_block').find('.plus').data('max')) > 0) { 6206 if (currentValue > ratio) { 6207 if (curValue < ratio) { 6208 input.val(ratio); 6209 } else { 6210 input.val(curValue); 6211 } 6212 input.change(); 6213 } 6214 } else { 6215 if (curValue > ratio) { 6216 input.val(curValue); 6217 } else { 6218 if (ratio) { 6219 input.val(ratio); 6220 } else if (currentValue > 1) { 6221 input.val(curValue); 6222 } 6223 } 6224 input.change(); 6225 } 6226 } 6227 } 6228 }); 6229 6230 $('.counter_block input[type=text]').numeric({ allow: '.' }); 6231 6232 $(document).on('focus', '.counter_block input[type=text]', function (e) { 6233 $(this).addClass('focus'); 6234 }); 6235 6236 $(document).on('blur', '.counter_block input[type=text]', function (e) { 6237 $(this).removeClass('focus'); 6238 }); 6239 6240 var timerInitCalculateDelivery = false;
6241 $(document).on('change', '.counter_block input[type=text]', function (e) { 6242 if (!$(this).parents('.basket_wrapp').length) { 6243 var val = $(this).val(), 6244 tmp_ratio = $(this).parents('.counter_wrapp').find('.to-cart').data('ratio') 6245 ? $(this).parents('.counter_wrapp').find('.to-cart').data('ratio') 6246 : $(this).parents('tr').first().find('td.buy .to-cart').data('ratio'), 6247 isDblQuantity = $(this).parents('.counter_wrapp').find('.to-cart').data('float_ratio') 6248 ? $(this).parents('.counter_wrapp').find('.to-cart').data('float_ratio') 6249 : $(this).parents('tr').first().find('td.buy .to-cart').data('float_ratio'), 6250 ratio = isDblQuantity ? parseFloat(tmp_ratio) : parseInt(tmp_ratio, 10), 6251 diff = val % ratio; 6252 6253 if (isDblQuantity) { 6254 ratio = 6255 Math.round(ratio * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 6256 arAsproOptions.JS_ITEM_CLICK.precisionFactor; 6257 if ( 6258 Math.round(diff * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / 6259 arAsproOptions.JS_ITEM_CLICK.precisionFactor == 6260 ratio 6261 ) 6262 diff = 0; 6263 } 6264 6265 if ($(this).hasClass('focus')) { 6266 intCount = 6267 Math.round( 6268 Math.round((val * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / ratio) / 6269 arAsproOptions.JS_ITEM_CLICK.precisionFactor 6270 ) || 1; 6271 val = intCount <= 1 ? ratio : intCount * ratio; 6272 // val -= diff; 6273 val = 6274 Math.round(val * arAsproOptions.JS_ITEM_CLICK.precisionFactor) / arAsproOptions.JS_ITEM_CLICK.precisionFactor; 6275 } 6276 6277 if (parseFloat($(this).parents('.counter_block').find('.plus').data('max')) > 0) { 6278 if (val > parseFloat($(this).parents('.counter_block').find('.plus').data('max'))) { 6279 val = parseFloat($(this).parents('.counter_block').find('.plus').data('max')); 6280 // val -= (val % ratio); 6281 } 6282 } 6283 if (parseFloat($(this).parents('.counter_block').find('.minus').data('min')) > 0) { 6284 if (val < parseFloat($(this).parents('.counter_block').find('.minus').data('min'))) { 6285 val = parseFloat($(this).parents('.counter_block').find('.minus').data('min')); 6286 // val -= (val % ratio); 6287 } 6288 } 6289 if (val < ratio) { 6290 val = ratio; 6291 } else if (!parseFloat(val)) { 6292 val = 1; 6293 } 6294 6295 $(this).parents('.counter_block').parent().parent().find('.to-cart').attr('data-quantity', val); 6296 $(this).parents('.counter_block').parent().parent().parent().find('.one_click').attr('data-quantity', val); 6297 $(this) 6298 .parents('.counter_block') 6299 .parent() 6300 .parent() 6301 .parent() 6302 .parent() 6303 .find('.one_click') 6304 .attr('data-quantity', val); //for offers in list 6305 $(this).parents('.catalog_item_wrapp').find('.inner_wrap.TYPE_1 .one_click').attr('data-quantity', val); //for first type buttons in catalog_block 6306 6307 $(this).val(val); 6308 6309 var $calculate = $(this).closest('.item').length 6310 ? $(this).closest('.item').find('.calculate-delivery') 6311 : $(this).closest('.catalog_detail').find('.calculate-delivery'); 6312 if ($calculate.length && !$(this).closest('.buy_services_wrap').length) { 6313 $calculate.each(function () { 6314 var $calculateSpan = $(this).find('span[data-event=jqm]').first(); 6315 6316 if ($calculateSpan.length) { 6317 var $clone = $calculateSpan.clone(); 6318 $clone.attr('data-param-quantity', val).removeClass('clicked'); 6319 $clone.insertAfter($calculateSpan).on('click', function () { 6320 if (!jQuery.browser.mobile) { 6321 $(this).parent().addClass('loadings'); 6322 } 6323 }); 6324 $calculateSpan.remove(); 6325 } 6326 6327 if ($(this).hasClass('with_preview')) { 6328 $(this).removeClass('inited'); 6329 6330 if (timerInitCalculateDelivery) { 6331 clearTimeout(timerInitCalculateDelivery); 6332 } 6333 6334 timerInitCalculateDelivery = setTimeout(function () { 6335 initCalculatePreview(true); 6336 timerInitCalculateDelivery = false; 6337 }, 1000); 6338 } 6339 }); 6340 } 6341 6342 var eventdata = { type: 'change', params: { id: $(this), value: val } }; 6343 BX.onCustomEvent('onCounterProductAction', [eventdata]); 6344 6345 if ($(this).closest('.complect-block').length && typeof setNewPriceComplect === 'function') { 6346 setNewPriceComplect(); 6347 } 6348 } 6349 }); 6350 6351 BX.addCustomEvent('onCounterProductAction', function (eventdata) { 6352 if (typeof eventdata != 'object') { 6353 eventdata = { type: 'undefined' }; 6354 } 6355 try { 6356 if (typeof eventdata.type != 'undefined') { 6357 if (!eventdata.params.id.closest('.gifts').length) { 6358 // no gift 6359 var obProduct = eventdata.params.id.data('product'); 6360 if (eventdata.params.id.closest('.has_offer_prop').length) { 6361 // type1 for offers in element list 6362 if (typeof window['obSkuQuantys'] === 'undefined') window['obSkuQuantys'] = {}; 6363 6364 // if(typeof window['obOffers'] === 'undefined') 6365 window['obSkuQuantys'][eventdata.params.id.closest('.offer_buy_block').find('.to-cart').data('item')] = 6366 eventdata.params.value; 6367 } 6368 if (typeof window[obProduct] == 'object') { 6369 if (obProduct == 'obOffers') setPriceAction('', '', 'Y'); 6370 else window[obProduct].setPriceAction('Y'); 6371 if ($('.detail_page').length) { 6372 setNewHeader(); 6373 } 6374 } else if (eventdata.params.id.length) { 6375 if ( 6376 eventdata.params.id.closest('.main_item_wrapper').length && 6377 !eventdata.params.id.closest('.services-item__buy').length && 6378 arAsproOptions['THEME']['SHOW_TOTAL_SUMM'] == 'Y' 6379 ) { 6380 setPriceItem(eventdata.params.id.closest('.main_item_wrapper'), eventdata.params.value); 6381 } 6382 } 6383 BX.onCustomEvent('onCounterProductActionResize'); 6384 } 6385 } 6386 } catch (e) { 6387 console.error(e); 6388 } 6389 }); 6390 6391 /*show basket on hover */ 6392 // $(document).on("mouseenter", ".wrap_icon.top_basket, #headerfixed .basket-link.basket", function () { 6393 $(document).on('mouseenter', '.basket-link.basket', function () { 6394 var _this = $(this); 6395 var parent = _this.closest('header, #headerfixed'); 6396 var hover_block = parent.find('.basket_hover_block'); 6397 6398 if (!hover_block.hasClass('loaded') || 1) { 6399 basketTop('', hover_block); 6400 } 6401 }); 6402 6403 /*show basket on click mobile */ 6404 $(document).on('click', '.wrap_icon.wrap_basket.top_basket, #headerfixed .basket-link.basket', function (e) { 6405 var _this = $(this); 6406 if (isMobile) { 6407 if (!_this.hasClass('clicked')) { 6408 e.preventDefault(); 6409 _this.addClass('clicked'); 6410 setTimeout(function () { 6411 _this.removeClass('clicked'); 6412 }, 3000); 6413 } 6414 } 6415 }); 6416 6417 /*slide cart*/ 6418 $(document).on('mouseenter', '#basket_line .basket_normal:not(.empty_cart):not(.bcart) .basket_block ', function () { 6419 $(this).closest('.basket_normal').find('.popup').addClass('block'); 6420 $(this).closest('.basket_normal').find('.basket_popup_wrapp').stop(true, true).slideDown(150); 6421 }); 6422 $(document).on('mouseleave', '#basket_line .basket_normal .basket_block ', function () { 6423 var th = $(this); 6424 $(this) 6425 .closest('.basket_normal') 6426 .find('.basket_popup_wrapp') 6427 .stop(true, true)
6428 .slideUp(150, function () { 6429 th.closest('.basket_normal').find('.popup').removeClass('block'); 6430 }); 6431 }); 6432 6433 $(document).on('click', '.popup_button_basket', function () { 6434 var th = $('.to-cart[data-item=' + $(this).data('item') + ']'); 6435 6436 var val = th.attr('data-quantity'); 6437 6438 if (!val) $val = 1; 6439 6440 var tmp_props = th.data('props'), 6441 props = '', 6442 part_props = '', 6443 add_props = 'N', 6444 fill_prop = {}, 6445 iblockid = th.data('iblockid'), 6446 offer = th.data('offers'), 6447 rid = '', 6448 basket_props = '', 6449 item = th.attr('data-item'), 6450 unsub = th.attr('data-unsub'); 6451 6452 if (offer != 'Y') { 6453 offer = 'N'; 6454 } else { 6455 basket_props = th.closest('.prices_tab').find('.bx_sku_props input').val(); 6456 } 6457 if (tmp_props) { 6458 props = tmp_props.split(';'); 6459 } 6460 if (th.data('part_props')) { 6461 part_props = th.data('part_props'); 6462 } 6463 if (th.data('add_props')) { 6464 add_props = th.data('add_props'); 6465 } 6466 if ($('.rid_item').length) { 6467 rid = $('.rid_item').data('rid'); 6468 } else if (th.data('rid')) { 6469 rid = th.data('rid'); 6470 } 6471 6472 fill_prop = fillBasketPropsExt(th, 'prop', 'bx_ajax_text'); 6473 6474 fill_prop.quantity = val; 6475 fill_prop.add_item = 'Y'; 6476 fill_prop.rid = rid; 6477 fill_prop.offers = offer; 6478 fill_prop.iblockID = iblockid; 6479 fill_prop.part_props = part_props; 6480 fill_prop.add_props = add_props; 6481 fill_prop.props = JSON.stringify(props); 6482 fill_prop.item = item; 6483 fill_prop.basket_props = basket_props; 6484 fill_prop.unsub = unsub; 6485 6486 var isDetail = th.closest('.product-action').length || th.closest('#headerfixed.with-product'); 6487 var isSku2 = th.closest('.list-offers').length; 6488 var bIsService = th.closest('.buy_services_wrap').length; 6489 6490 if (!bIsService && (isDetail || isSku2)) { 6491 //var allServicesOn = th.closest('.product-container').find('.buy_services_wrap .services-item [name="buy_switch_services"]:checked'); 6492 var allServicesOn = []; 6493 if (isSku2) { 6494 allServicesOn = th 6495 .closest('.product-container') 6496 .find('.buy_services_wrap .services-item [name="buy_switch_services"]:checked'); 6497 } else { 6498 allServicesOn = $('.product-container').find( 6499 '.buy_services_wrap[data-parent_product="' + item + '"] .services-item [name="buy_switch_services"]:checked' 6500 ); 6501 } 6502 var servicesNeedAdd = []; 6503 allServicesOn.each(function () { 6504 var _this = $(this); 6505 var buttonCart = _this.closest('.services-item').find('.to-cart'); 6506 6507 servicesNeedAdd[buttonCart.data('item')] = {}; 6508 servicesNeedAdd[buttonCart.data('item')]['id'] = buttonCart.data('item'); 6509 servicesNeedAdd[buttonCart.data('item')]['quantity'] = buttonCart.attr('data-quantity'); 6510 servicesNeedAdd[buttonCart.data('item')]['iblock_id'] = buttonCart.data('iblockid'); 6511 }); 6512 servicesNeedAdd = array_values_js(servicesNeedAdd); 6513 fill_prop.services = servicesNeedAdd; 6514 } 6515 6516 $.ajax({ 6517 type: 'POST', 6518 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 6519 data: fill_prop, 6520 dataType: 'json', 6521 success: function (data) { 6522 $('.basket_error_frame').jqmHide(); 6523 if ('STATUS' in data) { 6524 getActualBasket(fill_prop.iblockID); 6525 if (data.STATUS === 'OK') { 6526 th.hide(); 6527 th.closest('.counter_wrapp').find('.counter_block_inner').hide(); 6528 th.closest('.counter_wrapp').find('.counter_block').hide(); 6529 th.parents('tr').find('.counter_block_wr .counter_block').hide(); 6530 th.closest('.button_block').addClass('wide'); 6531 th.parent().find('.in-cart').show(); 6532 6533 addBasketCounter(item); 6534 //$('.wish_item[data-item='+item+']').removeClass("added"); 6535 $('.wish_item[data-item=' + item + ']') 6536 .find('.value') 6537 .show(); 6538 $('.wish_item[data-item=' + item + ']') 6539 .find('.value.added') 6540 .hide(); 6541 6542 if ($('#ajax_basket').length) reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'Y'); 6543 6544 if ($('#basket_line .basket_fly').length) { 6545 if (th.closest('.fast_view_frame').length || window.matchMedia('(max-width: 767px)').matches) 6546 basketFly('open', 'N'); 6547 else basketFly('open'); 6548 } 6549 } else { 6550 showBasketError(BX.message(data.MESSAGE)); 6551 } 6552 } else { 6553 showBasketError(BX.message('CATALOG_PARTIAL_BASKET_PROPERTIES_ERROR')); 6554 } 6555 }, 6556 }); 6557 }); 6558 6559 $(document).on('click', '.to-cart:not(.read_more), .basket_item_add', function (e) { 6560 e.preventDefault(); 6561 var th = $(this); 6562 if (!th.hasClass('clicked')) { 6563 th.addClass('clicked'); 6564 var val = $(this).attr('data-quantity'); 6565 var tmp_props = $(this).data('props'), 6566 props = '', 6567 part_props = '', 6568 add_props = 'N', 6569 fill_prop = {}, 6570 iblockid = $(this).data('iblockid'), 6571 offer = $(this).data('offers'), 6572 rid = '', 6573 bBannerAction = false, 6574 basket_props = '', 6575 item = $(this).attr('data-item'), 6576 unsub = th.attr('data-unsub'); 6577 if (th.closest('.but-cell').length) { 6578 if ($('.counter_block[data-item="' + item + '"]').length) 6579 val = $('.counter_block[data-item="' + item + '"] input').val(); 6580 } 6581 6582 if (th.closest('.banner_buttons.with_actions').length) { 6583 //banner action 6584 var wrapper_btns = th.closest('.wraps_buttons'); 6585 item = wrapper_btns.data('id'); 6586 bBannerAction = true; 6587 } 6588 6589 if (!val) val = 1; 6590 if (offer != 'Y') { 6591 offer = 'N'; 6592 } else { 6593 basket_props = $(this).closest('.prices_tab').find('.bx_sku_props input').val(); 6594 } 6595 if (tmp_props) { 6596 props = tmp_props.split(';'); 6597 } 6598 if ($(this).data('part_props')) { 6599 part_props = $(this).data('part_props'); 6600 } 6601 if ($(this).data('add_props')) { 6602 add_props = $(this).data('add_props'); 6603 } 6604 if ($('.rid_item').length) { 6605 rid = $('.rid_item').data('rid'); 6606 } else if ($(this).data('rid')) { 6607 rid = $(this).data('rid'); 6608 } 6609 6610 fill_prop = fillBasketPropsExt(th, 'prop', th.data('bakset_div')); 6611 6612 fill_prop.quantity = val; 6613 fill_prop.add_item = 'Y'; 6614 fill_prop.rid = rid; 6615 fill_prop.offers = offer; 6616 fill_prop.iblockID = iblockid; 6617 fill_prop.part_props = part_props; 6618 fill_prop.add_props = add_props; 6619 fill_prop.props = JSON.stringify(props); 6620 fill_prop.item = item; 6621 fill_prop.basket_props = basket_props; 6622 fill_prop.unsub = unsub; 6623 6624 var isDetail = th.closest('.product-action').length || th.closest('#headerfixed.with-product'); 6625 var isSku2 = th.closest('.list-offers').length; 6626 var bIsService = th.closest('.buy_services_wrap').length; 6627 6628 if (!bIsService && (isDetail || isSku2)) { 6629 var allServicesOn = []; 6630 if (isSku2) { 6631 allServicesOn = th 6632 .closest('.product-container') 6633 .find('.buy_services_wrap .services-item [name="buy_switch_services"]:checked'); 6634 } else { 6635 allServicesOn = $('.product-container').find( 6636 '.buy_services_wrap[data-parent_product="' + item + '"] .services-item [name="buy_switch_services"]:checked' 6637 ); 6638 } 6639 var servicesNeedAdd = []; 6640 allServicesOn.each(function () { 6641 var _this = $(this); 6642 var buttonCart = _this.closest('.services-item').find('.to-cart'); 6643 servicesNeedAdd[buttonCart.data('item')] = {}; 6644 servicesNeedAdd[buttonCart.data('item')]['id'] = buttonCart.data('item'); 6645 servicesNeedAdd[buttonCart.data('item')]['quantity'] = buttonCart.attr('data-quantity'); 6646 servicesNeedAdd[buttonCart.data('item')]['iblock_id'] = buttonCart.data('iblockid'); 6647 }); 6648 servicesNeedAdd = array_values_js(servicesNeedAdd); 6649 fill_prop.services = servicesNeedAdd; 6650 } 6651 6652 var servicesWrap = $(this).closest('.buy_services_wrap'); 6653 if (bIsService) { 6654 var parent_product = servicesWrap.attr('data-parent_product'); 6655 fill_prop['prop[BUY_PRODUCT_PROP]'] = parent_product; 6656 fill_prop['prop[ASPRO_BUY_PRODUCT_ID]'] = parent_product; 6657 } 6658 6659 if (bBannerAction) { 6660 if (th.hasClass('added')) { 6661 location.href = th.data('href'); 6662 return false;
6663 } else { 6664 th.attr('title', th.data('title2')); 6665 th.toggleClass('added'); 6666 } 6667 6668 if (wrapper_btns.find('.wish_item_add').length) wrapper_btns.find('.wish_item_add').removeClass('added'); 6669 } 6670 6671 if (th.data('empty_props') == 'N' /* && fill_prop.part_props != 'Y'*/) { 6672 var basket_popup_html = $('#' + th.data('bakset_div')).html(); 6673 if (!basket_popup_html && th.closest('.item').find('.basket_props_block').length) 6674 basket_popup_html = th.closest('.item').find('.basket_props_block').html(); 6675 6676 showBasketError(basket_popup_html, BX.message('ERROR_BASKET_PROP_TITLE'), 'Y', th); 6677 BX.addCustomEvent('onCompleteAction', function (e) { 6678 if (!e.ignoreSelf) { 6679 var eventdata = { action: 'loadForm', ignoreSelf: true }; 6680 BX.onCustomEvent('onCompleteAction', [eventdata, th[0]]); 6681 } 6682 }); 6683 } else { 6684 $.ajax({ 6685 type: 'POST', 6686 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 6687 data: fill_prop, 6688 dataType: 'json', 6689 success: function (data) { 6690 getActualBasket(fill_prop.iblockID); 6691 6692 var eventdata = { action: 'loadForm' }; 6693 BX.onCustomEvent('onCompleteAction', [eventdata, th[0]]); 6694 arStatusBasketAspro = {}; 6695 6696 if (data !== null) { 6697 if ('STATUS' in data) { 6698 if (data.MESSAGE_EXT === null) data.MESSAGE_EXT = ''; 6699 if (data.STATUS === 'OK') { 6700 // th.hide(); 6701 $('.to-cart[data-item=' + item + ']').hide(); 6702 $('.to-cart[data-item=' + item + ']') 6703 .closest('.counter_wrapp') 6704 .find('.counter_block_inner') 6705 .hide(); 6706 $('.to-cart[data-item=' + item + ']') 6707 .closest('.counter_wrapp') 6708 .find('.counter_block') 6709 .hide(); 6710 $('.to-cart[data-item=' + item + ']') 6711 .parents('tr') 6712 .find('.counter_block_wr .counter_block') 6713 .hide(); 6714 $('.to-cart[data-item=' + item + ']') 6715 .closest('.button_block') 6716 .addClass('wide'); 6717 // th.parent().find('.in-cart').show(); 6718 $('.in-cart[data-item=' + item + ']').show(); 6719 6720 addBasketCounter(item); 6721 //$('.wish_item[data-item='+item+']').removeClass("added"); 6722 $('.wish_item[data-item=' + item + ']') 6723 .find('.value') 6724 .show(); 6725 $('.wish_item[data-item=' + item + ']') 6726 .find('.value.added') 6727 .hide(); 6728 $('.wish_item.to[data-item=' + item + ']').show(); 6729 $('.wish_item.in[data-item=' + item + ']').hide(); 6730 6731 //js notice 6732 $bDontOpenBasket = false; 6733 if (typeof JNoticeSurface !== 'undefined') { 6734 JNoticeSurface.get().onAdd2cart([th[0]]); 6735 $bDontOpenBasket = true; 6736 } 6737 // 6738 6739 if ($('#ajax_basket').length) reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'Y'); 6740 6741 if ($('#basket_line .basket_fly').length) { 6742 if (th.closest('.services_in_basket').length && !window.matchMedia('(max-width: 767px)').matches) { 6743 basketFly('open', 'SHOW'); //need for buy services in basket_fly 6744 } else if ( 6745 th.closest('.fast_view_frame').length || 6746 window.matchMedia('(max-width: 767px)').matches || 6747 $('#basket_line .basket_fly.loaded').length 6748 ) 6749 basketFly('open', 'N'); 6750 else { 6751 if ($bDontOpenBasket) basketFly('open', 'N'); 6752 else basketFly('open'); 6753 } 6754 } 6755 6756 //need for services on basket_page 6757 if (th.closest('.services_in_basket_page').length) { 6758 BX.Sale.BasketComponent.sendRequest('refreshAjax', { 6759 fullRecalculation: 'Y', 6760 otherParams: { 6761 param: 'N', 6762 }, 6763 }); 6764 } 6765 6766 if ($('.top_basket').length) { 6767 basketTop($bDontOpenBasket ? '' : 'open', $('.top_basket').find('.basket_hover_block')); 6768 } 6769 6770 if ( 6771 $('#headerfixed .wproducts .ajax_load .btn').length && 6772 th.closest('.product-action').length && 6773 !th.closest('.js-item-analog').length && 6774 th.next('.in-cart').length 6775 ) { 6776 var buttonHtml = 6777 //'<span class="buy_block"><span class="btn btn-default btn-sm slide_offer more type_block">' + 6778 '<span class="buy_block"><span class="btn btn-default btn-sm more type_block">' + 6779 th.next('.in-cart').html() + 6780 '</span></span>'; 6781 $('#headerfixed .wproducts .ajax_load .item-buttons .but-cell').html(buttonHtml); 6782 } 6783 } else { 6784 showBasketError(BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT); 6785 } 6786 } else { 6787 showBasketError(BX.message('CATALOG_PARTIAL_BASKET_PROPERTIES_ERROR')); 6788 } 6789 } else { 6790 // th.hide(); 6791 $('.to-cart[data-item=' + item + ']').hide(); 6792 $('.to-cart[data-item=' + item + ']') 6793 .closest('.counter_wrapp') 6794 .find('.counter_block_inner') 6795 .hide(); 6796 $('.to-cart[data-item=' + item + ']') 6797 .closest('.counter_wrapp') 6798 .find('.counter_block') 6799 .hide(); 6800 $('.to-cart[data-item=' + item + ']') 6801 .parents('tr') 6802 .find('.counter_block_wr .counter_block') 6803 .hide(); 6804 $('.to-cart[data-item=' + item + ']') 6805 .closest('.button_block') 6806 .addClass('wide'); 6807 // th.parent().find('.in-cart').show(); 6808 $('.in-cart[data-item=' + item + ']').show(); 6809 6810 addBasketCounter(item); 6811 //$('.wish_item[data-item='+item+']').removeClass("added"); 6812 $('.wish_item[data-item=' + item + ']') 6813 .find('.value') 6814 .show(); 6815 $('.wish_item[data-item=' + item + ']') 6816 .find('.value.added') 6817 .hide(); 6818 6819 if ($('#ajax_basket').length) reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'Y'); 6820 6821 if ($('#basket_line .basket_fly').length) { 6822 if ( 6823 th.closest('.fast_view_frame').length || 6824 window.matchMedia('(max-width: 767px)').matches || 6825 $('#basket_line .basket_fly.loaded').length 6826 ) 6827 basketFly('open', 'N'); 6828 else basketFly('open'); 6829 } 6830 } 6831 6832 updateBasketPreorders(); 6833 }, 6834 }); 6835 } 6836 } 6837 }); 6838 6839 $(document).on('click', '.to-subscribe', function (e) { 6840 e.preventDefault(); 6841 var th = $(this); 6842 if (!th.hasClass('clicked')) { 6843 th.addClass('clicked'); 6844 if ($(this).is('.auth')) { 6845 if ($(this).hasClass('nsubsc')) { 6846 $(this).jqmEx(); 6847 // $(this).trigger("click"); 6848 } else { 6849 location.href = arAsproOptions['SITE_DIR'] + 'auth/?backurl=' + location.pathname; 6850 } 6851 } else { 6852 var item = $(this).attr('data-item'), 6853 iblockid = $(this).attr('data-iblockid'); 6854 // $(this).hide(); 6855 $('.to-subscribe[data-item=' + item + ']').hide(); 6856 $('.to-subscribe[data-item=' + item + ']') 6857 .parent() 6858 .find('.in-subscribe') 6859 .show(); 6860 $.get( 6861 arAsproOptions['SITE_DIR'] + 'ajax/item.php?item=' + item + '&subscribe_item=Y', 6862 $.proxy(function (data) { 6863 arStatusBasketAspro = {}; 6864 getActualBasket(iblockid); 6865 }) 6866 ); 6867 th.removeClass('clicked'); 6868 } 6869 } 6870 }); 6871 6872 $(document).on('click', '.in-subscribe', function (e) { 6873 e.preventDefault(); 6874 var item = $(this).attr('data-item'), 6875 iblockid = $(this).attr('data-iblockid'); 6876 // $(this).hide(); 6877 $('.in-subscribe[data-item=' + item + ']').hide(); 6878 $('.in-subscribe[data-item=' + item + ']') 6879 .parent() 6880 .find('.to-subscribe') 6881 .removeClass('clicked'); 6882 $('.in-subscribe[data-item=' + item + ']') 6883 .parent() 6884 .find('.to-subscribe') 6885 .show(); 6886 $.get( 6887 arAsproOptions['SITE_DIR'] + 'ajax/item.php?item=' + item + '&subscribe_item=Y', 6888 $.proxy(function (data) { 6889 getActualBasket(iblockid); 6890 arStatusBasketAspro = {}; 6891 }) 6892 ); 6893 }); 6894 6895 $(document).on('click', '.wish_item, .wish_item_add', function (e) { 6896 e.preventDefault(); 6897 var val = $(this).attr('data-quantity'), 6898 _this = $(this), 6899 offer = $(this).data('offers'), 6900 iblockid = $(this).data('iblock'), 6901 tmp_props = $(this).data('props'), 6902 props = '', 6903 bBannerAction = false, 6904 item = $(this).attr('data-item'), 6905 item2 = $(this).attr('data-item'); 6906 6907 if (_this.closest('.banner_buttons.with_actions').length) { 6908 //banner action 6909 var wrapper_btns = _this.closest('.wraps_buttons'); 6910 item = item2 = wrapper_btns.data('id'); 6911 bBannerAction = true; 6912 } 6913 6914 if (!_this.hasClass('clicked')) { 6915 _this.addClass('clicked'); 6916 if (!val) val = 1; 6917 if (offer != 'Y') offer = 'N'; 6918 if (tmp_props) { 6919 props = tmp_props.split(';'); 6920 } 6921 if (!$(this).hasClass('text')) { 6922 if ($(this).hasClass('added')) { 6923 if (!bBannerAction) { 6924 $(this).hide(); 6925 $(this).closest('.wish_item_button').find('.to').show(); 6926 } 6927 $('.like_icons').each(function () { 6928 if ($(this).find('.wish_item.text[data-item="' + item + '"]').length) { 6929 $(this) 6930 .find('.wish_item.text[data-item="' + item + '"]') 6931 .removeClass('added'); 6932 $(this) 6933 .find('.wish_item.text[data-item="' + item + '"]') 6934 .find('.value') 6935 .show(); 6936 $(this) 6937 .find('.wish_item.text[data-item="' + item + '"]') 6938 .find('.value.added') 6939 .hide(); 6940 } 6941 if ($(this).find('.wish_item_button').length) { 6942 /*$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').removeClass('added'); 6943 $(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value').show(); 6944 $(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value.added').hide();*/ 6945 $(this) 6946 .find('.wish_item_button') 6947 .find('.wish_item[data-item="' + item + '"].to') 6948 .show(); 6949 $(this) 6950 .find('.wish_item_button') 6951 .find('.wish_item[data-item="' + item + '"].in') 6952 .hide(); 6953 } 6954 }); 6955 } else { 6956 if (!bBannerAction) { 6957 $(this).hide(); 6958 $(this).closest('.wish_item_button').find('.in').addClass('added').show(); 6959 } 6960 6961 $('.like_icons').each(function () { 6962 if ($(this).find('.wish_item.text[data-item="' + item + '"]').length) { 6963 $(this) 6964 .find('.wish_item.text[data-item="' + item + '"]') 6965 .addClass('added'); 6966 $(this) 6967 .find('.wish_item.text[data-item="' + item + '"]') 6968 .find('.value') 6969 .hide(); 6970 $(this) 6971 .find('.wish_item.text[data-item="' + item + '"]') 6972 .find('.value.added') 6973 .css({ display: 'block' }); 6974 } 6975 if ($(this).find('.wish_item_button').length) { 6976 /*$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').addClass('added'); 6977 $(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value').hide(); 6978 $(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value.added').show();*/ 6979 $(this) 6980 .find('.wish_item_button') 6981 .find('.wish_item[data-item="' + item + '"].to') 6982 .hide(); 6983 $(this) 6984 .find('.wish_item_button') 6985 .find('.wish_item[data-item="' + item + '"].in') 6986 .show(); 6987 } 6988 }); 6989 } 6990 } else { 6991 if (!$(this).hasClass('added')) { 6992 $('.wish_item[data-item=' + item + ']').addClass('added'); 6993 $('.wish_item[data-item=' + item + ']') 6994 .find('.value') 6995 .hide(); 6996 $('.wish_item[data-item=' + item + ']') 6997 .find('.value.added') 6998 .css('display', 'block'); 6999 7000 $('.wish_item.to[data-item=' + item + ']').hide(); 7001 $('.wish_item.in[data-item=' + item + ']').show(); 7002 7003 $('.like_icons').each(function () { 7004 if ($(this).find('.wish_item_button').length) { 7005 $(this) 7006 .find('.wish_item_button') 7007 .find('.wish_item[data-item="' + item + '"]') 7008 .addClass('added'); 7009 $(this) 7010 .find('.wish_item_button') 7011 .find('.wish_item[data-item="' + item + '"]') 7012 .find('.value') 7013 .hide(); 7014 $(this) 7015 .find('.wish_item_button') 7016 .find('.wish_item[data-item="' + item + '"]') 7017 .find('.value.added') 7018 .show(); 7019 } 7020 }); 7021 } else { 7022 $('.wish_item[data-item=' + item + ']').removeClass('added'); 7023 $('.wish_item[data-item=' + item + ']') 7024 .find('.value') 7025 .show(); 7026 $('.wish_item[data-item=' + item + ']') 7027 .find('.value.added') 7028 .hide(); 7029 7030 $('.wish_item.to[data-item=' + item + ']').show(); 7031 $('.wish_item.in[data-item=' + item + ']').hide(); 7032 7033 $('.like_icons').each(function () { 7034 if ($(this).find('.wish_item_button').length) { 7035 $(this) 7036 .find('.wish_item_button') 7037 .find('.wish_item[data-item="' + item + '"]') 7038 .removeClass('added'); 7039 $(this) 7040 .find('.wish_item_button') 7041 .find('.wish_item[data-item="' + item + '"]') 7042 .find('.value') 7043 .show(); 7044 $(this) 7045 .find('.wish_item_button') 7046 .find('.wish_item[data-item="' + item + '"]') 7047 .find('.value.added') 7048 .hide(); 7049 } 7050 }); 7051 } 7052 } 7053 7054 $('.in-cart[data-item=' + item + ']').hide(); 7055 $('.to-cart[data-item=' + item + ']').removeClass('clicked'); 7056 if ( 7057 $('.to-cart[data-item=' + item + ']') 7058 .closest('.counter_wrapp') 7059 .find('.counter_block').length 7060 ) { 7061 $('.to-cart[data-item=' + item + ']') 7062 .parent() 7063 .removeClass('wide'); 7064 } 7065 if ( 7066 !$('.counter_block[data-item=' + item + ']') 7067 .closest('.counter_wrapp') 7068 .find('.to-order').length 7069 ) { 7070 $('.to-cart[data-item=' + item + ']').show(); 7071 $('.counter_block[data-item=' + item + ']') 7072 .closest('.counter_block_inner') 7073 .show(); 7074 $('.counter_block[data-item=' + item + ']').show(); 7075 } 7076 7077 if (bBannerAction) { 7078 _this.toggleClass('added'); 7079 7080 if (_this.hasClass('added')) _this.attr('title', _this.data('title2')); 7081 else _this.attr('title', _this.data('title')); 7082 7083 if (wrapper_btns.find('.basket_item_add').length) wrapper_btns.find('.basket_item_add').removeClass('added'); 7084 } 7085 7086 if (!$(this).closest('.module-cart').length) { 7087 $.ajax({ 7088 type: 'GET', 7089 url: arAsproOptions['SITE_DIR'] + 'ajax/item.php', 7090 data: 7091 'item=' + 7092 item2 + 7093 '&quantity=' + 7094 val + 7095 '&wish_item=Y' +
7096 '&offers=' + 7097 offer + 7098 '&iblockID=' + 7099 iblockid + 7100 '&props=' + 7101 JSON.stringify(props), 7102 dataType: 'json', 7103 success: function (data) { 7104 getActualBasket(iblockid); 7105 arStatusBasketAspro = {}; 7106 if (data !== null) { 7107 if (data.MESSAGE_EXT === null) data.MESSAGE_EXT = ''; 7108 if ('STATUS' in data) { 7109 if (data.STATUS === 'OK') { 7110 // js notice 7111 $bDontOpenBasket = false; 7112 if ( 7113 typeof JNoticeSurface !== 'undefined' && 7114 ((!bBannerAction && !_this.hasClass('added')) || (bBannerAction && _this.hasClass('added'))) 7115 ) { 7116 JNoticeSurface.get().onAdd2Delay([_this[0]]); 7117 $bDontOpenBasket = true; 7118 } 7119 // 7120 7121 if (arAsproOptions['COUNTERS']['USE_BASKET_GOALS'] !== 'N') { 7122 var eventdata = { goal: 'goal_wish_add', params: { id: item2 } }; 7123 BX.onCustomEvent('onCounterGoals', [eventdata]); 7124 } 7125 if ($('#ajax_basket').length) reloadTopBasket('wish', $('#ajax_basket'), 200, 5000, 'N'); 7126 7127 if ($('#basket_line .basket_fly').length) { 7128 if ( 7129 _this.closest('.fast_view_frame').length || 7130 window.matchMedia('(max-width: 767px)').matches || 7131 $('#basket_line .basket_fly.loaded').length 7132 ) 7133 basketFly('wish', 'N'); 7134 else { 7135 if ($bDontOpenBasket) basketFly('wish', 'N'); 7136 else basketFly('wish'); 7137 } 7138 } 7139 } else { 7140 showBasketError( 7141 BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT, 7142 BX.message('ERROR_ADD_DELAY_ITEM') 7143 ); 7144 } 7145 } else { 7146 showBasketError( 7147 BX.message(data.MESSAGE) + ' <br/>' + data.MESSAGE_EXT, 7148 BX.message('ERROR_ADD_DELAY_ITEM') 7149 ); 7150 } 7151 } else { 7152 if ($('#ajax_basket').length) reloadTopBasket('wish', $('#ajax_basket'), 200, 5000, 'N'); 7153 7154 if ($('#basket_line .basket_fly').length) { 7155 if ( 7156 _this.closest('.fast_view_frame').length || 7157 window.matchMedia('(max-width: 767px)').matches || 7158 $('#basket_line .basket_fly.loaded').length 7159 ) 7160 basketFly('wish', 'N'); 7161 else basketFly('wish'); 7162 } 7163 } 7164 _this.removeClass('clicked'); 7165 }, 7166 }); 7167 } 7168 } 7169 }); 7170 7171 $(document).on('click', '.item_main_info .item_slider .flex-direction-nav li span', function (e) { 7172 if ($('.inner_slider .slides_block').length) { 7173 if ($(this).parent().hasClass('flex-nav-next')) $('.inner_slider .slides_block li.current').next().click(); 7174 else $('.inner_slider .slides_block li.current').prev().click(); 7175 } 7176 }); 7177 7178 $(document).on('click', '.compare_item, .compare_item_add', function (e) { 7179 e.preventDefault(); 7180 var item = $(this).attr('data-item'); 7181 var iblockID = $(this).attr('data-iblock'), 7182 bBannerAction = false, 7183 th = $(this); 7184 7185 if (th.closest('.banner_buttons.with_actions').length) { 7186 //banner action 7187 var wrapper_btns = th.closest('.wraps_buttons'); 7188 item = wrapper_btns.data('id'); 7189 iblockID = wrapper_btns.data('iblockid'); 7190 bBannerAction = true; 7191 7192 th.toggleClass('added'); 7193 7194 if (th.hasClass('added')) th.attr('title', th.data('title2')); 7195 else th.attr('title', th.data('title')); 7196 } 7197 7198 if (!th.hasClass('clicked')) { 7199 th.addClass('clicked'); 7200 if (!$(this).hasClass('text')) { 7201 if ($(this).hasClass('added')) { 7202 if (!bBannerAction) { 7203 $(this).hide(); 7204 $(this).closest('.compare_item_button').find('.to').show(); 7205 } 7206 7207 /*sync other button*/ 7208 $('.like_icons').each(function () { 7209 if ($(this).find('.compare_item.text[data-item="' + item + '"]').length) { 7210 $(this) 7211 .find('.compare_item.text[data-item="' + item + '"]') 7212 .removeClass('added'); 7213 $(this) 7214 .find('.compare_item.text[data-item="' + item + '"]') 7215 .find('.value') 7216 .show(); 7217 $(this) 7218 .find('.compare_item.text[data-item="' + item + '"]') 7219 .find('.value.added') 7220 .hide(); 7221 } 7222 if ($(this).find('.compare_item_button').length) { 7223 /*$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').removeClass('added'); 7224 $(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value').show(); 7225 $(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value.added').hide();*/ 7226 $(this) 7227 .find('.compare_item_button') 7228 .find('.compare_item[data-item="' + item + '"].in') 7229 .hide(); 7230 $(this) 7231 .find('.compare_item_button') 7232 .find('.compare_item[data-item="' + item + '"].to') 7233 .show(); 7234 } 7235 }); 7236 } else { 7237 if (!bBannerAction) { 7238 $(this).hide(); 7239 $(this).closest('.compare_item_button').find('.in').show(); 7240 } 7241 7242 /*sync other button*/ 7243 $('.like_icons').each(function () { 7244 if ($(this).find('.compare_item.text[data-item="' + item + '"]').length) { 7245 $(this) 7246 .find('.compare_item.text[data-item="' + item + '"]') 7247 .addClass('added'); 7248 $(this) 7249 .find('.compare_item.text[data-item="' + item + '"]') 7250 .find('.value') 7251 .hide(); 7252 $(this) 7253 .find('.compare_item.text[data-item="' + item + '"]') 7254 .find('.value.added') 7255 .css({ display: 'block' }); 7256 } 7257 if ($(this).find('.compare_item_button').length) { 7258 /*$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').addClass('added'); 7259 $(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value.added').show(); 7260 $(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value').hide();*/ 7261 $(this) 7262 .find('.compare_item_button') 7263 .find('.compare_item[data-item="' + item + '"].to') 7264 .hide(); 7265 $(this) 7266 .find('.compare_item_button') 7267 .find('.compare_item[data-item="' + item + '"].in') 7268 .show(); 7269 } 7270 }); 7271 } 7272 } else { 7273 if (!$(this).hasClass('added')) { 7274 $('.compare_item[data-item=' + item + ']').addClass('added'); 7275 $('.compare_item[data-item=' + item + ']') 7276 .find('.value') 7277 .hide(); 7278 $('.compare_item[data-item=' + item + ']') 7279 .find('.value.added') 7280 .css('display', 'block'); 7281 7282 /*sync other button*/ 7283 $('.like_icons').each(function () { 7284 if ($(this).find('.compare_item_button').length) { 7285 $(this) 7286 .find('.compare_item_button') 7287 .find('.compare_item[data-item="' + item + '"]') 7288 .addClass('added'); 7289 $(this) 7290 .find('.compare_item_button') 7291 .find('.compare_item[data-item="' + item + '"]') 7292 .find('.value.added') 7293 .show(); 7294 $(this) 7295 .find('.compare_item_button') 7296 .find('.compare_item[data-item="' + item + '"]') 7297 .find('.value') 7298 .hide(); 7299 } 7300 }); 7301 } else { 7302 $('.compare_item[data-item=' + item + ']').removeClass('added'); 7303 $('.compare_item[data-item=' + item + ']') 7304 .find('.value') 7305 .show(); 7306 $('.compare_item[data-item=' + item + ']') 7307 .find('.value.added') 7308 .hide(); 7309 7310 /*sync other button*/ 7311 $('.like_icons').each(function () { 7312 if ($(this).find('.compare_item_button').length) { 7313 $(this) 7314 .find('.compare_item_button') 7315 .find('.compare_item[data-item="' + item + '"]') 7316 .removeClass('added'); 7317 $(this) 7318 .find('.compare_item_button') 7319 .find('.compare_item[data-item="' + item + '"]') 7320 .find('.value') 7321 .show(); 7322 $(this) 7323 .find('.compare_item_button') 7324 .find('.compare_item[data-item="' + item + '"]') 7325 .find('.value.added') 7326 .hide(); 7327 } 7328 }); 7329 } 7330 } 7331 7332 $.get( 7333 arAsproOptions['SITE_DIR'] + 'ajax/item.php?item=' + item + '&compare_item=Y&iblock_id=' + iblockID, 7334 $.proxy(function (data) { 7335 getActualBasket(iblockID, 'Compare'); 7336 arStatusBasketAspro = {}; 7337 7338 // js notice 7339 if (
7340 typeof JNoticeSurface !== 'undefined' && 7341 ((!bBannerAction && !th.hasClass('added')) || (bBannerAction && th.hasClass('added'))) 7342 ) { 7343 JNoticeSurface.get().onAdd2Compare([th[0]]); 7344 } 7345 // 7346 7347 if ($('#compare_fly').length) { 7348 jsAjaxUtil.InsertDataToNode( 7349 arAsproOptions['SITE_DIR'] + 'ajax/show_compare_preview_fly.php', 7350 'compare_fly', 7351 false 7352 ); 7353 } 7354 th.removeClass('clicked'); 7355 }) 7356 ); 7357 } 7358 }); 7359 7360 $(document).on('click', '.tabs>li', function () { 7361 var parent = $(this).parent(); 7362 if (!$(this).hasClass('active')) { 7363 var sliderIndex = $(this).index(), 7364 curLiNav = $(this) 7365 .closest('.top_block') 7366 .find('.slider_navigation') 7367 .find('>li:eq(' + sliderIndex + ')'), 7368 curLi = $(this) 7369 .closest('.top_block') 7370 .siblings('.tabs_content') 7371 .find('>li:eq(' + sliderIndex + ')'); 7372 $(this).addClass('active').addClass('cur').siblings().removeClass('active').removeClass('cur'); 7373 curLi.addClass('cur').siblings().removeClass('cur'); 7374 curLiNav.addClass('cur').siblings().removeClass('cur'); 7375 7376 if (parent.hasClass('ajax')) { 7377 // front tabs 7378 if (!$(this).hasClass('clicked')) { 7379 $.ajax({ 7380 url: arAsproOptions['SITE_DIR'] + 'include/mainpage/comp_catalog_ajax.php', 7381 type: 'POST', 7382 data: { 7383 AJAX_POST: 'Y', 7384 FILTER_HIT_PROP: $(this).data('code'), 7385 AJAX_PARAMS: $(this).closest('.tab_slider_wrapp').find('.request-data').data('value'), 7386 GLOBAL_FILTER: curLi.data('filter'), 7387 }, 7388 success: function (html) { 7389 curLi.find('.tabs_slider').html(html); 7390 var container = curLi.closest('.content_wrapper_block'); 7391 if (container.length) { 7392 var bNav = curLi.find('.bottom_nav .module-pagination').length > 0; 7393 if (bNav) { 7394 container.removeClass('without-border'); 7395 } else { 7396 container.addClass('without-borded'); 7397 } 7398 } 7399 setTimeout(function () { 7400 curLi.addClass('opacity1'); 7401 }, 100); 7402 }, 7403 }); 7404 $(this).addClass('clicked'); 7405 } else { 7406 var container = curLi.closest('.content_wrapper_block'); 7407 if (container.length) { 7408 var bNav = curLi.find('.bottom_nav .module-pagination').length > 0; 7409 if (bNav) { 7410 container.removeClass('without-border'); 7411 } else { 7412 container.addClass('without-borded'); 7413 } 7414 } 7415 } 7416 } 7417 7418 var eventdata = { index: sliderIndex, target: $(this) }; 7419 BX.onCustomEvent('clickedTabsLi', [eventdata]); 7420 } 7421 }); 7422 7423 /*search click*/ 7424 $('.search_block .icon').on('click', function () { 7425 var th = $(this); 7426 if ($(this).hasClass('open')) { 7427 $(this).closest('.center_block').find('.search_middle_block').removeClass('active'); 7428 $(this).removeClass('open'); 7429 $(this).closest('.center_block').find('.search_middle_block').find('.noborder').hide(); 7430 } else { 7431 setTimeout(function () { 7432 th.closest('.center_block').find('.search_middle_block').find('.noborder').show(); 7433 }, 100); 7434 $(this).closest('.center_block').find('.search_middle_block').addClass('active'); 7435 $(this).addClass('open'); 7436 } 7437 }); 7438 7439 $(document).on('click', '.no_goods .button', function () { 7440 $('.bx_filter .smartfilter .bx_filter_search_reset').trigger('click'); 7441 }); 7442 7443 $(document).on('click', '.js-load-link', function (e) { 7444 AjaxClickLink(e); 7445 }); 7446 7447 $(document).on('click', '.svg-inline-bottom_nav-icon', function () { 7448 $(this).next().trigger('click'); 7449 }); 7450 $(document).on('click', '.ajax_load_btn', function () { 7451 var _this = $(this), 7452 url = _this.closest('.container').find('.module-pagination .flex-direction-nav .flex-next').attr('href'), 7453 th = _this.find('.more_text_ajax'), 7454 bottom_nav = _this.closest('.bottom_nav'), 7455 mobileBottomNav = bottom_nav.hasClass('mobile_slider'), 7456 bLoadingState = _this.closest('.animate-load-state').length; 7457 7458 if (!th.hasClass('loading')) { 7459 th.addClass('loading'); 7460 if (mobileBottomNav) { 7461 var icon = bottom_nav.find('.svg-inline-bottom_nav-icon'); 7462 icon.css('display', 'none'); 7463 } 7464 if (bLoadingState) _this.addClass('loadings'); 7465 7466 var objUrl = parseUrlQuery(), 7467 add_url = ''; 7468 obGetData = { ajax_get: 'Y', AJAX_REQUEST: 'Y' }; 7469 7470 if (_this.closest('.wrapper_inner.front').length) { 7471 //index page 7472 var class_block = th.closest('.drag-block').data('class').replace('_drag', ''); 7473 class_block = class_block.replace(/\s/g, ''); 7474 obGetData.BLOCK = class_block; 7475 } 7476 7477 if (_this.closest('.tab').length) { 7478 //tabs block 7479 var parentTab = th.closest('.tab'); 7480 obGetData.FILTER_HIT_PROP = parentTab.data('code'); 7481 obGetData.GLOBAL_FILTER = parentTab.data('filter'); 7482 url = _this.closest('.bottom_nav').find('.module-pagination .flex-direction-nav .flex-next').attr('href'); 7483 } 7484 7485 if (_this.closest('.content_linked_goods').length) { 7486 //linked_goods block in content 7487 var filterSections = th.closest('.content_linked_goods').attr('data-sections-ids'); 7488 obGetData.ajax_section_id = decodeURIComponent(filterSections); 7489 7490 url = _this.closest('.bottom_nav').find('.module-pagination .flex-direction-nav .flex-next').attr('href'); 7491 } 7492 7493 if ('clear_cache' in objUrl) { 7494 if (objUrl.clear_cache == 'Y') add_url = '&clear_cache=Y'; 7495 } 7496 if (_this.hasClass('ajax')) obGetData.ajax = 'y'; 7497
7498 if (th.closest('.goods-block.ajax_load')) obGetData.bitrix_include_areas = 'N'; 7499 7500 if (_this.closest('.nav-data_block').length) { 7501 //need data-block 7502 obGetData.data_block = _this.closest('.nav-data_block').attr('data-block'); 7503 obGetData.pagen_data_block = 'Y'; 7504 url = _this.closest('.bottom_nav').find('.module-pagination .flex-direction-nav .flex-next').attr('href'); 7505 } 7506 7507 $.ajax({ 7508 url: url + add_url, 7509 data: obGetData, 7510 success: function (html) { 7511 pasteAjaxPagination(html, th, bottom_nav, bLoadingState, _this); 7512 }, 7513 error: function (html) { 7514 pasteAjaxPagination(html.responseText, th, bottom_nav, bLoadingState, _this); 7515 }, 7516 }); 7517 } 7518 }); 7519 7520 function pasteAjaxPagination(html, th, bottom_nav, bLoadingState, _this) { 7521 var mobileBottomClicked = bottom_nav.hasClass('mobile_slider'); 7522 var hasMobileBottomNav = $(html).find('.bottom_nav.mobile_slider'); 7523 var bottomNav = hasMobileBottomNav.length ? hasMobileBottomNav : $(html).find('.bottom_nav'); 7524 var bottomNavHtml = bottomNav.html(); 7525 var bottomNavScrollClass = bottomNav.data('scroll-class'); 7526 var hasBottomNav = $(html).find('.ajax_load_btn').length; 7527 7528 if (th.closest('.ajax_load').length && !mobileBottomClicked) { 7529 th.removeClass('loading'); 7530 if (th.closest('.ajax_load').find('.js_append').length) { 7531 if (_this.closest('.catalog_in_content').length) { 7532 th.closest('.ajax_load').find('.js_append').append($('.inner_wrapper .js_wrapper_items>', html)); //need for brands & landings 7533 } else if (_this.closest('.catalog.search').length) { 7534 th.closest('.ajax_load').find('.js_append').append($('.js_append>', html)); 7535 } else { 7536 th.closest('.ajax_load').find('.js_append').append(html); 7537 } 7538 th.closest('.ajax_load').find('.bottom_nav_wrapper').remove(); 7539 } else { 7540 if ($('.display_list').length) { 7541 $('.display_list').append(html); 7542 th.closest('.display_list').find('.bottom_nav_wrapper').remove(); 7543 } else if ($('.block_list').length) { 7544 $('.block_list').append(html); 7545 touchItemBlock('.catalog_item a'); 7546 th.closest('.block_list').find('.bottom_nav_wrapper').remove(); 7547 } else if ($('.module_products_list').length) { 7548 $('.module_products_list > tbody').append(html); 7549 th.closest('.module_products_list > tbody').find('.bottom_nav_wrapper').remove(); 7550 } 7551 } 7552 7553 setStatusButton(); 7554 checkLinkedArticles(); 7555 checkLinkedBlocks('.linked-banners-list'); 7556 7557 var eventdata = { action: 'ajaxContentLoadedTab' }; 7558 BX.onCustomEvent('onAjaxSuccess', [eventdata]); 7559 _this.closest('.bottom_nav').html(bottomNavHtml); 7560 } else { 7561 var eventdata = { action: 'ajaxContentLoaded' }; 7562 7563 if ($('.banners-small.front').length) { 7564 $('.banners-small .items.row').append(html); 7565 $('.bottom_nav').html($('.banners-small .items.row .bottom_nav').html()); 7566 $('.banners-small .items.row .bottom_nav').remove(); 7567 if (hasBottomNav) { 7568 $('.banners-small .items.row').addClass('has-bottom-nav'); 7569 } else { 7570 $('.banners-small .items.row').removeClass('has-bottom-nav'); 7571 } 7572 } else { 7573 if (bottom_nav.data('append') !== undefined && bottom_nav.data('parent') !== undefined) { 7574 var target = html; 7575 if (bottom_nav.data('target') !== undefined) { 7576 target = $(html).find(bottom_nav.data('target')); 7577 } 7578 if (mobileBottomClicked || hasMobileBottomNav.length) { 7579 var mobileSliderNav = th.closest(bottom_nav.data('parent')).find('.bottom_nav.mobile_slider'); 7580 if (mobileSliderNav.length) { 7581 mobileSliderNav.before(target); 7582 } else { 7583 bottom_nav.before(target); 7584 } 7585 } else { 7586 th.closest(bottom_nav.data('parent')).find(bottom_nav.data('append')).append(target); 7587 } 7588 th.closest(bottom_nav.data('parent')).find(bottom_nav.data('append')).find('.bottom_nav_wrapper').remove(); 7589 7590 if (hasBottomNav) { 7591 if (bottomNavScrollClass !== undefined) { 7592 th.closest(bottom_nav.data('parent')).find(bottomNavScrollClass).addClass('has-bottom-nav'); 7593 } 7594 th.closest(bottom_nav.data('parent')).find(bottom_nav.data('append')).addClass('has-bottom-nav'); 7595 } else { 7596 if (bottomNavScrollClass !== undefined) { 7597 th.closest(bottom_nav.data('parent')).find(bottomNavScrollClass).removeClass('has-bottom-nav'); 7598 } 7599 th.closest(bottom_nav.data('parent')).find(bottom_nav.data('append')).removeClass('has-bottom-nav'); 7600 } 7601 7602 bottom_nav = th.closest(bottom_nav.data('parent')).find('.bottom_nav'); 7603 bottom_nav.html(bottomNavHtml); 7604 var icon = bottom_nav.find('.svg-inline-bottom_nav-icon'); 7605 icon.css('display', ''); 7606 7607 eventdata.container = th.closest(bottom_nav.data('parent')); 7608 } else { 7609 if (th.closest('.item-views').find('.items').length) { 7610 th.closest('.item-views').find('.items').append(html); 7611 } else { 7612 $(html).insertBefore($('.blog .bottom_nav')); 7613 } 7614 7615 bottom_nav.html($('.bottom_nav:hidden').html()); 7616 if (hasBottomNav) { 7617 th.closest('.item-views').find('.items').addClass('has-bottom-nav'); 7618 } else { 7619 th.closest('.item-views').find('.items').removeClass('has-bottom-nav'); 7620 } 7621 _this.closest('.item-views').find('.bottom_nav:hidden').remove(); 7622 } 7623 } 7624 7625 eventdata.content = html; 7626 eventdata.container = th; 7627 BX.onCustomEvent('onCompleteAction', [eventdata, th[0]]); 7628 7629 setTimeout(function () { 7630 $('.banners-small .item.normal-block').sliceHeight({ resize: false }); 7631 if ($('.item.slice-item').length) { 7632 $('.item.slice-item .title').sliceHeight({ resize: false }); 7633 $('.item.slice-item').sliceHeight({ resize: false }); 7634 } 7635 th.removeClass('loading'); 7636 if (bLoadingState) _this.removeClass('loadings'); 7637 }, 100); 7638 } 7639 BX.onCustomEvent('onHeaderProgressBarChange', [{}]); 7640 // initCountdown(); 7641 } 7642 7643 // form rating 7644 $(document).on('mouseenter', '.form .votes_block.with-text .item-rating', function () { 7645 var $this = $(this), 7646 index = $this.index(),
7647 ratingValue = $this.data('rating_value'), 7648 ratingMessage = $this.data('message'); 7649 7650 $(this).addClass('filed'); 7651 $this.siblings().each(function () { 7652 if ($(this).index() <= index) $(this).addClass('filed'); 7653 else $(this).removeClass('filed'); 7654 }); 7655 $this.closest('.votes_block').find('.rating_message').text(ratingMessage); 7656 }); 7657 7658 $(document).on('mouseleave', '.form .votes_block.with-text', function () { 7659 var $this = $(this), 7660 index = $this.data('rating'), 7661 ratingMessage = $this.closest('.votes_block').find('.rating_message').data('message'); 7662 7663 $this.find('.item-rating').each(function () { 7664 if ($(this).index() < index && index !== undefined) $(this).addClass('filed'); 7665 else $(this).removeClass('filed'); 7666 }); 7667 $this.closest('.votes_block').find('.rating_message').text(ratingMessage); 7668 }); 7669 7670 $(document).on('click', '.form .votes_block.with-text .item-rating', function () { 7671 var $this = $(this), 7672 rating = $this.closest('.votes_block').data('rating'), 7673 index = $this.index() + 1, 7674 ratingMessage = $this.data('message'); 7675 7676 $this.closest('.votes_block').data('rating', index); 7677 if ($this.closest('.form-control').find('input[name=RATING]').length) { 7678 $this.closest('.form-control').find('input[name=RATING]').val(index); 7679 } else { 7680 $this.closest('.form-control').find('input[data-sid=RATING]').val(index); 7681 } 7682 $this.closest('.votes_block').find('.rating_message').data('message', ratingMessage); 7683 7684 $this.closest('.form').find('.error').remove(); 7685 }); 7686 7687 $(document).on('paste, change, keyup', '.form.blog-comment-fields input[required]', function () { 7688 let value = $(this).val(); 7689 7690 if (value.length) { 7691 $(this).closest('.form-group').find('label.error').remove(); 7692 } 7693 }); 7694 7695 //set cookie for basket link click 7696 $(document).on( 7697 'click', 7698 '.bx_ordercart_order_table_container .control > a, .basket-item-actions-remove, a[data-entity=basket-item-remove-delayed]', 7699 function (e) { 7700 $.removeCookie('click_basket', { path: '/' }); 7701 $.cookie('click_basket', 'Y', { path: '/' }); 7702 } 7703 ); 7704 7705 $(document).on('click', '.bx_compare .tabs-head li', function () { 7706 var url = $(this).find('.sortbutton').data('href'); 7707 BX.showWait(BX('bx_catalog_compare_block')); 7708 $.ajax({ 7709 url: url, 7710 data: { ajax_action: 'Y' }, 7711 success: function (html) { 7712 history.pushState(null, null, url); 7713 $('#bx_catalog_compare_block').html(html); 7714 BX.closeWait(); 7715 }, 7716 }); 7717 }); 7718 var hoveredTrs; 7719 $(document).on( 7720 { 7721 mouseover: function (e) { 7722 var _ = $(this); 7723 var tbodyIndex = _.closest('tbody').index() + 1; //+1 for nth-child 7724 var trIndex = _.index() + 1; // +1 for nth-child 7725 hoveredTrs = $(e.delegateTarget) 7726 .find('.data_table_props') 7727 .children(':nth-child(' + tbodyIndex + ')') 7728 .children(':nth-child(' + trIndex + ')') 7729 .addClass('hovered'); 7730 }, 7731 mouseleave: function (e) { 7732 if (hoveredTrs) hoveredTrs.removeClass('hovered'); 7733 }, 7734 }, 7735 '.bx_compare .data_table_props tbody>tr' 7736 ); 7737 $(document).on('click', '.fancy_zoom', function (e) { 7738 e.preventDefault(); 7739 var arPict = [], 7740 index = 0; 7741 $(this) 7742 .closest('.product-detail-gallery__container') 7743 .find('.product-detail-gallery__thmb-container .product-detail-gallery__item') 7744 .each(function () { 7745 var obImg = {}; 7746 obImg = { 7747 src: $(this).data('big'), 7748 thumb: $(this).find('img').data('src') || $(this).find('.img').attr('src'), 7749 // opts: { 7750 // caption: $(this).find("img").attr("alt"), 7751 // }, 7752 }; 7753 if ($(this).parent().hasClass('current')) { 7754 index = $(this).parent().index(); 7755 } 7756 arPict.push(obImg); 7757 }); 7758 if (!arPict.length) { 7759 arPict.push({ 7760 src: $(this).closest('.product-detail-gallery__container').find('.zoom_picture').data('xoriginal'), 7761 }); 7762 } 7763 if (typeof $.fn.fancybox !== 'function') { 7764 return; 7765 } 7766 $.fancybox.open( 7767 arPict, 7768 { 7769 tpl: { 7770 closeBtn: 7771 '<span title="' + 7772 BX.message('FANCY_CLOSE') + 7773 '" class="fancybox-item fancybox-close inline svg"><svg width="26" height="26" viewBox="0 0 26 26" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 24L24 2M2 2L24 24" stroke-width="4" stroke-linecap="round" stroke-linejoin="round"/></svg></span>', 7774 next: 7775 '<a title="' + 7776 BX.message('FANCY_NEXT') + 7777 '" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>', 7778 prev: 7779 '<a title="' + 7780 BX.message('FANCY_PREV') + 7781 '" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>', 7782 }, 7783 btnTpl: { 7784 close: 7785 '<button data-fancybox-close class="fancybox-button fancybox-button--close" title="{{CLOSE}}">' + 7786 '<i class="svg"><svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><path d="M2 24L24 2M2 2L24 24" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" /></svg></i>' + 7787 '</button>', 7788 7789 arrowLeft: 7790 '<button data-fancybox-prev class="fancybox-button fancybox-button--arrow_left" title="{{PREV}}">' + 7791 '<div><i class="svg left"><svg width="16" height="26" viewBox="0 0 15 26" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 13L0.585787 14.4142C-0.195262 13.6332 -0.195262 12.3668 0.585787 11.5858L2 13ZM11.5858 0.585786C12.3668 -0.195262 13.6332 -0.195262 14.4142 0.585786C15.1953 1.36683 15.1953 2.63317 14.4142 3.41421L11.5858 0.585786ZM14.4142 22.5858C15.1953 23.3668 15.1953 24.6332 14.4142 25.4142C13.6332 26.1953 12.3668 26.1953 11.5858 25.4142L14.4142 22.5858ZM0.585787 11.5858L11.5858 0.585786L14.4142 3.41421L3.41421 14.4142L0.585787 11.5858ZM3.41421 11.5858L14.4142 22.5858L11.5858 25.4142L0.585787 14.4142L3.41421 11.5858Z" fill="#999999"/></svg></i></div>' + 7792 '</button>', 7793 7794 arrowRight: 7795 '<button data-fancybox-next class="fancybox-button fancybox-button--arrow_right" title="{{NEXT}}">' + 7796 '<div><i class="svg right"><svg width="16" height="26" viewBox="0 0 15 26" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13 13L14.4142 14.4142C15.1953 13.6332 15.1953 12.3668 14.4142 11.5858L13 13ZM3.41421 0.585786C2.63317 -0.195262 1.36683 -0.195262 0.585786 0.585786C-0.195262 1.36683 -0.195262 2.63317 0.585786 3.41421L3.41421 0.585786ZM0.585786 22.5858C-0.195262 23.3668 -0.195262 24.6332 0.585786 25.4142C1.36683 26.1953 2.63317 26.1953 3.41421 25.4142L0.585786 22.5858ZM14.4142 11.5858L3.41421 0.585786L0.585786 3.41421L11.5858 14.4142L14.4142 11.5858ZM11.5858 11.5858L0.585786 22.5858L3.41421 25.4142L14.4142 14.4142L11.5858 11.5858Z" fill="white"/></svg></i></div>' + 7797 '</button>', 7798 }, 7799 touch: 'enabled', 7800 loop: false, 7801 buttons: [ 7802 // "zoom", 7803 //"share", 7804 // "slideShow", 7805 //"fullScreen", 7806 //"download", 7807 // "thumbs", 7808 'close', 7809 ], 7810 thumbs: { 7811 autoStart: true, 7812 }, 7813 onActivate: function (instance) { 7814 InitFancyboxThumbnailsGallery(instance); 7815 }, 7816 beforeShow: function (instance, current) { 7817 if ($('.fancybox-thumbs .swiper').length) { 7818 const swiper = $('.fancybox-thumbs .swiper').data('swiper'); 7819 swiper.slideTo(current.index); 7820 } 7821 }, 7822 }, 7823 index 7824 ); 7825 }); 7826 7827 /*tabs*/ 7828 $('.tabs_section .tabs-head li').on('click', function () { 7829 if (!$(this).is('.current')) { 7830 $('.tabs_section .tabs-head li').removeClass('current'); 7831 $(this).addClass('current'); 7832 $('.tabs_section ul.tabs_content li').removeClass('current'); 7833 if ($(this).attr('id') == 'product_reviews_tab') { 7834 $('.shadow.common').hide(); 7835 $('#reviews_content').show(); 7836 } else { 7837 $('.shadow.common').show(); 7838 $('#reviews_content').hide(); 7839 $('.tabs_section ul.tabs_content > li:eq(' + $(this).index() + ')').addClass('current'); 7840 } 7841 } 7842 }); 7843 7844 /*open first section slide*/ 7845 setTimeout(function () { 7846 $('.jobs_wrapp .item:first .name tr').trigger('click'); 7847 }, 300); 7848 7849 $('.choise').on('click', function () { 7850 var _this = $(this); 7851 if (typeof _this.attr('data-block') != 'undefined') { 7852 if ($(_this.attr('data-block')).closest('.tab-pane').length) { 7853 $('.ordered-block a[href="#' + $(_this.attr('data-block')).closest('.tab-pane').attr('id') + '"]').click(); 7854 _this.data('block', '.ordered-block.tabs-block'); 7855 $(_this.data('block')).data('offset', -100); 7856 } else { 7857 $(_this.data('block')).data('offset', -100); 7858 } 7859 scrollToBlock(_this.data('block')); 7860 } 7861 }); 7862 7863 $(document).on('click', '.buy_block .slide_offer', function () { 7864 scroll_block($('.js-offers-scroll')); 7865 }); 7866 $('.share > .share_wrapp .text').on('click', function () { 7867 var block = $(this).parent().find('.shares'); 7868 if (!block.is(':visible') && !$(this).closest('.share.top').length) $('#content').css('z-index', 3); 7869 block.fadeToggle(100, function () { 7870 if (!block.is(':visible')) $('#content').css('z-index', 2); 7871 }); 7872 }); 7873 $('html, body').on('mousedown', function (e) { 7874 if (typeof e.target.className == 'string' && e.target.className.indexOf('adm') < 0) { 7875 e.stopPropagation(); 7876 $('div.shares').fadeOut(100, function () { 7877 $('#content').css('z-index', 2); 7878 $('.price_txt .share_wrapp').removeClass('opened'); 7879 }); 7880 $('.search_middle_block').removeClass('active_wide'); 7881 } 7882 }); 7883 $('.share_wrapp') 7884 .find('*') 7885 .on('mousedown', function (e) { 7886 e.stopPropagation(); 7887 }); 7888 7889 $('.price_txt .share_wrapp .text').click(function () { 7890 $(this).parent().toggleClass('opened'); 7891 $(this).parent().find('.shares').fadeToggle(); 7892 }); 7893 7894 $(document).on('click', '.reviews-collapse-link', function () { 7895 $('.reviews-reply-form').slideToggle(); 7896 }); 7897 7898 /* accordion action*/ 7899 $('.panel-collapse').on('hidden.bs.collapse', function () { 7900 $(this).parent().toggleClass('opened'); 7901 }); 7902 $('.panel-collapse').on('show.bs.collapse', function () { 7903 $(this).parent().toggleClass('opened'); 7904 }); 7905 7906 /* accordion */ 7907 $('.accordion-head').on('click', function (e) { 7908 e.preventDefault(); 7909 if (!$(this).next().hasClass('collapsing')) { 7910 $(this).toggleClass('accordion-open'); 7911 $(this).toggleClass('accordion-close'); 7912 } 7913 }); 7914 7915 /* progress bar */ 7916 $('[data-appear-progress-animation]').iAppear( 7917 function () { 7918 var $this = $(this);
7919 var delay = $this.attr('data-appear-animation-delay') ? $this.attr('data-appear-animation-delay') : 1; 7920 if (delay > 1) $this.css('animation-delay', delay + 'ms'); 7921 $this.addClass($this.attr('data-appear-animation')); 7922 7923 setTimeout(function () { 7924 $this.animate( 7925 { 7926 width: $this.attr('data-appear-progress-animation'), 7927 }, 7928 1500, 7929 'easeOutQuad', 7930 function () { 7931 $this.find('.progress-bar-tooltip').animate( 7932 { 7933 opacity: 1, 7934 }, 7935 500, 7936 'easeOutQuad' 7937 ); 7938 } 7939 ); 7940 }, delay); 7941 }, 7942 { 7943 rootMargin: '-50px 0px -50px 0px', 7944 accX: 0, 7945 accY: -50, 7946 } 7947 ); 7948 7949 // initCountdown(); 7950 7951 /* portfolio item */ 7952 if ($('.item.animated-block').length) { 7953 $('.item.animated-block').iAppear( 7954 function () { 7955 var $this = $(this); 7956 7957 $this.addClass($this.data('animation')).addClass('visible'); 7958 }, 7959 { accX: 0, accY: 150 } 7960 ); 7961 } 7962 7963 /* flexslider appear */ 7964 if ($('.appear-block').length) { 7965 $('.appear-block').iAppear( 7966 function () { 7967 var $this = $(this); 7968 $this.removeClass('appear-block'); 7969 $this.find('.appear-block').removeClass('appear-block'); 7970 InitOwlSlider(); 7971 if (typeof initSwiperSlider === 'function') { 7972 initSwiperSlider(); 7973 } 7974 }, 7975 { 7976 rootMargin: '150px 0px 150px 0px', 7977 accX: 0, 7978 accY: 150, 7979 } 7980 ); 7981 } 7982 7983 /* js-load-block appear */ 7984 if ($('.js-load-block').length) { 7985 var objUrl = parseUrlQuery(); 7986 var bClearCache = false; 7987 if ('clear_cache' in objUrl) { 7988 if (objUrl.clear_cache == 'Y') { 7989 bClearCache = true; 7990 } 7991 } 7992 7993 var items = []; 7994 var bIdle = true; 7995 var insertNextBlockContent = function () { 7996 if (bIdle && items.length) { 7997 bIdle = false; 7998 const item = items.pop(); 7999 8000 // get content 8001 $.get(item.url).done(function (html) { 8002 item.content = html; 8003 item.content = $.trim(item.content); 8004 8005 // remove /bitrix/js/main/core/core_window.js if it was loaded already 8006 if (item.content.indexOf('/bitrix/js/main/core/core_window.') !== -1 && BX.WindowManager) { 8007 item.content = item.content.replace( 8008 /<script src="\/bitrix\/js\/main\/core\/core_window\.[^>]*><\/script>/gm, 8009 '' 8010 ); 8011 } 8012 8013 // remove /bitrix/js/currency/core_currency.js if it was loaded already 8014 if ( 8015 item.content.indexOf('/bitrix/js/currency/core_currency.') !== -1 && 8016 typeof BX.Currency === 'object' && 8017 BX.Currency.defaultFormat 8018 ) { 8019 item.content = item.content.replace( 8020 /<script src="\/bitrix\/js\/currency\/core_currency\.[^>]*><\/script>/gm, 8021 '' 8022 ); 8023 } 8024 8025 // remove /bitrix/js/main/pageobject/pageobject.js if it was loaded already 8026 if (item.content.indexOf('/bitrix/js/main/pageobject/pageobject.') !== -1 && BX.PageObject) { 8027 item.content = item.content.replace( 8028 /<script src="\/bitrix\/js\/main\/pageobject\/pageobject\.[^>]*><\/script>/gm, 8029 '' 8030 ); 8031 } 8032 8033 // remove /bitrix/js/main/polyfill/promise/js/promise.js if it not need 8034 if ( 8035 item.content.indexOf('/bitrix/js/main/polyfill/promise/js/promise.') !== -1 && 8036 typeof window.Promise !== 'undefined' && 8037 window.Promise.toString().indexOf('[native code]') !== -1 8038 ) { 8039 item.content = item.content.replace( 8040 /<script src="\/bitrix\/js\/main\/polyfill\/promise\/js\/promise\.[^>]*><\/script>/gm, 8041 '' 8042 ); 8043 } 8044 8045 if ( 8046 typeof MutationObserver === 'function' && 8047 document.querySelector('body').classList.contains('detail_page') 8048 ) { 8049 const observer = new MutationObserver(function (list, observer) { 8050 const $curBlock = list[0].target; 8051 const curBlockBounds = $curBlock.getBoundingClientRect(); 8052 8053 if ($curBlock.parentElement.classList.contains('complect-block')) { 8054 $curBlock.parentElement.classList.add('loaded'); 8055 } 8056 8057 if (curBlockBounds.top < 0 && curBlockBounds.bottom >= 0) { 8058 const offsetTop = window.scrollY + Math.round($curBlock.offsetHeight) - 100; 8059 window.scrollTo(0, offsetTop); 8060 } 8061 8062 observer.disconnect(); 8063 }); 8064 8065 observer.observe(item.$context[0], { 8066 childList: true, 8067 }); 8068 } 8069 8070 const ob = BX.processHTML(item.content); 8071 8072 // stop ya metrika webvisor DOM indexer 8073 pauseYmObserver(); 8074 8075 item.$context.removeAttr('data-file').removeClass('loader_circle'); 8076 item.$target.innerHTML = ob.HTML; 8077 8078 BX.ajax.processScripts(ob.SCRIPT); 8079 8080 var eventdata = { action: 'jsLoadBlock' }; 8081 BX.onCustomEvent('onCompleteAction', [eventdata, item.$context]); 8082 8083 BX.onCustomEvent('onHeaderProgressBarChange', [{}]); 8084 8085 // resume ya metrika webvisor 8086 // 500ms 8087 setTimeout(resumeYmObserver, 500); 8088 8089 bIdle = true; 8090 insertNextBlockContent(); 8091 }); 8092 } 8093 }; 8094 8095 $('.js-load-block').iAppear( 8096 function () { 8097 var $this = $(this); 8098 8099 if ($this.data('file')) { 8100 const add_url = new URL(location.origin + $this.data('file')); 8101 8102 if (bClearCache) add_url.searchParams.set('clear_cache', 'Y'); 8103 if ($this.data('block')) add_url.searchParams.set('BLOCK', $this.data('block')); 8104 if ($this.data('show_all')) add_url.searchParams.set('SHOW_ALL', 'Y'); 8105 8106 const $target = $this.data('appendTo') 8107 ? $this.find($this.data('appendTo'))[0] 8108 : $this.find('> div[id*="bx_incl_"]').length 8109 ? $this.find('> div[id*="bx_incl_"]')[0] 8110 : $this[0]; 8111 8112 items.unshift({ 8113 $target: $target, 8114 $context: $this, 8115 url: add_url, 8116 }); 8117 insertNextBlockContent(); 8118 } 8119 }, 8120 { 8121 rootMargin: isMobile ? '300px 0px 300px 0px' : '150px 0px 150px 0px', 8122 accX: 0, 8123 accY: isMobile ? 300 : 150, 8124 } 8125 ); 8126 } 8127 8128 /*show ajax store amount product*/ 8129 $(document).on('click', '.js-show-info-block', function (e) { 8130 var $this = $(this); 8131 8132 //check on ".cost.prices" need for popup price in mobile 8133 //if (window.matchMedia("(max-width: 500px)").matches && !$this.closest(".cost.prices").length) { 8134 //return; 8135 //} 8136 8137 e.stopPropagation(); 8138 $('.js-info-block').fadeOut(); 8139 8140 if ($this.hasClass('opened')) { 8141 $('.js-show-info-block').removeClass('opened'); 8142 } else { 8143 $('.js-show-info-block').removeClass('opened'); 8144 $this.addClass('opened'); 8145 } 8146 8147 if (!$this.siblings('.js-info-block').length) { 8148 var dataFields = $this.closest('.sa_block').data('fields'); 8149 dataFields = dataFields == 'null' || dataFields === undefined ? '' : dataFields; 8150 var dataUserFields = $this.closest('.sa_block').data('user-fields'); 8151 dataUserFields = dataUserFields == 'null' || dataUserFields === undefined ? '' : dataUserFields; 8152 var objUrl = parseUrlQuery(), 8153 add_url = ''; 8154 if ('clear_cache' in objUrl) { 8155 if (objUrl.clear_cache == 'Y') add_url += '?clear_cache=Y'; 8156 } 8157 8158 var obPostParams = { 8159 ajax: 'Y', 8160 ELEMENT_ID: $this.data('id'), 8161 FIELDS: dataFields, 8162 USER_FIELDS: dataUserFields, 8163 STORES: $this.closest('.sa_block').data('stores') || '', 8164 }; 8165 8166 $this.addClass('loadings'); 8167 $.post(arAsproOptions['SITE_DIR'] + 'ajax/productStoreAmountCompact.php' + add_url, obPostParams).done(function ( 8168 html 8169 ) { 8170 $this.removeClass('loadings'); 8171 $(html).appendTo($this.closest('.sa_block')); 8172 8173 $this 8174 .siblings('.js-info-block') 8175 .find('.more-btn a') 8176 .attr('href', $this.closest('.item_info').find('a').attr('href')); 8177 // InitScrollBar(); 8178 8179 var eventdata = { action: 'jsShowStores' }; 8180 BX.onCustomEvent('onCompleteAction', [eventdata, $this]); 8181 }); 8182 } else { 8183 if ($this.hasClass('opened')) { 8184 $this 8185 .siblings('.js-info-block') 8186 .find('.more-btn a') 8187 .attr('href', $this.closest('.item_info').find('a').attr('href')); 8188 $this.siblings('.js-info-block').fadeIn(); 8189 // InitScrollBar(); 8190 } else { 8191 $this.siblings('.js-info-block').fadeOut(); 8192 } 8193 } 8194 }); 8195 $(document).on('click', '.js-info-block .svg-inline-close', function () { 8196 $('.js-show-info-block').removeClass('opened'); 8197 $(this).closest('.js-info-block').fadeOut(); 8198 }); 8199 /**/ 8200 8201 /*adaptive menu start*/ 8202 $('.menu.adaptive').on('click', function () { 8203 $(this).toggleClass('opened'); 8204 if ($(this).hasClass('opened')) { 8205 $('.mobile_menu').toggleClass('opened').slideDown(); 8206 } else {
8207 $('.mobile_menu').toggleClass('opened').slideUp(); 8208 } 8209 }); 8210 $('.mobile_menu .has-child >a').on('click', function (e) { 8211 var parentLi = $(this).parent(); 8212 e.preventDefault(); 8213 parentLi.toggleClass('opened'); 8214 parentLi.find('.dropdown').slideToggle(); 8215 }); 8216 8217 $('.mobile_menu .search-input-div input').on('keyup', function (e) { 8218 var inputValue = $(this).val(); 8219 $('.center_block .stitle_form input').val(inputValue); 8220 if (e.keyCode == 13) { 8221 $('.center_block .stitle_form form').submit(); 8222 } 8223 }); 8224 8225 $('.center_block .stitle_form input').on('keyup', function (e) { 8226 var inputValue = $(this).val(); 8227 $('.mobile_menu .search-input-div input').val(inputValue); 8228 if (e.keyCode == 13) { 8229 $('.center_block .stitle_form form').submit(); 8230 } 8231 }); 8232 8233 $('.mobile_menu .search-button-div button').on('click', function (e) { 8234 e.preventDefault(); 8235 var inputValue = $(this).parents().find('input').val(); 8236 $('.center_block .stitle_form input').val(inputValue); 8237 $('.center_block .stitle_form form').submit(); 8238 }); 8239 /*adaptive menu end*/ 8240 8241 $(document).on('click', '.mega-menu .dropdown-menu', function (e) { 8242 e.stopPropagation(); 8243 }); 8244 8245 $(document).on('click', '.mega-menu .dropdown-toggle.more-items', function (e) { 8246 e.preventDefault(); 8247 }); 8248 8249 $(document).on('mouseenter', '#headerfixed .table-menu .dropdown-menu .dropdown-submenu', function () { 8250 setTimeout(function () { 8251 CheckTopVisibleMenu(); 8252 }, 275); 8253 }); 8254 8255 $('.mega-menu .search-item .search-icon, .menu-row #title-search .fa-close').on('click', function (e) { 8256 e.preventDefault(); 8257 $('.menu-row #title-search').toggleClass('hide'); 8258 }); 8259 8260 $('.mega-menu ul.nav .search input').on('keyup', function (e) { 8261 var inputValue = $(this).val(); 8262 $('.menu-row > .search input').val(inputValue); 8263 if (e.keyCode == 13) { 8264 $('.menu-row > .search form').submit(); 8265 } 8266 }); 8267 8268 $('.menu-row > .search input').on('keyup', function (e) { 8269 var inputValue = $(this).val(); 8270 $('.mega-menu ul.nav .search input').val(inputValue); 8271 if (e.keyCode == 13) { 8272 $('.menu-row > .search form').submit(); 8273 } 8274 }); 8275 8276 $('.mega-menu ul.nav .search button').on('click', function (e) { 8277 e.preventDefault(); 8278 var inputValue = $(this).parents('.search').find('input').val(); 8279 $('.menu-and-search .search input').val(inputValue); 8280 $('.menu-row > .search form').submit(); 8281 }); 8282 8283 $('.btn.btn-add').on('click', function () { 8284 $.ajax({ 8285 type: 'GET', 8286 url: arAsproOptions['SITE_DIR'] + 'ajax/clearBasket.php', 8287 success: function (data) { 8288 }, 8289 }); 8290 }); 8291 8292 $('.sort_display a').on('click', function () { 8293 $(this).siblings().removeClass('current'); 8294 $(this).addClass('current'); 8295 }); 8296 8297 /*detail order show payments*/ 8298 $('.sale-order-detail-payment-options-methods-info-change-link').on('click', function () { 8299 $(this).closest('.sale-order-detail-payment-options-methods-info').addClass('opened').siblings().addClass('opened'); 8300 }); 8301 8302 /*expand/hide filter values*/ 8303 $(document).on('click', '.expand_block', function () { 8304 togglePropBlock($(this)); 8305 }); 8306 8307 /*touch event*/ 8308 document.addEventListener( 8309 'touchend', 8310 function (event) { 8311 if (!$(event.target).closest('.menu-item').length && !$(event.target).hasClass('menu-item')) { 8312 $('.menu-row .dropdown-menu').css({ display: 'none', opacity: 0 }); 8313 $('.menu-item').removeClass('hover'); 8314 $('.bx-breadcrumb-item.drop').removeClass('hover'); 8315 } 8316 if (!$(event.target).closest('.menu.topest').length) { 8317 if (window.matchMedia('(max-width: 991px)').matches) { 8318 $('.menu.topest').css({ overflow: 'hidden' }); 8319 } 8320 $('.menu.topest > li').removeClass('hover'); 8321 } 8322 if (!$(event.target).closest('.full.has-child').length) { 8323 $('.menu_top_block.catalog_block li').removeClass('hover'); 8324 } 8325 if (!$(event.target).closest('.basket_block').length) { 8326 $('.basket_block .link').removeClass('hover'); 8327 $('.basket_block .basket_popup_wrapp').slideUp(); 8328 } 8329 if (!$(event.target).closest('.catalog_item').length) { 8330 var tabsContentUnhoverHover = $('.tab:visible').attr('data-unhover') * 1; 8331 $('.tab:visible').stop().animate({ height: tabsContentUnhoverHover }, 100); 8332 $('.tab:visible').find('.catalog_item').removeClass('hover'); 8333 $('.tab:visible').find('.catalog_item .buttons_block').stop().fadeOut(233); 8334 if ($('.catalog_block').length) { 8335 $('.catalog_block').find('.catalog_item_wrapp').removeClass('hover'); 8336 $('.catalog_block').find('.catalog_item').removeClass('hover'); 8337 } 8338 } 8339 //togglePropBlock($(event.target)); 8340 }, 8341 false 8342 ); 8343 8344 touchMenu('.menu-row .menu-item'); 8345 touchTopMenu('.menu.topest li'); 8346 touchLeftMenu('.menu_top_block:not(.in-search) li.full'); 8347 touchBreadcrumbs('.bx-breadcrumb-item.drop'); 8348 8349 $(document).on('keyup', '.coupon .input_coupon input', function () { 8350 if ($(this).val().length) { 8351 $(this).removeClass('error'); 8352 $(this).closest('.input_coupon').find('.error').remove(); 8353 } else { 8354 $(this).addClass('error'); 8355 $('<label class=\'error\'>' + BX.message('INPUT_COUPON') + '</label>').insertBefore($(this)); 8356 } 8357 }); 8358 // showPhoneMask("input[autocomplete=tel]"); 8359 BX.addCustomEvent(window, 'onAjaxSuccessFilter', function (e) { 8360 setBasketStatusBtn(); 8361 checkLinkedArticles(); 8362 checkLinkedBlocks('.linked-banners-list'); 8363 }); 8364 8365 $(document).on('click', '.block_container .items .item.initied', function () { 8366 var _this = $(this), 8367 itemID = _this.data('id'), 8368 animationTime = 200; 8369 8370 _this.closest('.items').fadeOut(animationTime, function () { 8371 _this.closest('.block_container').find('.detail_items').fadeIn(animationTime); 8372 _this 8373 .closest('.block_container') 8374 .find('.detail_items .item[data-id=' + itemID + ']') 8375 .fadeIn(animationTime); 8376 8377 var arCoordinates = _this.data('coordinates').split(','); 8378 8379 if (typeof map !== 'undefined') map.setCenter([arCoordinates[0], arCoordinates[1]], 15); 8380 }); 8381 }); 8382 8383 $(document).on('click', '.block_container .top-close', function () { 8384 var _this = $(this).closest('.block_container').find('.detail_items .item:visible'), 8385 animationTime = 200; 8386 _this.fadeOut(animationTime); 8387 _this 8388 .closest('.block_container') 8389 .find('.detail_items') 8390 .fadeOut(animationTime, function () { 8391 _this.closest('.block_container').find('.items').fadeIn(animationTime); 8392 8393 if (typeof map !== 'undefined' && typeof clusterer !== 'undefined') { 8394 map.setBounds(clusterer.getBounds(), { 8395 zoomMargin: 40, 8396 // checkZoomRange: true 8397 }); 8398 } 8399 }); 8400 }); 8401 8402 BX.addCustomEvent(window, 'onAjaxSuccess', function (e) { 8403 if (e != 'OK') { 8404 initSelects(document); 8405 InitOrderCustom(); 8406 // showPhoneMask("input[autocomplete=tel]"); 8407 8408 if (arAsproOptions['PAGES']['CATALOG_PAGE'] && $('.catalog_detail').length && !$('.fast_view_frame').length) { 8409 const leftBlock = $('.main-catalog-wrapper > .left_block'); 8410 const rightBlock = $('.right_block'); 8411 8412 if (!leftBlock.length && rightBlock.hasClass('wide_N')) { 8413 rightBlock.removeClass('wide_N').addClass('wide_Y'); 8414 } else if (leftBlock.length && rightBlock.hasClass('wide_Y')) { 8415 rightBlock.removeClass('wide_Y').addClass('wide_N'); 8416 } 8417 8418 $('.bx_filter').remove(); 8419 InitOwlSlider(); 8420 } 8421 8422 if (arAsproOptions['PAGES']['CATALOG_PAGE']) { 8423 // initCountdown(); 8424 8425 if (typeof window['stickySidebar'] !== 'undefined') window['stickySidebar'].updateSticky(); 8426 } 8427 8428 if (typeof orderActions === 'function') { 8429 orderActions(e); 8430 } 8431 8432 if (e && typeof e === 'object' && 'action' in e && e.action === 'ajaxContentLoadedTab') { 8433 lazyLoadPagenBlock(); 8434 } 8435 8436 InitStickySideBar(); 8437 } 8438 }); 8439 8440 //event for default basket quantity change 8441 BX.addCustomEvent(window, 'OnBasketChange', function (e) { 8442 if (arAsproOptions['PAGES']['BASKET_PAGE']) { 8443 var summ = 0, 8444 title = ''; 8445 8446 if (typeof BX.Sale !== 'undefined') { 8447 if (typeof BX.Sale.BasketComponent !== 'undefined') { 8448 summ = BX.Sale.BasketComponent.result.allSum; 8449 title = BX.message('JS_BASKET_COUNT_TITLE').replace('SUMM', summ); 8450 } 8451 } else { 8452 summ = $('#allSum_FORMATED') 8453 .html() 8454 .replace(/ /g, ' '); 8455 title = BX.message('JS_BASKET_COUNT_TITLE').replace('SUMM', summ); 8456 } 8457 console.log('summ') 8458 console.log(summ) 8459 8460 if ($('.js-basket-block .wrap .prices').length) $('.js-basket-block .wrap .prices').html(summ); 8461 if ($('a.basket-link.basket').length) $('a.basket-link.basket').attr('title', title); 8462 if ($('.basket_fly .opener .basket_count').length) $('.basket_fly .opener .basket_count').attr('title', title); 8463 } 8464 }); 8465}); 8466 8467if (!funcDefined('setBasketStatusBtn')) { 8468 setBasketStatusBtn = function (type) { 8469 var bSync = typeof type !== undefined; 8470 if (typeof arBasketAspro !== 'undefined') { 8471 if ('BASKET' in arBasketAspro) { 8472 // basket items 8473 if (arBasketAspro.BASKET) { 8474 for (var i in arBasketAspro.BASKET) { 8475 $('.to-cart[data-item=' + i + ']').hide(); 8476 $('.counter_block[data-item=' + i + ']') 8477 .closest('.counter_block_inner') 8478 .hide(); 8479 $('.counter_block[data-item=' + i + ']').hide(); 8480 $('.in-cart[data-item=' + i + ']').show(); 8481 $('.in-cart[data-item=' + i + ']') 8482 .closest('.button_block') 8483 .addClass('wide'); 8484 8485 $('.wish_item.to[data-item=' + i + ']').show(); 8486 $('.wish_item.in[data-item=' + i + ']').hide(); 8487 8488 if ($('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .basket_item_add').length) { 8489 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .basket_item_add').addClass('added'); 8490 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .basket_item_add').attr( 8491 'title', 8492 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .basket_item_add').data('title2') 8493 ); 8494 } 8495 } 8496 } 8497 } 8498 8499 /*services*/ 8500 if ('SERVICES' in arBasketAspro) { 8501 // services items 8502 $needFillServices = $('.buy_services_wrap[data-parent_product]').length; 8503 if (arBasketAspro.SERVICES && $needFillServices) { 8504 for (var i in arBasketAspro.SERVICES) { 8505 var serviceItem = $( 8506 '.buy_services_wrap[data-parent_product=' + 8507 arBasketAspro.SERVICES[i].link_id + 8508 '] .services-item[data-item_id=' + 8509 arBasketAspro.SERVICES[i].item_id + 8510 ']' 8511 ); 8512 serviceItem.find('input[name="buy_switch_services"]').prop('checked', true); 8513 serviceItem.find('.counter_block input[name="quantity"]').val(arBasketAspro.SERVICES[i].quantity); 8514 serviceItem.addClass('services_on'); 8515 } 8516 } 8517 } 8518 /**/ 8519 8520 if ('DELAY' in arBasketAspro) { 8521 // delay items 8522 if (arBasketAspro.DELAY) { 8523 for (var i in arBasketAspro.DELAY) { 8524 $('.wish_item.to[data-item=' + i + ']').hide(); 8525 $('.wish_item.in[data-item=' + i + ']').show(); 8526 if ($('.wish_item[data-item=' + i + ']').find('.value.added').length) { 8527 //$('.wish_item[data-item='+i+']').addClass("added"); 8528 $('.wish_item[data-item=' + i + ']') 8529 .find('.value') 8530 .hide(); 8531 $('.wish_item[data-item=' + i + ']') 8532 .find('.value.added') 8533 .css('display', 'block'); 8534 } 8535 8536 $('.in-cart[data-item=' + i + ']').hide(); 8537 $('.to-cart[data-item=' + i + ']').show(); 8538 $('.to-cart[data-item=' + i + ']') 8539 .closest('.counter_wrapp') 8540 .find('.counter_block_inner') 8541 .show(); 8542 $('.to-cart[data-item=' + i + ']') 8543 .closest('.counter_wrapp') 8544 .find('.counter_block') 8545 .show(); 8546 $('.to-cart[data-item=' + i + ']') 8547 .closest('.button_block') 8548 .removeClass('wide'); 8549 8550 if ($('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .wish_item_add').length) { 8551 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .wish_item_add').addClass('added'); 8552 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .wish_item_add').attr( 8553 'title', 8554 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .wish_item_add').data('title2') 8555 ); 8556 } 8557 } 8558 } 8559 } 8560 8561 if ('SUBSCRIBE' in arBasketAspro) { 8562 // subscribe items 8563 if (arBasketAspro.SUBSCRIBE) { 8564 for (var i in arBasketAspro.SUBSCRIBE) { 8565 $('.to-subscribe[data-item=' + i + ']').hide(); 8566 $('.in-subscribe[data-item=' + i + ']').show(); 8567 } 8568 } 8569 } 8570 8571 if ('COMPARE' in arBasketAspro) { 8572 // compare items 8573 if (arBasketAspro.COMPARE) { 8574 for (var i in arBasketAspro.COMPARE) { 8575 $('.compare_item.to[data-item=' + i + ']').hide(); 8576 $('.compare_item.in[data-item=' + i + ']').show(); 8577 if ($('.compare_item[data-item=' + i + ']').find('.value.added').length) { 8578 //$('.compare_item[data-item='+i+']').addClass("added"); 8579 $('.compare_item[data-item=' + i + ']') 8580 .find('.value') 8581 .hide(); 8582 $('.compare_item[data-item=' + i + ']') 8583 .find('.value.added') 8584 .css('display', 'block'); 8585 } 8586 8587 if ($('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .compare_item_add').length) { 8588 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .compare_item_add').addClass('added'); 8589 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .compare_item_add').attr( 8590 'title', 8591 $('.banner_buttons.with_actions .wraps_buttons[data-id=' + i + '] .compare_item_add').data('title2') 8592 ); 8593 } 8594 } 8595 } 8596 } 8597 } 8598 }; 8599} 8600 8601if (!funcDefined('togglePropBlock')) { 8602 togglePropBlock = function (className) { 8603 var all_props_block = className.closest('.bx_filter_parameters_box_container').find('.hidden_values'); 8604 if (all_props_block.length && (className.hasClass('inner_text') || className.hasClass('expand_block'))) { 8605 if (all_props_block.is(':visible')) { 8606 className.text(BX.message('FILTER_EXPAND_VALUES')); 8607 all_props_block.hide(); 8608 } else { 8609 className.text(BX.message('FILTER_HIDE_VALUES')); 8610 all_props_block.show(); 8611 } 8612 } 8613 }; 8614} 8615 8616if (!funcDefined('showPhoneMask')) { 8617 showPhoneMask = function (className) { 8618 if (typeof appAspro === 'object' && appAspro && appAspro.phone) { 8619 appAspro.phone.init($(className)); 8620 } 8621 // $(className).inputmask("mask", { mask: arAsproOptions["THEME"]["PHONE_MASK"], showMaskOnHover: false }); 8622 }; 8623} 8624 8625if (!funcDefined('getActualBasket')) { 8626 getActualBasket = function (iblockID, type, sync) { 8627 var data = ''; 8628 if (typeof iblockID !== 'undefined' && iblockID) { 8629 data = { iblockID: iblockID }; 8630 } 8631 $.ajax({ 8632 type: 'GET', 8633 url: arAsproOptions['SITE_DIR'] + 'ajax/actualBasket.php', 8634 data: data, 8635 success: function (data) { 8636 if (!$('.js_ajax').length) $('body').append('<div class="js_ajax"></div>'); 8637 $('.js_ajax').html(data); 8638 8639 if (typeof sync !== 'undefined') { 8640 setBasketStatusBtn(true); 8641 } 8642 8643 if (typeof type !== undefined) { 8644 var eventdata = { action: 'loadActualBasket' + type }; 8645 BX.onCustomEvent('onCompleteAction', [eventdata]); 8646 } 8647 }, 8648 }); 8649 }; 8650} 8651 8652if (!funcDefined('reloadBasketCounters')) { 8653 reloadBasketCounters = function (count, sync) { 8654 var data = ''; 8655 if (count) { 8656 $('.basket-link.basket .count, .wraps_icon_block.basket .count .items > span').text(count); 8657 } else { 8658 $.ajax({ 8659 type: 'GET', 8660 url: arAsproOptions['SITE_DIR'] + 'ajax/actualBasket.php', 8661 data: data, 8662 success: function (data) { 8663 if (!$('.js_ajax').length) $('body').append('<div class="js_ajax"></div>'); 8664 $('.js_ajax').html(data); 8665 var countServices = 8666 typeof arBasketAspro.SERVICES !== 'undefined' ? Object.keys(arBasketAspro.SERVICES).length : 0; 8667 $('.basket-link.basket .count, .wraps_icon_block.basket .count .items > span').text( 8668 Object.keys(arBasketAspro.BASKET).length + countServices 8669 ); 8670 $('.basket-link.delay .count, .wraps_icon_block.delay .count .items > span').text( 8671 Object.keys(arBasketAspro.DELAY).length 8672 ); 8673 $('.basket-link.compare .count, .wraps_icon_block.compare .count .items > span').text( 8674 Object.keys(arBasketAspro.COMPARE).length 8675 ); 8676 8677 if (typeof sync !== 'undefined') { 8678 setBasketStatusBtn(true); 8679 } 8680 }, 8681 }); 8682 } 8683 }; 8684} 8685 8686if (!funcDefined('updateBasketPreorders')) { 8687 updateBasketPreorders = function () { 8688 $.ajax({ 8689 url: arAsproOptions['SITE_DIR'] + 'ajax/getAjaxBasketPreorders.p
8689hp', 8690 type: 'POST', 8691 success: function (data) { 8692 if (data.AMOUNT_TOTAL && document.querySelector('.table-view--basket-preorders._amount-total .table-view--basket-preorders__value')) { 8693 document.querySelector('.table-view--basket-preorders._amount-total .table-view--basket-preorders__value').innerHTML = data.AMOUNT_TOTAL; 8694 } 8695 8696 if (data.PRICE_TOTAL && document.querySelector('.table-view--basket-preorders._price-total .table-view--basket-preorders__value')) { 8697 document.querySelector('.table-view--basket-preorders._price-total .table-view--basket-preorders__value').innerHTML = data.PRICE_TOTAL; 8698 } 8699 }, 8700 }); 8701 }; 8702} 8703 8704function touchMenu(selector) { 8705 if (isMobile) { 8706 if ($(selector).length) { 8707 $(selector).each(function () { 8708 var th = $(this); 8709 th.on('touchend', function (e) { 8710 var _th = $(e.target).closest('.menu-item'); 8711 8712 $('.menu.topest > li').removeClass('hover'); 8713 $('.menu_top_block.catalog_block li').removeClass('hover'); 8714 $('.bx-breadcrumb-item.drop').removeClass('hover'); 8715 8716 if (_th.find('.dropdown-menu').length && !_th.hasClass('hover')) { 8717 e.preventDefault(); 8718 e.stopPropagation(); 8719 _th.siblings().removeClass('hover'); 8720 _th.addClass('hover'); 8721 $('.menu-row .dropdown-menu').css({ display: 'none', opacity: 0 }); 8722 if (_th.hasClass('menu-item')) { 8723 _th.closest('.dropdown-menu').css({ display: 'block', opacity: 1 }); 8724 } 8725 if (_th.find('> .wrap > .dropdown-menu')) { 8726 _th.find('> .wrap > .dropdown-menu').css({ display: 'block', opacity: 1 }); 8727 } else if (_th.find('> .dropdown-menu')) { 8728 _th.find('> .dropdown-menu').css({ display: 'block', opacity: 1 }); 8729 } 8730 CheckTopVisibleMenu(); 8731 } else { 8732 var href = $(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'); 8733 if (href && href !== 'undefined') location.href = href; 8734 } 8735 }); 8736 }); 8737 } 8738 } else { 8739 $(selector).off(); 8740 } 8741} 8742 8743function touchTopMenu(selector) { 8744 if (isMobile) { 8745 if ($(selector).length) { 8746 $(selector).each(function () { 8747 var th = $(this); 8748 th.on('touchend', function (e) { 8749 var _th = $(e.target).closest('li'); 8750 8751 $('.menu-item').removeClass('hover'); 8752 $('.menu_top_block.catalog_block li').removeClass('hover'); 8753 $('.bx-breadcrumb-item.drop').removeClass('hover'); 8754 8755 if (_th.hasClass('more') && !_th.hasClass('hover')) { 8756 e.preventDefault(); 8757 e.stopPropagation(); 8758 _th.siblings().removeClass('hover'); 8759 _th.addClass('hover'); 8760 $('.menu.topest').css({ overflow: 'visible' }); 8761 } else { 8762 var href = $(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'); 8763 if (href && href !== 'undefined') location.href = href; 8764 } 8765 }); 8766 }); 8767 } 8768 } else { 8769 $(selector).off(); 8770 } 8771} 8772 8773function touchLeftMenu(selector) { 8774 if (isMobile) { 8775 if ($(selector).length) { 8776 $(selector).each(function () { 8777 var th = $(this); 8778 th.on('touchend', function (e) { 8779 var _th = $(e.target).closest('li'); 8780 8781 $('.menu-item').removeClass('hover'); 8782 $('.bx-breadcrumb-item.drop').removeClass('hover'); 8783 $('.menu.topest > li').removeClass('hover'); 8784 8785 if (_th.hasClass('has-child') && !_th.hasClass('hover')) { 8786 e.preventDefault(); 8787 e.stopPropagation(); 8788 _th.siblings().removeClass('hover'); 8789 _th.addClass('hover'); 8790 } else { 8791 var href = $(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'); 8792 if (href && href !== 'undefined') location.href = href; 8793 } 8794 }); 8795 }); 8796 } 8797 } else { 8798 $(selector).off(); 8799 } 8800} 8801 8802function touchBreadcrumbs(selector) { 8803 if (isMobile) { 8804 if ($(selector).length) { 8805 $(selector).each(function () { 8806 var th = $(this); 8807 th.on('touchend', function (e) { 8808 var _th = $(e.target).closest('.bx-breadcrumb-item'); 8809 8810 $('.menu-item').removeClass('hover'); 8811 $('.menu.topest > li').removeClass('hover'); 8812 $('.menu_top_block.catalog_block li').removeClass('hover'); 8813 8814 if (!_th.hasClass('hover')) { 8815 e.preventDefault(); 8816 e.stopPropagation(); 8817 _th.siblings().removeClass('hover'); 8818 _th.addClass('hover'); 8819 } else { 8820 _th.removeClass('hover'); 8821 var href = $(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'); 8822 if (href && href !== 'undefined') location.href = href; 8823 } 8824 }); 8825 }); 8826 } 8827 } else { 8828 $(selector).off(); 8829 } 8830} 8831 8832function touchItemBlock(selector) { 8833} 8834 8835function touchBasket(selector) { 8836 if (arAsproOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N') { 8837 if ($(window).outerWidth() > 600) { 8838 $(document) 8839 .find(selector) 8840 .on('touchend', function (e) { 8841 if ($(this).parent().find('.basket_popup_wrapp').length && !$(this).hasClass('hover')) { 8842 e.preventDefault(); 8843 e.stopPropagation(); 8844 $(this).addClass('hover'); 8845 $(this).parent().find('.basket_popup_wrapp').slideDown(); 8846 } 8847 }); 8848 } else { 8849 $(selector).off(); 8850 } 8851 } 8852} 8853 8854function showTotalSummItem(popup) { 8855 //show total summ 8856 if ( 8857 arAsproOptions['THEME']['SHOW_TOTAL_SUMM_TYPE'] == 'ALWAYS' && 8858 arAsproOptions['THEME']['SHOW_TOTAL_SUMM'] == 'Y' 8859 ) { 8860 var parent = 'body '; 8861 if (typeof popup === 'string' && popup == 'Y') parent = '.popup '; 8862 $(parent + '.counter_wrapp .counter_block input.text').each(function () { 8863 var _th = $(this); 8864 if (_th.data('product')) { 8865 var obProduct = _th.data('product'); 8866 if (typeof window[obProduct] == 'object') window[obProduct].setPriceAction('Y'); 8867 else setPriceItem(_th.closest('.main_item_wrapper'), _th.val()); 8868 } else setPriceItem(_th.closest('.main_item_wrapper'), _th.val()); 8869 }); 8870 } 8871} 8872 8873function initFull() { 8874 initSelects(document); 8875 initHoverBlock(document); 8876 touchItemBlock('.catalog_item a'); 8877 InitOrderCustom(); 8878 showTotalSummItem(); 8879 basketActions(); 8880 8881 if (typeof orderActions === 'function') { 8882 orderActions(); 8883 } 8884 8885 checkMobileRegion(); 8886} 8887 8888checkMobileRegion = function () { 8889 if ($('.confirm_region').length) { 8890 if (!$('.top_mobile_region').length) 8891 $( 8892 '<div class="top_mobile_region"><div class="confirm_wrapper"><div class="confirm_region"></div></div></div>' 8893 ).insertBefore($('#mobileheader')); 8894 $('.top_mobile_region .confirm_region').html($('.confirm_region').html()); 8895 } 8896}; 8897 8898if (!funcDefined('basketActions')) { 8899 basketActions = function () { 8900 if (arAsproOptions['PAGES']['BASKET_PAGE']) { 8901 checkMinPrice(); 8902 8903 //remove4Cart 8904 if (typeof BX.Sale !== 'undefined' && typeof BX.Sale === 'object') { 8905 if (typeof BX.Sale.BasketComponent !== 'undefined' && typeof BX.Sale.BasketComponent === 'object') { 8906 $(document).on('click', '.basket-item-actions-remove', function () { 8907 var basketID = $(this).closest('.basket-items-list-item-container').data('id'); 8908 if (BX.Sale.BasketComponent.items && BX.Sale.BasketComponent.items[basketID]) { 8909 delFromBasketCounter(BX.Sale.BasketComponent.items[basketID].PRODUCT_ID); 8910 } 8911 }); 8912 } 8913 } 8914 8915 if (location.hash) { 8916 var hash = location.hash.substring(1); 8917 if ($('#basket_toolbar_button_' + hash).length) $('#basket_toolbar_button_' + hash).trigger('click'); 8918 8919 if ($('.basket-items-list-header-filter a[data-filter="' + hash + '"]').length) 8920 $('.basket-items-list-header-filter a[data-filter="' + hash + '"]')[0].click(); 8921 } 8922 var svg_cross = 8923 '<svg xmlns="http://www.w3.org/2000/svg" width="8" height="8" viewBox="0 0 8 8"><path id="Rounded_Rectangle_568_copy_13" data-name="Rounded Rectangle 568 copy 13" class="cls-1" d="M1615.4,589l2.32,2.315a0.987,0.987,0,0,1,0,1.4,1,1,0,0,1-1.41,0L1614,590.4l-2.31,2.315a1,1,0,0,1-1.41,0,0.987,0.987,0,0,1,0-1.4L1612.6,589l-2.32-2.314a0.989,0.989,0,0,1,0-1.4,1,1,0,0,1,1.41,0l2.31,2.315,2.31-2.315a1,1,0,0,1,1.41,0,0.989,0.989,0,0,1,0,1.4Z" transform="translate(-1610 -585)"/></svg>'; 8924 8925 $('.bx_sort_container').append( 8926 '<div class="top_control basket_action"><span style="opacity:0;
8926" class="delete_all colored_theme_hover_text remove_all_basket">' + 8927 svg_cross + 8928 BX.message('BASKET_CLEAR_ALL_BUTTON') + 8929 '</span></div>' 8930 ); 8931 if ($('.basket-items-list-header-filter').length) { 8932 $('.basket-items-list-header-filter').append( 8933 '<div class="top_control basket_action"><span style="opacity:1;" class="delete_all colored_theme_hover_text remove_all_basket">' + 8934 svg_cross + 8935 BX.message('BASKET_CLEAR_ALL_BUTTON') + 8936 '</span></div>' 8937 ); 8938 8939 var cur_index = $('.basket-items-list-header-filter > a.active').index(); 8940 //fix delayed 8941 if (cur_index == 3) cur_index = 2; 8942 8943 if ($('.basket-items-list-header-filter > a.active').data('filter') == 'all') cur_index = 'all'; 8944 8945 $('.basket-items-list-header-filter .top_control .delete_all').data('type', cur_index); 8946 8947 $('.basket-items-list-header-filter > a').on('click', function () { 8948 var index = $(this).index(); 8949 8950 //fix delayed 8951 if (index == 3) index = 2; 8952 8953 if ($(this).data('filter') == 'all') index = 'all'; 8954 8955 $('.basket-items-list-header-filter .top_control .delete_all').data('type', index); 8956 }); 8957 } else { 8958 var cur_index = $('.bx_sort_container a.current').index(); 8959 $('.bx_sort_container .top_control .delete_all').data('type', cur_index); 8960 if ($('.bx_ordercart > div:eq(' + cur_index + ') table tbody tr td.item').length) 8961 $('.bx_sort_container .top_control .delete_all').css('opacity', 1); 8962 8963 $('.bx_ordercart .bx_ordercart_coupon #coupon').wrap('<div class="input"></div>'); 8964 8965 $('.bx_sort_container > a').on('click', function () { 8966 var index = $(this).index(); 8967 $('.bx_sort_container .top_control .delete_all').data('type', index); 8968 8969 if ($('.bx_ordercart > div:eq(' + index + ') table tbody tr td.item').length) 8970 $('.bx_sort_container .top_control .delete_all').css('opacity', 1); 8971 else $('.bx_sort_container .top_control .delete_all').css('opacity', 0); 8972 }); 8973 } 8974 8975 $('.basket_print').on('click', function () { 8976 // window.open(location.pathname+"?print=Y",'_blank'); 8977 window.print(); 8978 }); 8979 8980 $('.delete_all').on('click', function () { 8981 if (arAsproOptions['COUNTERS']['USE_BASKET_GOALS'] !== 'N') { 8982 var eventdata = { goal: 'goal_basket_clear', params: { type: $(this).data('type') } }; 8983 BX.onCustomEvent('onCounterGoals', [eventdata]); 8984 } 8985 $.post( 8986 arAsproOptions['SITE_DIR'] + 'ajax/action_basket.php', 8987 'TYPE=' + $(this).data('type') + '&CLEAR_ALL=Y', 8988 $.proxy(function (data) { 8989 location.reload(); 8990 }) 8991 ); 8992 }); 8993 8994 $('.bx_item_list_section .bx_catalog_item').sliceHeight({ 8995 row: '.bx_item_list_slide', 8996 item: '.bx_catalog_item' 8997 }); 8998 8999 BX.addCustomEvent('onAjaxSuccess', function (e) { 9000 checkMinPrice(); 9001 9002 var errorText = $.trim($('#warning_message').text()); 9003 $('#basket_items_list .error_text').detach(); 9004 if (errorText != '') { 9005 $('#warning_message').hide().text(''); 9006 $('#basket_items_list').prepend('<div class="error_text">' + errorText + '</div>'); 9007 } 9008 9009 if (typeof e === 'object' && e && 'BASKET_DATA' in e) { 9010 if ($('#ajax_basket').length) { 9011 reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'Y'); 9012 } 9013 if ($('#basket_line .basket_fly').length) { 9014 basketFly('open', 'N'); 9015 } 9016 } 9017 if (checkCounters('google')) { 9018 BX.unbindAll( 9019 BX.Sale.BasketComponent.getEntity( 9020 BX.Sale.BasketComponent.getCacheNode(BX.Sale.BasketComponent.ids.basketRoot), 9021 'basket-checkout-button' 9022 ) 9023 ); 9024 } 9025 }); 9026 if (checkCounters('google')) { 9027 BX.unbindAll( 9028 BX.Sale.BasketComponent.getEntity( 9029 BX.Sale.BasketComponent.getCacheNode(BX.Sale.BasketComponent.ids.basketRoot), 9030 'basket-checkout-button' 9031 ) 9032 ); 9033 } 9034 $(document).on( 9035 'click', 9036 '.bx_ordercart_order_pay_center .checkout, .basket-checkout-section-inner .basket-btn-checkout', 9037 function () { 9038 if (checkCounters('google')) { 9039 const gotoOrder = function () { 9040 BX.Sale.BasketComponent.checkOutAction(); 9041 }; 9042 checkoutCounter(1, 'start order', gotoOrder); 9043 } 9044 } 9045 ); 9046 } 9047 }; 9048} 9049 9050if (!funcDefined('checkMinPrice')) { 9051 checkMinPrice = function () { 9052 if (arAsproOptions['PAGES']['BASKET_PAGE']) { 9053 var summ_raw = 0, 9054 summ = 0; 9055 if ($('#allSum_FORMATED').length) { 9056 summ_raw = $('#allSum_FORMATED') 9057 .text() 9058 .replace(/[^0-9\.,]/g, ''); 9059 summ = parseFloat(summ_raw); 9060 if ($('#basket_items').length) { 9061 var summ = 0; 9062 $('#basket_items tr').each(function () { 9063 if (typeof $(this).data('item-price') !== 'undefined' && $(this).data('item-price')) 9064 summ += 9065 $(this).data('item-price') * 9066 $(this) 9067 .find('#QUANTITY_INPUT_' + $(this).attr('id')) 9068 .val(); 9069 }); 9070 } 9071 if (!$('.catalog_back').length) 9072 $('.bx_ordercart_order_pay_center').prepend( 9073 '<a href="' + 9074 arAsproOptions['PAGES']['CATALOG_PAGE_URL'] + 9075 '" class="catalog_back btn btn-default btn-lg white grey">' + 9076 BX.message('BASKET_CONTINUE_BUTTON') + 9077 '</a>' 9078 ); 9079 } 9080 9081 if (arAsproOptions['THEME']['SHOW_ONECLICKBUY_ON_BASKET_PAGE'] == 'Y') 9082 $('.basket-coupon-section').addClass('smallest'); 9083 9084 if (typeof BX.Sale !== 'undefined') { 9085 if (typeof BX.Sale.BasketComponent !== 'undefined' && typeof BX.Sale.BasketComponent.result !== 'undefined') 9086 summ = BX.Sale.BasketComponent.result.allSum; 9087 } 9088 9089 if (arAsproOptions['PRICES']['MIN_PRICE']) { 9090 if (arAsproOptions['PRICES']['MIN_PRICE'] > summ) { 9091 var svgMinPrice = 9092 '<i class="svg svg-inline-price colored_theme_svg" aria-hidden="true"><svg id="Group_278_copy" data-name="Group 278 copy" xmlns="http://www.w3.org/2000/svg" width="38" height="38" viewBox="0 0 38 38"><path id="Ellipse_305_copy_2" data-name="Ellipse 305 copy 2" class="clswm-1" d="M1851,561a19,19,0,1,1,19-19A19,19,0,0,1,1851,561Zm0-36a17,17,0,1,0,17,17A17,17,0,0,0,1851,525Zm3.97,10.375-0.03.266c-0.01.062-.02,0.127-0.03,0.188l-0.94,7.515h0a2.988,2.988,0,0,1-5.94,0H1848l-0.91-7.525c-0.01-.041-0.01-0.086-0.02-0.128l-0.04-.316h0.01c-0.01-.
9092125-0.04-0.246-0.04-0.375a4,4,0,0,1,8,0c0,0.129-.03.25-0.04,0.375h0.01ZM1851,533a2,2,0,0,0-2,2,1.723,1.723,0,0,0,.06.456L1850,543a1,1,0,0,0,2,0l0.94-7.544A1.723,1.723,0,0,0,1853,535,2,2,0,0,0,1851,533Zm0,14a3,3,0,1,1-3,3A3,3,0,0,1,1851,547Zm0,4a1,1,0,1,0-1-1A1,1,0,0,0,1851,551Z" transform="translate(-1832 -523)"></path> <path class="clswm-2 op-cls" d="M1853,543l-1,1h-2l-1-1-1-8,1-2,1-1h2l1,1,1,2Zm-1,5,1,1v2l-1,1h-2l-1-1v-2l1-1h2Z" transform="translate(-1832 -523)"></path></svg></i>'; 9093 if ($('.oneclickbuy.fast_order').length) $('.oneclickbuy.fast_order').remove(); 9094 9095 if ($('.basket-checkout-container').length) { 9096 if (!$('.icon_error_wrapper').length) { 9097 $('.basket-checkout-block.basket-checkout-block-btn').html( 9098 '<div class="icon_error_wrapper"><div class="icon_error_block">' + 9099 svgMinPrice + 9100 BX.message('MIN_ORDER_PRICE_TEXT').replace( 9101 '#PRICE#', 9102 jsPriceFormat(arAsproOptions['PRICES']['MIN_PRICE']) 9103 ) + 9104 '</div></div>' 9105 ); 9106 } 9107 } else { 9108 if (!$('.icon_error_wrapper').length && typeof jsPriceFormat !== 'undefined') { 9109 $('.bx_ordercart_order_pay_center').prepend( 9110 '<div class="icon_error_wrapper"><div class="icon_error_block">' + 9111 svgMinPrice + 9112 BX.message('MIN_ORDER_PRICE_TEXT').replace( 9113 '#PRICE#', 9114 jsPriceFormat(arAsproOptions['PRICES']['MIN_PRICE']) 9115 ) + 9116 '</div></div>' 9117 ); 9118 } 9119 if ($('.bx_ordercart_order_pay .checkout').length) $('.bx_ordercart_order_pay .checkout').remove(); 9120 } 9121 } else { 9122 if ($('.icon_error_wrapper').length) $('.icon_error_wrapper').remove(); 9123 9124 if ($('.basket-checkout-container').length) { 9125 if ( 9126 !$('.oneclickbuy.fast_order').length && 9127 arAsproOptions['THEME']['SHOW_ONECLICKBUY_ON_BASKET_PAGE'] == 'Y' && 9128 !$('.basket-btn-checkout.disabled').length 9129 ) 9130 $('.basket-checkout-section-inner').append( 9131 '<div class="fastorder"><span class="oneclickbuy btn btn-lg fast_order btn-transparent-border-color" onclick="oneClickBuyBasket()">' + 9132 BX.message('BASKET_QUICK_ORDER_BUTTON') + 9133 '</span></div>' 9134 ); 9135 } else { 9136 if ($('.bx_ordercart_order_pay .checkout').length) 9137 $('.bx_ordercart .bx_ordercart_order_pay .checkout').css('opacity', '1'); 9138 else 9139 $('.bx_ordercart_order_pay_center').append( 9140 '<a href="javascript:void(0)" onclick="checkOut();" class="checkout" style="opacity: 1;">' + 9141 BX.message('BASKET_ORDER_BUTTON') + 9142 '</a>' 9143 ); 9144 if ( 9145 !$('.oneclickbuy.fast_order').length && 9146 arAsproOptions['THEME']['SHOW_ONECLICKBUY_ON_BASKET_PAGE'] == 'Y' 9147 ) 9148 $('.bx_ordercart_order_pay_center').append( 9149 '<span class="oneclickbuy btn btn-lg fast_order btn-transparent-border-color" onclick="oneClickBuyBasket()">' + 9150 BX.message('BASKET_QUICK_ORDER_BUTTON') + 9151 '</span>' 9152 ); 9153 } 9154 } 9155 } else { 9156 if ($('.basket-checkout-container').length) { 9157 if ( 9158 !$('.oneclickbuy.fast_order').length && 9159 arAsproOptions['THEME']['SHOW_ONECLICKBUY_ON_BASKET_PAGE'] == 'Y' && 9160 !$('.basket-btn-checkout.disabled').length 9161 ) 9162 $('.basket-checkout-section-inner').append( 9163 '<div class="fastorder"><span class="oneclickbuy btn btn-lg fast_order btn-transparent-border-color" onclick="oneClickBuyBasket()">' + 9164 BX.message('BASKET_QUICK_ORDER_BUTTON') + 9165 '</span></div>' 9166 ); 9167 } else { 9168 $('.bx_ordercart .bx_ordercart_order_pay .checkout').css('opacity', '1'); 9169 if (!$('.oneclickbuy.fast_order').length && arAsproOptions['THEME']['SHOW_ONECLICKBUY_ON_BASKET_PAGE'] == 'Y') 9170 $('.bx_ordercart_order_pay_center').append( 9171 '<span class="oneclickbuy btn btn-lg fast_order btn-transparent-border-color" onclick="oneClickBuyBasket()">' + 9172 BX.message('BASKET_QUICK_ORDER_BUTTON') + 9173 '</span>' 9174 ); 9175 } 9176 } 9177 9178 showBasketShareBtn(); 9179 showBasketHeadingBtn(); 9180 9181 $('#basket-root .basket-checkout-container .basket-checkout-section .basket-checkout-block .basket-btn-checkout'); 9182 $('#basket-root .basket-checkout-container').addClass('visible'); 9183 } 9184 }; 9185} 9186 9187var isFrameDataReceived = false;
9188if (typeof window.frameCacheVars !== 'undefined') { 9189 BX.addCustomEvent(window, 'onFrameDataRequestFail', function (response) { 9190 console.log(response); 9191 }); 9192 9193 BX.addCustomEvent('onFrameDataReceivedBefore', function () { 9194 // stop ya metrika webvisor DOM indexer 9195 pauseYmObserver(); 9196 }); 9197 9198 BX.addCustomEvent('onFrameDataReceived', function (json) { 9199 initFull(); 9200 9201 CheckTopMenuDotted(); 9202 9203 checkLinkedArticles(); 9204 checkLinkedBlocks('.linked-banners-list'); 9205 9206 if ($('.logo-row.v2').length) { 9207 $(window).resize(); // need to check resize flexslider & menu 9208 setTimeout(function () { 9209 CheckTopMenuDotted(); 9210 }, 100); 9211 } 9212 9213 if (funcDefined('setNewHeader')) { 9214 if (typeof BX === 'object' && (BX.message('TYPE_SKU') != 'TYPE_1' || BX.message('HAS_SKU_PROPS') != 'Y')) { 9215 setNewHeader(); 9216 } else { 9217 var objNameWrapper = $('.bx_catalog_item_scu[id]'); 9218 if (objNameWrapper.length) { 9219 var id = 'ob' + objNameWrapper.attr('id').replace('_skudiv', ''); 9220 if (id && window[id] !== undefined) { 9221 var obj = window[id].offers[window[id].offerNum]; 9222 if (obj !== undefined) { 9223 setNewHeader(obj); 9224 } 9225 } 9226 } 9227 } 9228 } 9229 9230 // resume ya metrika webvisor 9231 // (100ms sliceHeight) + (200ms mCustomScroll) + (100ms lazyload) 9232 setTimeout(resumeYmObserver, 400); 9233 9234 isFrameDataReceived = true; 9235 }); 9236} else { 9237 $(document).ready(initFull); 9238} 9239 9240if (!funcDefined('setHeightBlockSlider')) { 9241 setHeightBlockSlider = function () { 9242 /*$(document).find(".specials.tab_slider_wrapp .tabs_content > li.cur").equalize({ children: ".item-title" }); 9243 $(document).find(".specials.tab_slider_wrapp .tabs_content > li.cur").equalize({ children: ".item_info" }); 9244 $(document).find(".specials.tab_slider_wrapp .tabs_content > li.cur").equalize({ children: ".catalog_item" }); 9245 9246 var sliderWidth = $(document).find(".specials.tab_slider_wrapp").outerWidth(); 9247 9248 var iCountTabs = $(document).find(".specials.tab_slider_wrapp .tabs_content > li.cur").length; 9249 9250 if (iCountTabs <= 1) { 9251 $(document).find(".specials.tab_slider_wrapp .tabs_content > li.cur").css("height", ""); 9252 9253 var itemsButtonsHeight = 0; 9254 if ($(document).find(".specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button").length) { 9255 $(document) 9256 .find(".specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button") 9257 .css("height", "auto"); 9258 itemsButtonsHeight = $(document) 9259 .find(".specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button") 9260 .height(); 9261 $(document) 9262 .find(".specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button") 9263 .css("height", ""); 9264 } 9265 var tabsContentUnhover = $(document).find(".specials.tab_slider_wrapp .tabs_content .tab.cur").height() * 1; 9266 var tabsContentHover = tabsContentUnhover + itemsButtonsHeight + 50; 9267 $(document).find(".specials.tab_slider_wrapp .tabs_content .tab.cur").attr("data-unhover", tabsContentUnhover); 9268 $(document).find(".specials.tab_slider_wrapp .tabs_content .tab.cur").attr("data-hover", tabsContentHover); 9269 $(document).find(".specials.tab_slider_wrapp .tabs_content").height(tabsContentUnhover); 9270 $(document).find(".specials.tab_slider_wrapp .tabs_content .tab.cur .flex-viewport").height(tabsContentUnhover); 9271 } else { 9272 $(document) 9273 .find(".specials.tab_slider_wrapp .tabs_content > li.cur") 9274 .each(function () { 9275 var _th = $(this); 9276 _th.css("height", ""); 9277 9278 var itemsButtonsHeight = 0; 9279 if (_th.find(".tabs_slider li .footer_button").length) { 9280 _th.find(".tabs_slider li .footer_button").css("height", "auto"); 9281 itemsButtonsHeight = _th.find(".tabs_slider li .footer_button").height(); 9282 _th.find(".tabs_slider li .footer_button").css("height", ""); 9283 } 9284 9285 var tabsContentUnhover = _th.height() * 1; 9286 var tabsContentHover = tabsContentUnhover + itemsButtonsHeight + 50; 9287 _th.attr("data-unhover", tabsContentUnhover); 9288 _th.attr("data-hover", tabsContentHover); 9289 _th.parent().height(tabsContentUnhover); 9290 _th.find(".flex-viewport").height(tabsContentUnhover); 9291 }); 9292 }*/ 9293 }; 9294} 9295 9296if (!funcDefined('checkTopFilter')) { 9297 checkTopFilter = function () { 9298 }; 9299} 9300 9301if (!funcDefined('checkStickyFooter')) { 9302 checkStickyFooter = function () { 9303 }; 9304} 9305 9306if (!funcDefined('checkLinkedArticles')) { 9307 checkLinkedArticles = function () { 9308 try { 9309 if ($('.linked-blog-list.content .item-views').length) { 9310 var mobileRow = $('.linked-blog-list').data('mobile_row'), 9311 desktopRow = $('.linked-blog-list').data('desktop_row'), 9312 parentBlock = $('.ajax_load .js_append'), 9313 widthRow = parentBlock.getFloatWidth(), 9314 elementWidthRow = parentBlock.find('> .item:eq(0)').getFloatWidth(), 9315 elementsCount = parentBlock.find('> .item').length, 9316 slice = Math.floor(widthRow / elementWidthRow), 9317 rowInsertCount = Math.floor(elementsCount / slice), 9318 bCalculateRows = false;
9319 if (window.matchMedia('(max-width: 767px)').matches) { 9320 if (!mobileRow && desktopRow) { 9321 mobileRow = desktopRow; 9322 } 9323 if (mobileRow && mobileRow <= rowInsertCount) { 9324 rowInsertCount = slice * mobileRow; 9325 bCalculateRows = true; 9326 } 9327 } else { 9328 if (desktopRow && desktopRow <= rowInsertCount) { 9329 rowInsertCount = slice * desktopRow; 9330 bCalculateRows = true; 9331 } 9332 } 9333 if (!bCalculateRows) { 9334 rowInsertCount = elementsCount; 9335 } 9336 9337 var linkedBlock = '.linked-blog-list'; 9338 var blockInItems = parentBlock.find(linkedBlock); 9339 if (blockInItems.length) { 9340 $(blockInItems).insertAfter(parentBlock.find('> .item:eq(' + (rowInsertCount - 1) + ')')); 9341 setTimeout(function () { 9342 $(blockInItems).addClass('visible'); 9343 }, 0); 9344 } else { 9345 var cloneBlock = $(linkedBlock).clone(); 9346 var owlBlock = cloneBlock.find('.owl-carousel-wait'); 9347 cloneBlock.insertAfter(parentBlock.find('> .item:eq(' + (rowInsertCount - 1) + ')')); 9348 owlBlock.removeClass('owl-carousel-wait').addClass('owl-carousel'); 9349 setTimeout(function () { 9350 cloneBlock.addClass('visible'); 9351 InitOwlSlider(); 9352 owlBlock.removeClass('loader_circle'); 9353 }, 1); 9354 } 9355 } 9356 } catch (e) { 9357 console.error(e); 9358 } 9359 }; 9360} 9361 9362if (!funcDefined('checkLinkedBlocks')) { 9363 checkLinkedBlocks = function (linkedBlock) { 9364 if (!linkedBlock) linkedBlock = '.linked-banners-list'; 9365 9366 try { 9367 if ($(linkedBlock + '.content' + ' div').length) { 9368 var mobileRow = $(linkedBlock).data('mobile_row'), 9369 desktopRow = $(linkedBlock).data('desktop_row'), 9370 wrapperBlock = $('.ajax_load .js_wrapper_items'), 9371 parentBlock = $('.ajax_load .js_append'), 9372 widthRow = wrapperBlock.getFloatWidth(), 9373 elementWidthRow = parentBlock.find('> .item:eq(0)').getFloatWidth(), 9374 elementsCount = parentBlock.find('> .item').length, 9375 slice = Math.floor(widthRow / elementWidthRow), 9376 rowInsertCount = Math.floor(elementsCount / slice), 9377 bCalculateRows = false; 9378 if (window.matchMedia('(max-width: 767px)').matches) { 9379 if (!mobileRow && desktopRow) { 9380 mobileRow = desktopRow; 9381 } 9382 if (mobileRow && mobileRow <= rowInsertCount) { 9383 rowInsertCount = slice * mobileRow; 9384 bCalculateRows = true; 9385 } 9386 } else { 9387 if (desktopRow && desktopRow <= rowInsertCount) { 9388 rowInsertCount = slice * desktopRow; 9389 bCalculateRows = true; 9390 } 9391 } 9392 if (!bCalculateRows) { 9393 rowInsertCount = elementsCount; 9394 } 9395 var blockInItems = parentBlock.find(linkedBlock); 9396 if (blockInItems.length) { 9397 $(blockInItems).insertAfter(parentBlock.find('> .item:eq(' + (rowInsertCount - 1) + ')')); 9398 setTimeout(function () { 9399 $(blockInItems).addClass('visible'); 9400 }, 0); 9401 } else { 9402 var cloneBlock = $(linkedBlock).clone(); 9403 var owlBlock = cloneBlock.find('.owl-carousel-wait'); 9404 cloneBlock.insertAfter(parentBlock.find('> .item:eq(' + (rowInsertCount - 1) + ')')); 9405 owlBlock.removeClass('owl-carousel-wait').addClass('owl-carousel'); 9406 setTimeout(function () { 9407 cloneBlock.addClass('visible'); 9408 InitOwlSlider(); 9409 owlBlock.removeClass('loader_circle'); 9410 }, 1); 9411 } 9412 } 9413 } catch (e) { 9414 console.error(e); 9415 } 9416 }; 9417} 9418 9419/* EVENTS */ 9420var timerResize = false, 9421 ignoreResize = []; 9422$(window).resize(function () { 9423 checkLinkedArticles(); 9424 checkLinkedBlocks('.linked-banners-list'); 9425 9426 // here immediate functions 9427 if (!ignoreResize.length) { 9428 if (timerResize) { 9429 clearTimeout(timerResize); 9430 timerResize = false; 9431 } 9432 timerResize = setTimeout(function () { 9433 // here delayed functions in event 9434 BX.onCustomEvent('onWindowResize', false); 9435 }, 50); 9436 } 9437}); 9438 9439var timerScroll = false, 9440 ignoreScroll = [], 9441 documentScrollTopLast = window.pageYOffset, 9442 startScroll = 0; 9443$(window).scroll(function () { 9444 // here immediate functions 9445 documentScrollTopLast = window.pageYOffset; 9446 SetFixedAskBlock(); 9447 9448 if (!ignoreScroll.length) { 9449 if (timerScroll) { 9450 clearTimeout(timerScroll); 9451 timerScroll = false; 9452 } 9453 timerScroll = setTimeout(function () { 9454 // here delayed functions in event 9455 BX.onCustomEvent('onWindowScroll', false); 9456 }, 50); 9457 } 9458}); 9459 9460BX.addCustomEvent('onWindowResize', function (eventdata) { 9461 try { 9462 ignoreResize.push(true); 9463 9464 CheckTabActive(); 9465 CheckTopMenuFullCatalogSubmenu(); 9466 9467 if (window.matchMedia('(min-width:768px)').matches) { 9468 closeYandexMap(); 9469 } 9470 9471 if ($('nav.mega-menu.sliced').length) $('nav.mega-menu.sliced').removeClass('initied'); 9472 CheckTopMenuDotted(); 9473 9474 CheckTopVisibleMenu(); 9475 9476 checkScrollToTop(); 9477 CheckObjectsSizes(); 9478 9479 initSly(); 9480 9481 // checkVerticalMobileFilter(); 9482 if (typeof checkMobilePhone === 'function') { 9483 checkMobilePhone(); 9484 } 9485 checkTopFilter(); 9486 if (typeof checkMobileFilter === 'function') { 9487 checkMobileFilter(); 9488 } 9489 9490 if (typeof window['stickySidebar'] !== 'undefined') { 9491 if (window.matchMedia('(max-width: 991px)').matches) { 9492 window['stickySidebar'].destroy(); 9493 } else { 9494 window['stickySidebar'].bindEvents(); 9495 } 9496 } 9497 9498 if ($('.flexslider.wsmooth').length) { 9499 $('.flexslider.wsmooth').each(function () { 9500 $(this).data('flexslider').smoothHeight(); 9501 }); 9502 } 9503 9504 if (window.matchMedia('(min-width: 767px)').matches) $('.wrapper_middle_menu.wrap_menu').removeClass('mobile'); 9505 9506 if (window.matchMedia('(max-width: 767px)').matches) $('.wrapper_middle_menu.wrap_menu').addClass('mobile'); 9507 9508 if ($('#basket_form').length && $(window).outerWidth() <= 600) { 9509 $('#basket_form .tabs_content.basket > li.cur td').each(function () { 9510 $(this).css('width', ''); 9511 }); 9512 } 9513 9514 $('.bx_filter_section .bx_filter_select_container').each(function () { 9515 var prop_id = $(this).closest('.bx_filter_parameters_box').attr('property_id'); 9516 if ($('#smartFilterDropDown' + prop_id).length) { 9517 $('#smartFilterDropDown' + prop_id).css('max-width', $(this).width()); 9518 } 9519 }); 9520 } catch (e) { 9521 console.log(e); 9522 } finally { 9523 ignoreResize.pop(); 9524 } 9525}); 9526 9527BX.addCustomEvent('onWindowScroll', function (eventdata) { 9528 try { 9529 ignoreScroll.push(true); 9530 } catch (e) { 9531 } finally { 9532 ignoreScroll.pop(); 9533 } 9534}); 9535 9536BX.addCustomEvent('onSlideInit', function (eventdata) { 9537 try { 9538 ignoreResize.push(true); 9539 if (eventdata) { 9540 var slider = eventdata.slider; 9541 if (slider) { 9542 if (slider.hasClass('small-gallery')) $(window).resize(); 9543 // add classes .curent & .shown to slide 9544 slider.find('.item').removeClass('current'); 9545 var curSlide = slider.find('.item.flex-active-slide'), 9546 curSlideId = curSlide.attr('id'), 9547 nav = slider.find('.flex-direction-nav'); 9548 9549 curSlide.addClass('current'); 9550 9551 slider.find('.visible').css('opacity', '1'); 9552 slider.find('.height0').css('height', 'auto'); 9553 9554 if (curSlide.hasClass('shown')) {
9555 slider.find('.item.clone[id=' + curSlideId + '_clone]').addClass('shown'); 9556 } 9557 9558 curSlide.addClass('shown'); 9559 } 9560 } 9561 } catch (e) { 9562 } finally { 9563 ignoreResize.pop(); 9564 } 9565}); 9566 9567BX.addCustomEvent('onCounterGoals', function (eventdata) { 9568 if (arAsproOptions['THEME']['YA_GOALS'] == 'Y' && arAsproOptions['THEME']['YA_COUNTER_ID']) { 9569 var idCounter = arAsproOptions['THEME']['YA_COUNTER_ID']; 9570 idCounter = parseInt(idCounter); 9571 9572 if (typeof eventdata != 'object') eventdata = { goal: 'undefined' }; 9573 9574 if (typeof eventdata.goal != 'string') eventdata.goal = 'undefined'; 9575 9576 if (idCounter) { 9577 try { 9578 waitCounter(idCounter, 50, function () { 9579 var obCounter = window['yaCounter' + idCounter]; 9580 if (typeof obCounter == 'object') { 9581 obCounter.reachGoal(eventdata.goal); 9582 } 9583 }); 9584 } catch (e) { 9585 console.error(e); 9586 } 9587 } else { 9588 console.info('Bad counter id!', idCounter); 9589 } 9590 } 9591}); 9592 9593var onCaptchaVerifyinvisible = function (response) { 9594 $('.g-recaptcha:last').each(function () { 9595 var id = $(this).attr('data-widgetid'); 9596 if (typeof id !== 'undefined' && response) { 9597 if (!$(this).closest('form').find('.g-recaptcha-response').val()) 9598 $(this).closest('form').find('.g-recaptcha-response').val(response); 9599 if ($('iframe[src*=recaptcha]').length) { 9600 $('iframe[src*=recaptcha]').each(function () { 9601 var block = $(this).parent().parent(); 9602 if (!block.hasClass('grecaptcha-badge')) block.css('width', '100%'); 9603 }); 9604 } 9605 $(this).closest('form').submit(); 9606 } 9607 }); 9608}; 9609 9610var onCaptchaVerifynormal = function (response) { 9611 $('.g-recaptcha').each(function () { 9612 var id = $(this).attr('data-widgetid'); 9613 if (typeof id !== 'undefined') { 9614 if (grecaptcha.getResponse(id) != '') { 9615 $(this).closest('form').find('.recaptcha').valid(); 9616 } 9617 } 9618 }); 9619}; 9620 9621BX.addCustomEvent('onSubmitForm', function (eventdata) { 9622 try { 9623 if (!window.renderRecaptchaById || !window.asproRecaptcha || !window.asproRecaptcha.key) { 9624 eventdata.form.submit(); 9625 $(eventdata.form).closest('.form').addClass('sending'); 9626 return true; 9627 } 9628 9629 if (window.asproRecaptcha.params.recaptchaSize == 'invisible' && $(eventdata.form).find('.g-recaptcha').length) { 9630 if ($(eventdata.form).find('.g-recaptcha-response').val()) { 9631 eventdata.form.submit(); 9632 $(eventdata.form).closest('.form').addClass('sending'); 9633 return true; 9634 } else { 9635 if (typeof grecaptcha != 'undefined') { 9636 grecaptcha.execute($(eventdata.form).find('.g-recaptcha').data('widgetid')); 9637 } else { 9638 return false; 9639 } 9640 } 9641 } else { 9642 eventdata.form.submit(); 9643 $(eventdata.form).closest('.form').addClass('sending'); 9644 return true; 9645 } 9646 } catch (e) { 9647 console.error(e); 9648 return true; 9649 } 9650}); 9651 9652$(document).on('click', '.catalog_reviews_extended span.dropdown-select__list-link', function () { 9653 var _this = $(this); 9654 var ajaxData = _this.data('review_sort_ajax'); 9655 var container = _this.closest('.blog-comments'); 9656 containerId = container.attr('id'); 9657 if (containerId !== undefined && containerId) { 9658 ajaxData.containerId = containerId; 9659 } 9660 if (ajaxData !== undefined) { 9661 container.addClass('blur'); 9662 $.ajax({ 9663 type: 'post', 9664 data: ajaxData, 9665 success: function (html) { 9666 $('#reviews_sort_continer').html(html); 9667 container.removeClass('blur'); 9668 }, 9669 }); 9670 } 9671}); 9672 9673$(document).on('change', '.filter-panel__sort-form input', function () { 9674 const _this = $(this); 9675 const $form = _this.closest('form')[0]; 9676 const $container = _this.closest('.blog-comments'); 9677 const method = $form.method; 9678 const formData = new FormData($form); 9679 9680 if ($container.length) { 9681 $container.addClass('blur'); 9682 formData.append('containerId', $container.attr('id')); 9683 } 9684 9685 $.ajax({ 9686 data: formData, 9687 type: method, 9688 processData: false, 9689 contentType: false, 9690 success: function (html) { 9691 $('#reviews_sort_continer').html(html); 9692 $container.removeClass('blur'); 9693 }, 9694 }); 9695}); 9696 9697$(document).on('click', '.rating_vote:not(.disable)', function () { 9698 var _this = $(this); 9699 var action = _this.data('action'); 9700 var parent = _this.closest('.rating-vote'); 9701 var commentId = parent.data('comment_id'); 9702 var userId = parent.data('user_id'); 9703 var ajaxUrl = parent.data('ajax_url'); 9704 $.ajax({ 9705 url: ajaxUrl, 9706 dataType: 'json', 9707 data: { commentId: commentId, action: action, userId: userId }, 9708 success: function (data) { 9709 if (data.LIKE !== undefined) { 9710 _this.siblings('.rating-vote-result.like').text(data.LIKE); 9711 } 9712 if (data.DISLIKE !== undefined) { 9713 _this.siblings('.rating-vote-result.dislike').text(data.DISLIKE); 9714 } 9715 if (data.SET_ACTIVE_LIKE !== undefined) { 9716 parent.find('.rating_vote.plus').toggleClass('active'); 9717 } 9718 if (data.SET_ACTIVE_DISLIKE !== undefined) { 9719 parent.find('.rating_vote.minus').toggleClass('active'); 9720 } 9721 }, 9722 }); 9723}); 9724 9725function fileInputInit(message, reviews = 'N') { 9726 $('input[type=file]:not(".uniform-ignore")').uniform({ 9727 fileButtonHtml: BX.message('JS_FILE_BUTTON_NAME'), 9728 fileDefaultHtml: message, 9729 }); 9730 $(document).on('change', 'input[type=file]', function () { 9731 if ($(this).val()) { 9732 $(this).closest('.uploader').addClass('files_add'); 9733 } else { 9734 $(this).closest('.uploader').removeClass('files_add'); 9735 } 9736 }); 9737 $('.form .add_file').on('click', function () { 9738 var index = $(this).closest('.form-group').find('input[type=file]').length; 9739 let inputFormGroup = $(this).closest('.form-group').find('.input'); 9740 if (reviews === 'Y') { 9741 inputFormGroup.append( 9742 '<input type="file" class="form-control" tabindex="3" id="comment_images" name="comment_images[]" value="" />' 9743 ); 9744 } else { 9745 inputFormGroup.append( 9746 '<input type="file" id="POPUP_FILE' + index + '" name="FILE_n' + index + '" class="inputfile" value="" />'
9747 ); 9748 } 9749 9750 $('input[type=file]:not(".uniform-ignore")').uniform({ 9751 fileButtonHtml: BX.message('JS_FILE_BUTTON_NAME'), 9752 fileDefaultHtml: message, 9753 }); 9754 }); 9755} 9756 9757$(document).on('click', '.js-basket-del-preorders', function () { 9758 BX.showWait('popup_iframe_wrapper'); 9759 9760 $.ajax({ 9761 url: arAsproOptions["SITE_DIR"] + "ajax/delPreordersBasket.php", 9762 type: "POST", 9763 success: function (data) { 9764 if (data.RESULT == 'OK') { 9765 location.reload(); 9766 } else { 9767 alert('ÐÑоизоÑла оÑибка, попÑобÑйÑе еÑе Ñаз или пеÑезагÑÑзиÑе ÑÑÑаниÑÑ'); 9768 } 9769 }, 9770 }); 9771}); 9772 9773$(document).on('click', '.js-change-preorder-price', function () { 9774 BX.showWait('popup_iframe_wrapper'); 9775 9776 const _this = $(this); 9777 9778 $.ajax({ 9779 url: arAsproOptions["SITE_DIR"] + "ajax/setSessionValue.php", 9780 type: "POST", 9781 data: { 9782 'key': 'preorder_price', 9783 'value': _this.data('price_type') 9784 }, 9785 success: function (data) { 9786 if (data.result === true) { 9787 location.reload(); 9788 } else { 9789 alert('ÐÑоизоÑла оÑибка, попÑобÑйÑе еÑе Ñаз или пеÑезагÑÑзиÑе ÑÑÑаниÑÑ'); 9790 } 9791 }, 9792 }); 9793}); 9794 9795function declOfNum(number, titles) { 9796 var cases = [2, 0, 1, 1, 1, 2]; 9797 return number + ' ' + titles[number % 100 > 4 && number % 100 < 20 ? 2 : cases[Math.min(number % 10, 5)]]; 9798} 9799 9800function array_values_js(input) { 9801 var tmp_arr = new Array(), 9802 cnt = 0; 9803 for (key in input) { 9804 tmp_arr[cnt] = input[key]; 9805 cnt++; 9806 } 9807 9808 return tmp_arr; 9809}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.