1// fancy callbacks 2function RSAL_FancyCloseAfterRequest(delay) { 3 if (delay < 1) 4 delay = RSAL_FancyCloseDelay; 5 setTimeout(function () { 6 $.fancybox.close(); 7 }, delay); 8} 9 10function RSAL_HandlerFancyOnBeforeShow() { 11 if ($('.fancybox-inner').find('.errortext').length > 0) 12 $('.fancybox-inner').find('.errortext').hide(); 13 if ($('.fancybox-inner').find('.notetext').length > 0) 14 $('.fancybox-inner').find('.notetext').hide(); 15 if ($('.fancybox-inner').find('.reviews-note-error').length > 0) 16 $('.fancybox-inner').find('.reviews-note-error').hide(); 17} 18 19function RSAL_HandlerFancyOnAfterClose() { 20 if (RSAL_FancyReloadPageAfterClose) { 21 window.location.reload(); 22 } 23} 24 25// /fancy callbacks 26 27// Area2Darken 28function RSAL_ShowHideModueLoadingIcon() { 29 if ($('#mouse_loading_icon').css('display') == "block") { 30 $('#mouse_loading_icon').css('display', 'none'); 31 } else { 32 $('#mouse_loading_icon').css('display', 'block'); 33 } 34} 35 36// Area2Darken 37function RSAL_Area2Darken(areaObj) { 38 if (!areaObj.hasClass('areadarken')) { 39 areaObj.addClass('areadarken').css({"position": "relative"}).append('<div class="area_darken"></div>'); 40 } else { 41 areaObj.removeClass('areadarken').removeAttr('style').find('.area_darken').remove(); 42 } 43} 44 45// slider 46function RSAL_SliderClickPrev($btn) { 47 if (!$btn.parents('.main_slider').hasClass('sliding')) { 48 $btn.parents('.main_slider').addClass('sliding'); 49 var delay = 400; 50 var itemW = parseInt($btn.parents('.main_slider').data('itemw')); 51 var slideOn = parseInt($btn.parents('.main_slider').data('slideon')); 52 slideOn = (slideOn > 0 ? slideOn : 1); 53 var showInTime = parseInt($btn.parents('.main_slider').data('showintime')); 54 var $slider = $btn.parents('.main_slider').find('.main_slider-slider_inner'); 55 var elementsCount = parseInt($slider.css('width')) / itemW; 56 var hidedLeftCount = Math.abs(parseInt($slider.css('left')) / itemW); 57 var hidedRightCount = elementsCount - showInTime - hidedLeftCount; 58 if (hidedLeftCount < slideOn) 59 slideOn = hidedLeftCount; 60 $slider.animate({left: "+=" + (itemW * slideOn)}, delay); 61 hidedLeftCount = Math.abs(parseInt($slider.css('left')) / itemW); 62 hidedRightCount = elementsCount - showInTime - hidedLeftCount; 63 if (hidedRightCount == 0) 64 $btn.parents('.main_slider').find('.main_slider-arrow_next').removeClass('disabled'); 65 if (hidedLeftCount == 0 || hidedLeftCount == slideOn) 66 $btn.addClass('disabled'); 67 setTimeout(function () { 68 $btn.parents('.main_slider').removeClass('sliding'); 69 }, 400); 70 } 71} 72 73function RSAL_SliderClickNext($btn) { 74 if (!$btn.parents('.main_slider').hasClass('sliding')) { 75 $btn.parents('.main_slider').addClass('sliding'); 76 var delay = 400; 77 var itemW = parseInt($btn.parents('.main_slider').data('itemw')); 78 var slideOn = parseInt($btn.parents('.main_slider').data('slideon')); 79 slideOn = (slideOn > 0 ? slideOn : 1); 80 var showInTime = parseInt($btn.parents('.main_slider').data('showintime')); 81 var $slider = $btn.parents('.main_slider').find('.main_slider-slider_inner'); 82 var elementsCount = parseInt($slider.css('width')) / itemW; 83 var hidedLeftCount = Math.abs(parseInt($slider.css('left')) / itemW); 84 var hidedRightCount = elementsCount - showInTime - hidedLeftCount; 85 if (hidedRightCount < slideOn) 86 slideOn = hidedRightCount; 87 $slider.animate({left: "-=" + (itemW * slideOn)}, delay); 88 hidedLeftCount = Math.abs(parseInt($slider.css('left')) / itemW); 89 hidedRightCount = elementsCount - showInTime - hidedLeftCount; 90 if (hidedLeftCount == 0) 91 $btn.parents('.main_slider').find('.main_slider-arrow_prev').removeClass('disabled'); 92 if (hidedRightCount == 0 || hidedRightCount == slideOn) 93 $btn.addClass('disabled'); 94 setTimeout(function () { 95 $btn.parents('.main_slider').removeClass('sliding'); 96 }, 400); 97 } 98} 99 100// /slider 101 102// set liked 103function RSAL_SetLiked() { 104 //for (element_id in RSAL_LIKES) { 105 for (element_id of RSAL_LIKES) { 106 // console.log(element_id)
107 if (/*RSAL_LIKES[element_id] == element_id && */$('.js-element-id' + element_id).find('.js_likes_link').length > 0) 108 $('.js-element-id' + element_id).find('.js_likes_link').addClass('liked liked-2'); 109 110 } 111 $('.h-fav .count').html(RSAL_LIKES.length); 112} 113 114// set compared 115function RSAL_SetCompared() { 116 for (element_id in RSAL_COMPARE) { 117 if (RSAL_COMPARE[element_id] == "Y" && $('.js-element-id' + element_id).find('.js_add2compare').length > 0) 118 $('.js-element-id' + element_id).find('.js_add2compare').addClass('compared'); 119 } 120} 121 122// set in basket 123function RSAL_SetInBasket() { 124 $('.js-buyform').removeClass('inbasket'); 125 for (element_id in RSAL_INBASKET) { 126 if (RSAL_INBASKET[element_id]['IN_BASKET'] == "Y" && $(".js-buyproductid[value='" + element_id + "']").length > 0) { 127 let $byForm = $('.js-buyproductid[value="' + element_id + '"]').parents('.js-buyform').addClass('inbasket'); 128 // $('.js-buyproductid[value="' + element_id + '"]').parents('.js-buyform').addClass('inbasket'); 129 130 131 //$byForm.val(RSAL_INBASKET[element_id]['QUANTITY']); 132 // console.log($byForm); 133 $('[data-prod-quantity]', $byForm).val(parseInt(RSAL_INBASKET[element_id]['QUANTITY'])); 134 } 135 } 136} 137 138$(document).ready(function () { 139 $.jGrowl.defaults.life = 5000; 140 $.jGrowl.defaults.closerTemplate = '<div>ÑкÑÑÑÑ Ð²Ñе ÑведомлениÑ</div>'; 141 142 var $ajaxLoader = BX('ajax-preloader-wrap'); 143 BX.showWait = function (node, msg) { 144 BX.style($ajaxLoader, 'display', 'block'); 145 BX.addClass($ajaxLoader, 'ajax-preloader--animated'); 146 }; 147 BX.closeWait = function (node, obMsg) { 148 BX.style($ajaxLoader, 'display', 'none'); 149 BX.removeClass($ajaxLoader, 'ajax-preloader--animated'); 150 }; 151 152 var productsSlider = $('.main_slider-slider_inner:not(.ajax-process)'); 153 if (productsSlider.length) { 154 productsSlider.owlCarousel({ 155 loop: false, 156 margin: 10, 157 items: 4, 158 nav: true, 159 dots: false, 160 navText: ["", ""], 161 //autoplay:true, 162 // autoplayTimeout:3000, 163 //autoplayHoverPause:true 164 }); 165 } 166 167 168 // fancybox windows 169 /* $('.js_fancy_window').fancybox({ 170 openEffect: 'fade', 171 closeEffect: 'fade', 172 maxWidth: 800, 173 maxHeight: 800, 174 autoSize: true, 175 closeClick: false, 176 title: null, 177 padding: 0, 178 beforeShow: function () {RSAL_HandlerFancyOnBeforeShow();}, 179 afterShow: function () { 180 if (typeof Recaptchafree != "undefined") Recaptchafree.reset(); 181 }, 182 afterClose: function () {RSAL_HandlerFancyOnAfterClose();} 183 });*/ 184 // /fancybox windows 185 186 // Click protection 187 $(document).on('click', '.click_protection', function (e) { 188 e.stopImmediatePropagation(); 189 console.warn('Click protection'); 190 //alert( BX.message("RSAL_JS_TO_MACH_CLICK_LIKES") ); 191 return false; 192 }); 193 // /Click protection 194 195 // likes 196 var favPopup = $("#fav-popup"), favPopupClose = $("#fav-popup-close"); 197 favPopupClose.on('click', function () { 198 favPopup.removeClass('show'); 199 return false; 200 }); 201 $(document).on('click', '.js_likes_link', function (e) { 202 var $linkObj = $(this); 203 $linkObj.addClass('click_protection'); 204 var element_id = $linkObj.parents('.js-element').data('elementid'); 205 var url = RSAL_SITE_DIR + 'ajax/ajax.php?action=likes&element_id=' + element_id; 206 if (element_id > 0) { 207 $.getJSON(url, {}, function (json) { 208 if (json.TYPE == "OK") { 209 if (json.MESSAGE == "added") { 210 //RSAL_LIKES[element_id] = element_id; 211 RSAL_LIKES.push(element_id); 212 $('.js-element-id' + element_id).find('.js_likes_link').addClass('liked').find('.likes_count').html(json.COUNT); 213 } else { 214 //delete RSAL_LIKES[element_id]; 215 if (RSAL_LIKES.indexOf(element_id)) { 216 RSAL_LIKES.splice(RSAL_LIKES.indexOf(element_id), 1); 217 } 218 $('.js-element-id' + element_id).find('.js_likes_link').removeClass('liked').find('.likes_count').html(json.COUNT); 219 } 220 if (!json.FAV_COUNT) json.FAV_COUNT = 0; 221 console.log(json.FAV_COUNT); 222 $('.h-fav .count').html(json.FAV_COUNT); 223 } else { 224 console.warn(json.MESSAGE); 225 } 226 if (json.FAV_COUNT > 0) { 227 favPopup.addClass('show').find('.count').text(json.FAV_COUNT); 228 } else { 229 favPopup.removeClass('show').find('.count').text('0'); 230 } 231 setTimeout(function () { 232 $linkObj.removeClass('click_protection'); 233 }, RSAL_ClickProtectionDelay); 234 }).fail(function () { 235 console.warn('can\'t load json likes'); 236 setTimeout(function () { 237 $linkObj.removeClass('click_protection'); 238 }, RSAL_ClickProtectionDelay); 239 }); 240 } else { 241 console.warn('empty param element_id'); 242 setTimeout(function () { 243 $linkObj.removeClass('click_protection'); 244 }, RSAL_ClickProtectionDelay); 245 } 246 return false; 247 });
248 // /likes 249 250 // a -> submit form 251 $(document).on('click', 'form a.submit', function () { 252 $(this).parents('form').find('input[type="submit"]').trigger('click'); 253 return false; 254 }); 255 // /a -> submit form 256 257 // ajax links in fancy 258 $(document).on('click', '.js_ajax_link', function () { 259 //console.log( 'ajax links in fancy' ); 260 var href = $(this).attr('href'); 261 var parentselector = $(this).data('parentselector'); 262 if (href != "" && $(parentselector).length > 0 && $(parentselector).parents('.fancybox-inner').length > 0) { 263 $.ajax({ 264 type: "GET", 265 url: href, 266 data: "js_ajax_call=Y" 267 }).done(function (msg) { 268 $(parentselector).html(msg); 269 $.fancybox.reposition(); 270 if (typeof Recaptchafree != "undefined") Recaptchafree.reset(); 271 }); 272 } else if (href != "") { 273 $.ajax({ 274 type: "GET", 275 url: href, 276 data: "js_ajax_call=Y" 277 }).done(function (msg) { 278 $('.fancybox-inner').html(msg); 279 $.fancybox.reposition(); 280 if (typeof Recaptchafree != "undefined") Recaptchafree.reset(); 281 }); 282 } else { 283 console.warn('can\'t load ajax link'); 284 } 285 return false; 286 }); 287 288 // /ajax links in fancy 289 290 291 function ajaxUpdateCart() { 292 $.ajax({
293 type: "GET", 294 url: "/ajax/2020/ajax-update-basket.php", 295 dataType: "json", 296 success: function (data, textStatus) { 297 $('#basket_top_panel-info .count').text(data.summProdQuantity); 298 }, 299 complete: function (data, textStatus) { 300 } 301 }) 302 } 303 304 // AJAX -> add2basket 305 $(document).on('submit', '.js-buyform', function () { 306 var $formObj = $(this); 307 var seriData = $(this).serialize(); 308 var id = $formObj.find('.js-buyproductid').val(); 309 var $prodQuantity = $('.prod-detail-quantity').val(); 310 if ($prodQuantity > 0) { 311 seriData += '&quantity=' + $prodQuantity; 312 } 313 if ($("#mobile-manager").length) var url = RSAL_SITE_DIR + 'catalog/?new=Y&' + seriData + '&ajax_action=add2basket&pid=' + id + '&mm=' + $("#mobile-manager input:checked").val(); 314 else if ($(".catalog-buyform").length) var url = RSAL_SITE_DIR + 'catalog/?new=Y&' + seriData + '&ajax_action=add2basket&pid=' + id + '&mm=1'; 315 else var url = RSAL_SITE_DIR + 'catalog/?new=Y&' + seriData + '&ajax_action=add2basket&pid=' + id; 316 RSAL_Area2Darken($formObj); 317 RSAL_Area2Darken($('#h-cart')); 318 319 RSAL_ShowHideModueLoadingIcon(); 320 321 $.ajax({
322 url: url, 323 dataType: "json", 324 type: "POST", 325 data: {}, 326 cache: false, 327 success: function (data, textStatus, jqXHR) { 328 ajaxUpdateCart(); 329 $formObj.addClass('inbasket'); 330 $.jGrowl("Ð¢Ð¾Ð²Ð°Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½<br>в <a href='/personal/cart/'>коÑзинÑ</a>", {theme: 'status'}); 331 } 332 }); 333 334 /*RSAL_ShowHideModueLoadingIcon(); 335 $.colorbox({ 336 inline: false, 337 href: url, 338 className: 'c-form add-to-cart c-form-' + id, 339 onComplete: function () { 340 ajaxUpdateCart(); 341 $formObj.addClass('inbasket'); 342 $.jGrowl("Ð¢Ð¾Ð²Ð°Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½ в <a href='/personal/cart/'>коÑзинÑ</a>", {theme: 'status'}); 343 $.colorbox.resize(); 344 } 345 });*/ 346 347 348 // RSAL_OffersExt_timeout_id = setTimeout(function () { 349 350 351 // $.get(url, {}, function (data) {//console.log(data); 352 // RSAL_INBASKET[id] = "Y"; 353 // $formObj.addClass('inbasket'); 354 // if ($('#header').find('.js_basket_empty').length > 0) { 355 // $('#header').find('.js_basket_empty').addClass('none2'); 356 // $('#header').find('.js_basket_nums_and_summ').removeClass('none2'); 357 // } 358 // //$('#h-cart').html(data); 359 // 360 // 361 // $.jGrowl("Ð¢Ð¾Ð²Ð°Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½ в <a href='/personal/cart/'>коÑзинÑ</a>", {theme: 'status'}); 362 // /*$.fancybox.open({ 363 // wrapCSS: 'popup-added', 364 // padding: 0, 365 // type: 'ajax', 366 // //href: '#popup-added', 367 // href: url, 368 // maxWidth: 800}).resize();*/ 369 // 370 // $.colorbox({ 371 // inline:false, 372 // href:url, 373 // /*data:{WEB_FORM_ID:id, href: location.href, info: $ths.data("info"),title:$ths.data('title') }, */ 374 // className: 'c-form c-form-'+id, 375 // onComplete:function () { 376 // 377 // } 378 // }); 379 // 380 // RSAL_Area2Darken($formObj); 381 // RSAL_Area2Darken($('#h-cart')); 382 // RSAL_ShowHideModueLoadingIcon(); 383 // }).fail(function (data) { 384 // RSAL_Area2Darken($formObj); 385 // RSAL_Area2Darken($('#h-cart')); 386 // RSAL_ShowHideModueLoadingIcon(); 387 // console.warn('can\'t load json add2basket'); 388 // }); 389 // }, RSAL_RequestDelay); 390 return false; 391 }); 392 393 function changeBasket(pid, count, action) { 394 $.ajax({
395 url: '/ajax/ajax-changeBasket.php', 396 dataType: "json", 397 type: "POST", 398 data: { 399 id: pid, 400 count: count, 401 action: action, 402 }, 403 cache: false, 404 success: function (data, textStatus, jqXHR) { 405 if (data.ok == "Y") { 406 $.jGrowl("ÐолиÑеÑÑво ÑоваÑа изменено.<br>Ð <a href='/personal/cart/'>коÑзинÑ</a>", {theme: 'status'}); 407 } else { 408 $.jGrowl("ÐÑибка Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð»Ð¸ÑеÑÑва ÑоваÑа", {theme: 'error'}); 409 } 410 } 411 }); 412 } 413 414 function deleteFromBasket(pid) { 415 if (pid.length && pid > 0) { 416 $.ajax({ 417 url: '/ajax/ajax-changeBasket.php', 418 dataType: "json", 419 type: "POST", 420 data: { 421 id: pid, 422 action: 'delete', 423 }, 424 cache: false, 425 success: function (data, textStatus, jqXHR) { 426 if (data.ok == "Y") { 427 $.jGrowl("Ð¢Ð¾Ð²Ð°Ñ Ñдален<br>из <a href='/personal/cart/'>коÑзинÑ</a>", {theme: 'status'}); 428 $(".js-buyform" + pid).removeClass('inbasket'); 429 } else { 430 $.jGrowl("ÐÑибка ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑоваÑа", {theme: 'error'}); 431 } 432 } 433 }); 434 } else { 435 $.jGrowl("ÐÑибка ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑоваÑа", {theme: 'error'}); 436 } 437 } 438 439 $("[data-prod-quantity]:not(.js-inited)").addClass("js-inited").on("change", function () { 440 let $this = $(this), 441 pid = $this.attr("data-pid"), 442 ratio = $this.attr("data-ratio"), 443 max = $this.attr("data-max"), 444 value = $this.val(); 445 446 if (value < ratio) { 447 value = ratio 448 $this.val(value); 449 } 450 if (!!max && value >= parseFloat(max)) { 451 this._tippy?.show(); // ÑÑо инÑÑÐ°Ð½Ñ 452 tippy(this, { 453 content: 'РналиÑии ÑолÑко ' + max + 'ÑÑ.', 454 showOnCreate: true, 455 }); 456 } else { 457 changeBasket(pid, value, 'update'); 458 } 459 }); 460 461 // /AJAX -> add2basket 462 463 // slider 464 $(document).on('click', '.main_slider-arrow_prev', function () { 465 if (!$(this).hasClass('disabled')) { 466 RSAL_SliderClickPrev($(this)); 467 } 468 return false; 469 }); 470 $(document).on('click', '.main_slider-arrow_next', function () { 471 if (!$(this).hasClass('disabled')) { 472 RSAL_SliderClickNext($(this)); 473 } 474 return false; 475 }); 476 // /slider 477 478 // tabs 479 $(document).on('click', '.js_tabs_header a', function () { 480 $(this).parents('.js_tabs_header').find('a').removeClass('select'); 481 $(this).addClass('select') 482 .parents('.js_tabs').find('.js_tabs_content').removeClass('showed') 483 .parents('.js_tabs').find($(this).attr('href')).addClass('showed'); 484 return false; 485 }); 486 // /tabs 487 488 // AJAXPAGES 489 $(document).on('click', '.ajaxpages a', function () { 490 var $linkObj = $(this); 491 var ajaxurl = $linkObj.data('ajaxurl'); 492 var ajaxpagesid = $linkObj.data('ajaxpagesid'); 493 var navpagenomer = $linkObj.data('navpagenomer'); 494 var navpagecount = $linkObj.data('navpagecount'); 495 var navnum = $linkObj.data('navnum'); 496 497 var nextpagenomer = parseInt(navpagenomer) + 1; 498 var url = ""; 499 500 if ($('#' + ajaxpagesid).length > 0 && navpagenomer < navpagecount && parseInt(navnum) > 0 && ajaxurl != "") { 501 RSAL_Area2Darken($('#' + ajaxpagesid)); 502 RSAL_Area2Darken($linkObj); 503 RSAL_ShowHideModueLoadingIcon(); 504 505 if (ajaxurl.indexOf("?") < 1) { 506 url = ajaxurl + '?ajaxpages=Y&ajaxpagesid=' + ajaxpagesid + '&PAGEN_' + n
506avnum + '=' + nextpagenomer; 507 } else { 508 url = ajaxurl + '&ajaxpages=Y&ajaxpagesid=' + ajaxpagesid + '&PAGEN_' + navnum + '=' + nextpagenomer; 509 } 510 $.ajax({ 511 url: url 512 }).done(function (data) { 513 $('#' + ajaxpagesid).append(data); 514 $linkObj.parents('.ajaxpages').remove(); 515 RSAL_Area2Darken($('#' + ajaxpagesid)); 516 RSAL_Area2Darken($linkObj); 517 RSAL_ShowHideModueLoadingIcon(); 518 }); 519 } else { 520 if (!($('#' + ajaxpagesid).length > 0)) { 521 console.warn('ajaxpages -> empty DOM element'); 522 } 523 if (!(navpagenomer < navpagecount)) { 524 console.warn('ajaxpages -> navpagenomer !< navpagecount'); 525 } 526 if (!(parseInt(navnum) > 0)) { 527 console.warn('ajaxpages -> parseInt(navnum)!>0'); 528 } 529 if (!(ajaxurl != "")) { 530 console.warn('ajaxpages -> ajaxurl is empty'); 531 } 532 } 533 return false; 534 }); 535 // /AJAXPAGES 536 537 // AJAX -> delete products from main page tabs 538 $(document).on('click', '.js_product_delete', function () { 539 var $linkObj = $(this); 540 $linkObj.addClass('click_protection'); 541 var element_id = $linkObj.parents('.js-element').data('elementid'); 542 var from = $linkObj.data('from'); 543 var url = RSAL_SITE_DIR + 'ajax/ajax.php?action=delete&element_id=' + element_id + '&delete_from=' + from; 544 if (element_id > 0 && from != "" && from) { 545 $.getJSON(url, {}, function (json) { 546 if (json.TYPE == "OK") { 547 $linkObj.parents('.js-element').remove(); 548 } else { 549 console.warn(json.MESSAGE); 550 } 551 setTimeout(function () { 552 $linkObj.removeClass('click_protection'); 553 }, RSAL_ClickProtectionDelay); 554 }).fail(function () { 555 console.warn('can\'t load json delete'); 556 setTimeout(function () { 557 $linkObj.removeClass('click_protection'); 558 }, RSAL_ClickProtectionDelay); 559 }); 560 } else { 561 console.warn('empty param element_id or from'); 562 setTimeout(function () { 563 $linkObj.removeClass('click_protection'); 564 }, RSAL_ClickProtectionDelay); 565 } 566 return false; 567 }); 568 569 $(document).on('click', "a.delete-from-cart", function () { 570 571 var $ths = $(this); 572 $(".js-buyform" + $(this).data('pid')).removeClass('inbasket'); 573 574 575 $.ajax({
576 url: "/ajax/2020/ajax-delete-from-cart.php", 577 type: "GET", 578 data: {id: $ths.data('id'), new: "Y"}, 579 dataType: "html", 580 success: function (data) { 581 $('#popup-cart .col-r').html(data); 582 ajaxUpdateCart(); 583 $.colorbox.resize(); 584 } 585 }); 586 /*$.post('/ajax/2020/ajax-delete-from-cart.php', {id: $(this).data('id')}, function (data) { 587 //$('#h-cart').html(data); 588 $.jGrowl("Ð¢Ð¾Ð²Ð°Ñ Ð±Ñл Ñдален из коÑзинÑ", {theme: 'status'}); 589 ajaxUpdateCart(); 590 */ 591 592 /*if (!$('a.delete-from-cart', $('#h-cart')).length) $.fancybox.close(); 593 else $.fancybox({wrapCSS: 'popup-added', padding: 0, href: '#popup-added', maxWidth: 800}); 594 }); 595 */ 596 return false; 597 }); 598 // /AJAX -> delete products from main page tabs 599 600 // add phone_tables class for BODY 601 if (RSAL_PHONETABLET == "Y") { 602 $('body').addClass('phone_tablet'); 603 $('.remove_for_tablet').remove(); 604 } else { 605 if (RSAL_SHOW_MOUSE_LOADING == "Y") { 606 $(document).on('mousemove', function (e) { 607 $('#mouse_loading_icon').css({"top": (e.pageY + 20), "left": (e.pageX + 15)}); 608 }); 609 } 610 } 611 612 $(document).on('mouseenter', '.js-basket-minus, .js-basket-plus', function () { 613 $('html').addClass("disableSelection"); 614 }).on('mouseleave', '.js-basket-minus, .js-basket-plus', function () { 615 $('html').removeClass("disableSelection"); 616 }).on('click', '.js-basket-plus', function () { 617 var value = $(this).siblings('input'), 618 ratio = value.data('ratio'), 619 max = value.attr('data-max'), 620 real = ratio.toString().split('.', 2)[1], 621 length = 0; 622 if (real !== undefined) { 623 length = real.length; 624 } 625 let nextVal = parseFloat(value.val()) + ratio; 626 if (!!max && nextVal >= parseFloat(max)) { 627 nextVal = parseFloat(max); 628 } 629 value.val(nextVal.toFixed(length)).trigger('change'); 630 }).on('click', '.js-basket-minus', function () { 631 var value = $(this).siblings('input'), 632 ratio = value.data('ratio'), 633 real = ratio.toString().split('.', 2)[1], 634 length = 0; 635 if (real !== undefined) { 636 length = real.length; 637 } 638 if (value.val() > ratio) { 639 value.val((parseFloat(value.val()) - ratio).toFixed(length)).trigger('change'); 640 } else { 641 deleteFromBasket(value.attr("data-pid")); 642 } 643 }); 644 645 var $mobileManager = $('#mobile-manager'); 646 if ($mobileManager.length) { 647 $('.form-item', $mobileManager).each(function () { 648 var $ths = $(this); 649 if ($("input", $ths).val() != 1) { 650 $('.price-val', $ths).hide(); 651 } 652 }); 653 $('.form-item label').on('click', function () { 654 var $ths = $(this).parent(), 655 $priceValue = $('.price-val', $ths); 656 if ($("input", $ths).val() != 1) { 657 if (!$priceValue.hasClass('show')) { 658 $priceValue.addClass('show').fadeIn(); 659 } else { 660 $priceValue.removeClass('show').fadeOut(); 661 } 662 } 663 }); 664 } 665}); 666 667function RSAL_SetDeviceType() { 668 if (RSAL_PHONETABLET == 'Y') { 669 $('.body').addclass('tab'); 670 } 671} 672 673function copyToClipboard(text) { 674 let $temp = $("<input>"); 675 $("body").append($temp); 676 $temp.val(text).select(); 677 document.execCommand("copy"); 678 $temp.remove(); 679 $.jGrowl("Ðод ÑкопиÑован", {theme: 'status'}); 680} 681 682BX.addCustomEvent('onFrameDataReceived', RSAL_SetDeviceType); 683 684$(document).ready(function () { 685 $('.captcha_image').click(function () { 686 console.log("!") 687 d = new Date(); 688 img = $(this).attr('src'); 689 $(this).attr('src', img); 690 });
691}); 692 693// ---FROM IA-PEGAS.RU ------------------------------------------------------------------------------------------------ 694 695var $loadAuthForm = $('#load-auth-form'); 696if ($loadAuthForm.length) { 697 $loadAuthForm.on('click', function () { 698 $.fancybox({ 699 autoWidth: true, 700 type: 'ajax', 701 href: '/ajax/2020/ajax-auth.php?backurl=' + location.pathname, 702 ajax: { 703 dataType: 'html', 704 headers: {'X-fancyBox': true}, 705 backurl: location.pathname 706 }, 707 beforeShow: function () { 708 RSAL_HandlerFancyOnBeforeShow(); 709 $('.fancybox-overlay').addClass('form-overlay-auth'); 710 window.initJSThemeFirst(); 711 }, 712 afterClose: function () { 713 RSAL_HandlerFancyOnAfterClose(); 714 }, 715 centerOnScroll: true 716 }); 717 return false; 718 }); 719} 720 721 722function checkInCompare(pid) { 723 copmaredPids = $('*[data-compared]').data('compared'); 724 if ($.inArray(pid, copmaredPids) != -1) { 725 return true; 726 } 727 return false; 728} 729 730;(function ($) { 731 732 function Pager(owl) { 733 this._core = owl; 734 735 this._handlers = { 736 'initialized.owl.carousel': this.init.bind(this), 737 'translate.owl.carousel': this.draw.bind(this), 738 'resized.owl.carousel': this.update.bind(this), 739 }; 740 741 this._core.$element.on(this._handlers); 742 743 this._core.options = $.extend({}, Pager.Defaults, this._core.options); 744 745 this.$pager = $('<div class="owl-pager">'); 746 } 747 748 Pager.prototype.init = function () { 749 this.update() 750 this.draw(); 751 } 752 753 Pager.prototype.draw = function () { 754 if (!this._mounted) { 755 return 756 } 757 this.$pager.text((this._core.relative(this._core._current) + 1) + '/' + this._core._items.length); 758 }; 759 760 Pager.prototype.update = function () { 761 if (this._core.settings.pager) { 762 if (!this._mounted) { 763 this._mounted = true 764 this._core.$element.append(this.$pager); 765 } else if (this._mounted) { 766 this._mounted = false 767 this.$pager.remove() 768 } 769 } 770 } 771 772 Pager.Defaults = { 773 pager: false, 774 } 775 776 $.fn.owlCarousel.Constructor.Plugins.Pager = Pager; 777 778}(jQuery)); 779 780(function ($) { 781 window.initJSThemeFirst = function () { 782 $.colorbox.resize(); 783 $('.phone-mask:not(.js-mask), input[type="tel"]:not(.js-mask), input[name="PERSONAL_PHONE"]:not(.js-mask), input[name="USER_PHONE"]:not(.js-mask)').mask("+7 (999) 999-99-99").addClass('js-mask'); 784 var $catalogItem = $('.catalog-item'); 785 if ($catalogItem.length) { 786 $catalogItem.each(function () { 787 var isCompare = checkInCompare($(this).data('elementid')); 788 if (isCompare) $('.js_add2compare', $(this)).addClass('compared'); 789 }) 790 } 791 792 $('[data-copy-text]:not(.js-inited)').addClass('js-inited').click(function () { 793 copyToClipboard($(this).attr('data-copy-text')); 794 }); 795 796 var jsSlideLink = $('.js-slide-link:not(.js-inited)'); 797 if (jsSlideLink.length) { 798 jsSlideLink.addClass('js-inited').each(function () { 799 var ths = $(this), el, elContainer, maxHeight = 256; 800 if (ths.data('maxheight')) maxHeight = +ths.data('maxheight'); 801 if (ths.data('target')) elContainer = $(ths.data('target')); 802 else elContainer = ths.prev(); 803 el = $('> div', elContainer); 804 var elHeight = el.height(); 805 if (elHeight > maxHeight) { 806 elContainer.css({height: maxHeight}).addClass('slide-init'); 807 ths.addClass('slide-init'); 808 } else { 809 elContainer.removeClass('slide-init open'); 810 ths.removeClass('slide-init open').hide(); 811 } 812 $(window).resize(function () { 813 elHeight = el.height(); 814 if (elHeight > maxHeight) { 815 if (elContainer.hasClass('open')) elContainer.css({height: elHeight}); 816 else { 817 elContainer.css({height: maxHeight}).addClass('slide-init'); 818 ths.addClass('slide-init'); 819 } 820 } else { 821 elContainer.removeClass('slide-init open'); 822 ths.removeClass('slide-init open').hide(); 823 } 824 }); 825 ths.on('click', function () { 826 if (elContainer.hasClass('open')) { 827 elContainer.removeClass('open'); 828 ths.removeClass('open'); 829 elContainer.css({height: maxHeight}); 830 } else { 831 elContainer.css({height: elHeight}); 832 ths.addClass('open'); 833 elContainer.addClass('open'); 834 } 835 return false; 836 }); 837 }); 838 } 839 840
841 var jsSlideLink = $('.js-slide-link:not(.js-inited)'); 842 if (jsSlideLink.length) { 843 jsSlideLink.addClass('js-inited').each(function () { 844 var ths = $(this), el, elContainer, maxHeight = 60; 845 if (ths.data('maxheight')) maxHeight = +ths.data('maxheight'); 846 if (ths.data('target')) elContainer = $(ths.data('target')); 847 else elContainer = ths.prev(); 848 el = $('> div', elContainer); 849 var elHeight = el.height(); 850 if (elHeight > maxHeight) { 851 elContainer.css({height: maxHeight}).addClass('slide-init'); 852 ths.addClass('slide-init'); 853 } 854 $(window).resize(function () { 855 elHeight = el.height(); 856 if (elHeight > maxHeight) { 857 if (elContainer.hasClass('open')) elContainer.css({height: elHeight}); 858 else { 859 elContainer.css({height: maxHeight}).addClass('slide-init'); 860 ths.addClass('slide-init'); 861 } 862 } else { 863 elContainer.removeClass('slide-init open'); 864 ths.removeClass('slide-init open'); 865 } 866 }); 867 ths.on('click', function () { 868 if (elContainer.hasClass('open')) { 869 elContainer.removeClass('open'); 870 ths.removeClass('open'); 871 elContainer.css({height: maxHeight}); 872 } else { 873 elContainer.css({height: elHeight}); 874 ths.addClass('open'); 875 elContainer.addClass('open'); 876 } 877 return false; 878 }); 879 }); 880 } 881 882 var $loadText = $('.load-text:not(.js-inited)'); 883 if ($loadText.length) { 884 $loadText.addClass('js-inited').on('click', function () { 885 var $id = $(this).data('id'); 886 $.fancybox({ 887 type: 'ajax', 888 href: '/ajax/ajax-showtext.php', 889 ajax: { 890 dataType: 'html', 891 headers: {'X-fancyBox': true}, 892 data: { 893 ID: $id, 894 href: location.href 895 } 896 }, 897 openEffect: 'fade', 898 closeEffect: 'fade', 899 autoSize: true, 900 closeClick: false, 901 title: null, 902 padding: 0, 903 beforeShow: function () { 904 RSAL_HandlerFancyOnBeforeShow(); 905 $('.fancybox-overlay').addClass('form-overlay-' + $id) 906 }, 907 afterClose: function () { 908 RSAL_HandlerFancyOnAfterClose(); 909 }, 910 afterShow: initJSThemeFirst, 911 wrapCSS: 'popup-text popup-text-' + $id, 912 centerOnScroll: true 913 }); 914 return false; 915 }); 916 } 917 918 var $loadForm = $('.load-form:not(.js-inited)'); 919 if ($loadForm.length) { 920 $loadForm.addClass('js-inited').on('click', function () { 921 var $id = $(this).data('id'); 922 $.fancybox({ 923 type: 'ajax', 924 href: '/ajax/ajax-callback.php', 925 ajax: { 926 dataType: 'html', 927 headers: {'X-fancyBox': true}, 928 data: { 929 WEB_FORM_ID: $id, 930 href: location.href, 931 info: $(this).data("info"), 932 new: "Y" 933 } 934 }, 935 openEffect: 'fade', 936 closeEffect: 'fade', 937 autoSize: true, 938 closeClick: false, 939 title: null, 940 padding: 0, 941 beforeShow: function () { 942 RSAL_HandlerFancyOnBeforeShow(); 943 $('.fancybox-overlay').addClass('form-overlay-' + $id) 944 }, 945 afterClose: function () { 946 RSAL_HandlerFancyOnAfterClose(); 947 }, 948 afterShow: initJSThemeFirst, 949 wrapCSS: 'popup-form popup-form-' + $id 950 }); 951 return false; 952 }); 953 } 954 955 var $oneClick = $('.js-one-click:not(.js-inited)'); 956 if ($oneClick.length) { 957 $oneClick.addClass('js-inited').on('click', function () { 958 $.fancybox({ 959 type: 'ajax', 960 href: '/ajax/ajax-one-click.php', 961 ajax: { 962 dataType: 'html', 963 headers: {'X-fancyBox': true}, 964 data: { 965 pid: $(this).data('pid'), 966 href: location.href, 967 info: $(this).data("info") 968 } 969 }, 970 openEffect: 'fade', 971 closeEffect: 'fade', 972 maxWidth: 800, 973 maxHeight: 800, 974 autoSize: true, 975 closeClick: false, 976 title: null, 977 padding: 0, 978 beforeShow: function () { 979 RSAL_HandlerFancyOnBeforeShow(); 980 }, 981 afterClose: function () { 982 RSAL_HandlerFancyOnAfterClose(); 983 }, 984 afterShow: initJSThemeFirst 985 }); 986 987 return false; 988 }); 989 } 990 991 var $art2cart = $('.js-art2cart:not(.js-inited)'); 992 if ($art2cart.length) { 993 $art2cart.addClass('js-inited').on('click', function () { 994 $.fancybox({ 995 type: 'ajax', 996 href: '/ajax/ajax-art2cart.php', 997 ajax: { 998 dataType: 'html', 999 headers: {'X-fancyBox': true}, 1000 data: { 1001 href: location.href, 1002 } 1003 }, 1004 openEffect: 'fade', 1005 closeEffect: 'fade', 1006 maxWidth: 800, 1007 maxHeight: 800, 1008 autoSize: true, 1009 closeClick: false, 1010 title: null, 1011 padding: 0, 1012 beforeShow: function () { 1013 RSAL_HandlerFancyOnBeforeShow(); 1014 }, 1015 afterClose: function () { 1016 RSAL_HandlerFancyOnAfterClose(); 1017 }, 1018 afterShow: initJSThemeFirst 1019 }); 1020 1021 return false; 1022 }); 1023 } 1024 1025 var $art2cartSubmit = $('#submit_art2cart:not(.js-inited)'); 1026 if ($art2cartSubmit.length) { 1027 $art2cartSubmit.addClass('js-inited').on('submit', function () { 1028 var $ths = $(this); 1029 RSAL_Area2Darken($ths);
1030 RSAL_ShowHideModueLoadingIcon(); 1031 $.post($ths.attr("action"), { 1032 art: $(this).find("input[name='art']").val(), 1033 art2cart: 1 1034 }, function (data) { 1035 $ths.closest(".styleforsmallpopup").parent().html(data); 1036 RSAL_Area2Darken($ths); 1037 RSAL_ShowHideModueLoadingIcon(); 1038 window.initJSThemeFirst(); 1039 }).fail(function (data) { 1040 RSAL_Area2Darken($ths); 1041 RSAL_ShowHideModueLoadingIcon(); 1042 console.warn('can\'t load json submit_art2cart'); 1043 }); 1044 return false; 1045 }); 1046 } 1047 1048 var $inputPhone = $("input.js-phone:not(.js-process)"); 1049 if ($inputPhone.length) { 1050 $inputPhone.addClass('js-process').mask("+7 (999) 999 - 99 - 99", { 1051 autoclear: false, 1052 }); 1053 } 1054 1055 if ($("textarea.lined:not(.js-inited)").length) { 1056 $("textarea.lined:not(.js-inited)").addClass("js-inited").linedtextarea(); 1057 } 1058 1059 if ($("input[type='file']:not(.js-inited)").length) { 1060 var $inputFile = $("input[type='file']:not(.js-inited)").addClass("js-inited"); 1061 $inputFile.each(function () { 1062 var $ths = $(this); 1063 $ths.wrap('<div class="file-wrap"></div>').after('<div class="text-wrap"><div class="txt">' + $ths.val().replace(/\\/g, '/').replace(/.*\//, '') + '</div></div>'); 1064 }); 1065 $inputFile.on("change", function () { 1066 var $ths = $(this); 1067 $ths.next('.text-wrap').find('.txt').text($ths.val().replace(/\\/g, '/').replace(/.*\//, '')); 1068 }); 1069 } 1070 1071 var inlineLoadForm = $('.inline-load-form:not(.js-inited)'); 1072 if (inlineLoadForm.length) { 1073 inlineLoadForm.addClass('js-inited').each(function () { 1074 var ths = $(this); 1075 $.ajax({
1076 url: '/ajax/ajax-callback.php?' + $.param({ 1077 WEB_FORM_ID: ths.data('id'), 1078 TEMPLATE: ths.data('template'), 1079 href: location.href, 1080 info: ths.data("info"), 1081 TITLE: ths.data("title"), 1082 HIDE_TITLE: ths.data("hide-title") 1083 }), 1084 dataType: "html", 1085 type: "GET", 1086 success: function (data, textStatus, jqXHR) { 1087 ths.replaceWith(data); 1088 initJSThemeFirst(); 1089 } 1090 }); 1091 //ths.load('/ajax/ajax-webform.php',{WEB_FORM_ID:ths.data('id'), href: location.href, info: ths.data("info")},initJSThemeFirst); 1092 }); 1093 } 1094 1095 var $fileWrap = $(".file-wrap input[type=file]:not(.js-inited2)"), $fileValue = $("#file-value"); 1096 if ($fileWrap.length && $fileValue.length) { 1097 $fileWrap.addClass('js-inited2').on("change", function () { 1098 $fileValue.val(this.value); 1099 }); 1100 } 1101 1102 var $colorboxInline = $('.colorbox-inline:not(.js-inited)'); 1103 if ($colorboxInline.length) { 1104 $colorboxInline.addClass('js-inited').on('click', function () { 1105 $.colorbox({ 1106 inline: true, 1107 href: $(this).attr('href'), 1108 className: 'c-form c-' + $(this).data('cls'), 1109 onComplete: function () { 1110 initJSThemeFirst(); 1111 } 1112 }); 1113 1114 return false; 1115 }); 1116 } 1117 1118 // region пеÑеклÑÑаÑÐµÐ»Ñ Ð°Ð²ÑоÑизаÑии логин/паÑÐ¾Ð»Ñ 1119 let $authSwitcher = $('input[name="AUTH_TYPE"]:not(.js-inited)'); 1120 if ($authSwitcher.length) { 1121 let $loginInput = $('input[name="USER_LOGIN"]', $authSwitcher.closest('form')), 1122 $phoneInput = $('input[name="USER_PHONE"]', $authSwitcher.closest('form')); 1123 if ($loginInput.length && $phoneInput.length) { 1124 $authSwitcher.each(function () { 1125 let $this = $(this); 1126 $this.addClass('js-inited').on('change', function (evt) { 1127 if (evt.target.value === 'login') { 1128 $loginInput.closest('.form-item').removeClass('d-none'); 1129 $phoneInput.closest('.form-item').addClass('d-none'); 1130 } else { 1131 $loginInput.closest('.form-item').addClass('d-none'); 1132 $phoneInput.closest('.form-item').removeClass('d-none'); 1133 } 1134 }); 1135 }) 1136 } 1137 } 1138 // endregion 1139 1140 // region tippy 1141 let tippyNodes = document.querySelectorAll('.tippy:not(.js-inited)'); 1142 if (tippyNodes.length) { 1143 for (let item of tippyNodes) { 1144 tippy(item); 1145 item.classList.add('js-inited'); 1146 } 1147 } 1148 // endregion 1149 1150 // region chosen 1151 let $chosen = $('[data-chosenop]:not(.js-inited)'); 1152 1153 if ($chosen.length) { 1154 $chosen.each(function () { 1155 var $el = $(this).addClass('js-inited').chosen($.extend({}, $(this).data('chosenop'))).change(function () { 1156 let $option = $('option:selected', $(this)); 1157 if (!!$option) { 1158 let href = $option.attr('data-href'); 1159 if (href.length) { 1160 document.location.href = href; 1161 return false; 1162 } 1163 } 1164 }); 1165 $el.data('chosen')?.container?.addClass($el.attr('class')); 1166 }); 1167 } 1168 // endregion 1169 1170 }; 1171 1172 BX.addCustomEvent('onAjaxSuccess', function (data, config) { 1173 window.initJSThemeFirst(); // иниÑиализиÑÑем пеÑвÑм 1174 if (typeof Recaptchafree != "undefined") Recaptchafree.reset(); 1175 $(window).resize(); 1176 });
1177 1178 $(document).ready(function () { 1179 1180 window.initJSThemeFirst(); // иниÑиализиÑÑем пеÑвÑм 1181 1182 if ($('.slider-carousel').length) { 1183 $('.slider-carousel').each(function () { 1184 var $ths = $(this); 1185 new Swiper($('.swiper-container', $ths), { 1186 nextButton: $('.sw-next', $ths), 1187 prevButton: $('.sw-prev', $ths), 1188 slidesPerView: 'auto', 1189 loop: false, 1190 grabCursor: true, 1191 autoplay: 5000, 1192 }); 1193 }); 1194 } 1195 1196 if ($('.slider-carousel-vertical').length) { 1197 $('.slider-carousel-vertical').each(function () { 1198 var $ths = $(this); 1199 new Swiper($('.swiper-container', $ths), { 1200 nextButton: $('.sw-next', $ths), 1201 prevButton: $('.sw-prev', $ths), 1202 slidesPerView: 'auto', 1203 direction: 'vertical', 1204 loop: false, 1205 grabCursor: true, 1206 autoplay: false, 1207 }); 1208 }); 1209 } 1210 1211 var $coorpMedialibraryCarousel = $('#coorp-medialibrary-carousel') 1212 if ($coorpMedialibraryCarousel.length) { 1213 new Swiper($('.swiper-container', $coorpMedialibraryCarousel), { 1214 slidesPerView: 'auto', 1215 loop: true, 1216 grabCursor: false, 1217 autoplay: 3000, 1218 spaceBetween: 20, 1219 }); 1220 } 1221 1222 $('#scroll-up').click(function () { 1223 $('body,html').animate({scrollTop: 0}, 800); 1224 return false; 1225 }); 1226 1227 if ($("#disclaimer-close").length) { 1228 $("#disclaimer-close").click(function () { 1229 $.cookie('x_disclaimer', 1, {path: '/', expires: 1000}); 1230 $(".panel-disclaimer").remove(); 1231 $('body').removeClass('page-panel-disclaimer'); 1232 return false; 1233 }); 1234 if ($.cookie('x_disclaimer')) $(".panel-disclaimer").remove(); 1235 } 1236 1237 if ($(".send-error").length) { 1238 $(".send-error-close").click(function () { 1239 $.cookie('x_send_error', 1, {path: '/'}); 1240 $(".send-error").remove(); 1241 return false; 1242 }); 1243 if ($.cookie('x_send_error')) $(".send-error").remove(); 1244 } 1245 1246 }); 1247})(jQuery);
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.