PageSourceSearch

https://www.skm-mebel.ru/local/templates/aspro_next_modify/js/main.js?1781497125229438

js skm-mebel.ru collected 2026-10-06 04:41:23 UTC 229,438 bytes, 6,923 lines download raw bytes

1var basketTimeoutSlide;
2var resizeEventTimer;
3
4var funcDefined = function(func){
5	try
6	{
7		if(typeof func == 'function')
8			return true;
9		else
10			return typeof window[func] === "function";
11	}
12	catch (e)
13	{
14		return false;
15	}
16}
17
18if(!funcDefined('setLocationSKU')){
19	function setLocationSKU(ID){
20		var objUrl = parseUrlQuery(),
21			j = 0,
22			prefix = '',
23			query_string = '',
24			url = '';
25		if('oid' in objUrl)
26		{
27			if(parseInt(objUrl.oid)>0)
28			{
29				objUrl.oid = ID;
30				for(var i in objUrl)
31				{
32					if(parseInt(j)>0)
33						prefix = '&';
34					query_string = query_string + prefix + i + '='+ objUrl[i];
35					j++;
36				}
37				if(query_string)
38				{
39					url = location.pathname+'?'+query_string;
40				}
41				try
42				{
43					history.pushState(null, null, url);
44					return;
45				}
46				catch(e){}
47				location.hash = '#' + url.substr(1)
48			}
49		}
50	}
51}
52
53if(!funcDefined('ShowOverlay')){
54	ShowOverlay = function(){
55		$('<div class="jqmOverlay waiting"></div>').appendTo('body');
56	}
57}
58if(!funcDefined('HideOverlay')){
59	HideOverlay = function(){
60		$('.jqmOverlay').detach();
61	}
62}
63if(!funcDefined('trimPrice')){
64	var trimPrice = function trimPrice(s){
65		s=s.split(" ").join("");
66		s=s.split("&nbsp;").join("");
67		return s;
68	}
69}
70
71if(!funcDefined('markProductRemoveBasket')){
72	var markProductRemoveBasket = function markProductRemoveBasket(id){
73		console.log('markProductRemoveBasket')
74		$('.in-cart[data-item='+id+']').hide();
75		// $('.to-cart[data-item='+id+']').show();
76		// $('.to-cart[data-item='+id+']').closest('.button_block').removeClass('wide');
77		// $('.to-cart[data-item='+id+']').closest('.counter_wrapp').find('.counter_block').show();
78		$('.counter_block[data-item='+id+']').show();
79		$('.in-subscribe[data-item='+id+']').hide();
80		$('.to-subscribe[data-item='+id+']').show();
81		$('.wish_item[data-item='+id+']').removeClass("added");
82		$('.wish_item[data-item='+id+'] .value:not(.added)').show();
83		$('.wish_item[data-item='+id+'] .value.added').hide();
84	}
85}
86
87if(!funcDefined('markProductAddBasket')){
88	var markProductAddBasket = function markProductAddBasket(id){
89		console.log("markProductAddBasket")
90		// $('.to-cart[data-item='+id+']').hide();
91		// $('.to-cart[data-item='+id+']').closest('.counter_wrapp').find('.counter_block').hide();
92		// $('.to-cart[data-item='+id+']').closest('.button_block').addClass('wide');
93		$('.in-cart[data-item='+id+']').show();
94		$('.wish_item[data-item='+id+']').removeClass("added");
95		$('.wish_item[data-item='+id+'] .value:not(.added)').show();
96		$('.wish_item[data-item='+id+'] .value.added').hide();
97	}
98}
99
100if(!funcDefined('markProductDelay')){
101	var markProductDelay = function markProductDelay(id){
102		console.log('markProductDelay')
103		$('.in-cart[data-item='+id+']').hide();
104		// $('.to-cart[data-item='+id+']').show();
105		// $('.to-cart[data-item='+id+']').closest('.counter_wrapp').find('.counter_block').show();
106		// $('.to-cart[data-item='+id+']').closest('.button_block').removeClass('wide');
107		$('.wish_item[data-item='+id+']').addClass("added");
108		$('.wish_item[data-item='+id+'] .value:not(.added)').hide();
109		$('.wish_item[data-item='+id+'] .value.added').css('display','block');
110	}
111}
112
113if(!funcDefined('markProductSubscribe')){
114	var markProductSubscribe = function markProductSubscribe(id){
115		$('.to-subscribe[data-item='+id+']').hide();
116		$('.in-subscribe[data-item='+id+']').css('display','block');
117	}
118}
119
120if(!funcDefined('basketFly')){
121	var basketFly = function basketFly(action,opener){
122		/*if(arNextOptions['PAGES']['BASKET_PAGE'])
123			return;*/
124		$.post( arNextOptions['SITE_DIR']+"ajax/basket_fly.php", "PARAMS="+$("#basket_form").find("input#fly_basket_params").val(), $.proxy(function( data ){
125			var small=$('.opener .basket_count').hasClass('small'),
126				basket_count=$(data).find('.basket_count').find('.items div').text();
127			$('#basket_line .basket_fly').addClass('loaded').html(data);
128
129			if(action=="refresh")
130				$('li[data-type=AnDelCanBuy]').trigger('click');
131
132			if(typeof(opener) == 'undefined')
133			{
134				if(window.matchMedia('(min-width: 769px)').matches)
135				{
136					if(action=='open')
137					{
138						if(small)
139						{
140							if(arNextOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N')
141								$('.opener .basket_count').click();
142						}
143						else
144						{
145							$('.opener .basket_count').removeClass('small')
146							$('.tabs_content.basket li[item-section="AnDelCanBuy"]').addClass('cur');
147							$('#basket_line ul.tabs li[item-section="AnDelCanBuy"]').addClass('cur');
148						}
149					}
150					else if(action=='wish')
151					{
152						if(small)
153						{
154							if(arNextOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N')
155								$('.opener .wish_count').click();
156						}
157						else
158						{
159							$('.opener .wish_count').removeClass('small')
160							$('.tabs_content.basket li[item-section="DelDelCanBuy"]').addClass('cur');
161							$('#basket_line ul.tabs li[item-section="DelDelCanBuy"]').addClass('cur');
162						}
163					}
164					else
165					{
166						if(arNextOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N')
167							$('.opener .basket_count').click();
168					}
169				}
170			}
171		}));
172	}
173}
174
175//work with hash start
176var lastHash = location.hash;
177if("onhashchange" in window)
178{
179	$(window).bind('hashchange', function() {
180		var newHash = location.hash;
181		if(newHash == '#delayed')
182		{
183			if($('#basket_toolbar_button_delayed').length)
184				$('#basket_toolbar_button_delayed').trigger('click');
185		}
186		else
187		{
188			if($('#basket_toolbar_button').length)
189				$('#basket_toolbar_button').trigger('click');
190		}
191		// Do something
192		var diff = compareHash(newHash, lastHash);
193		// alert("Difference between old and new hash:\n"+diff[0]+"\n\n"+diff[1]);
194
195		//At the end of the func:
196		lastHash = newHash;
197	});
198
199	function compareHash(current, previous){
200		for(var i=0, len=Math.min(current.length, previous.length); i<len; i++){
201			if(current.charAt(0) != previous.charAt(0)) break;
202		}
203		current = current.substr(i);
204		previous = previous.substr(i);
205		for(var i=0, len=Math.min(current.length, previous.length); i<len; i++){
206			if(current.substr(-1) != previous.substr(-1)) break;
207		}
208
209		//Array: Current = New hash, previous = old hash
210		return [current, previous];
211	}
212}
213$(document).on('click', "#basket_toolbar_button", function(){
214	if(lastHash)
215		location.hash = 'cart';
216})
217$(document).on('click', "#basket_toolbar_button_delayed", function(){
218	if(lastHash)
219		location.hash = 'delayed';
220})
221//work with hash end
222
223$(document).on('click', "#basket_line .basket_fly .opener > div.clicked", function(){
224	if(arNextOptions['PAGES']['BASKET_PAGE'])
225		return;
226	function onOpenFlyBasket(_this){
227		$("#basket_line .basket_fly .tabs li").removeClass("cur");
228		$("#basket_line .basket_fly .tabs_content li").removeClass("cur");
229		$("#basket_line .basket_fly .remove_all_basket").removeClass("cur");
230		if(!$(_this).is(".wish_count.empty"))
231		{
232			$("#basket_line .basket_fly .tabs_content li[item-section="+$(_this).data("type")+"]").addClass("cur");
233			$("#basket_line .basket_fly .tabs li:eq("+$(_this).index()+")").addClass("cur");
234			$("#basket_line .basket_fly .remove_all_basket."+$(_this).data("type")).addClass("cur");
235		}
236		else
237		{
238			$("#basket_line .basket_fly .tabs li").first().addClass("cur").siblings().removeClass("cur");
239			$("#basket_line .basket_fly .tabs_content li").first().addClass("cur").siblings().removeClass("cur");
240			$("#basket_line .basket_fly .remove_all_basket").first().addClass("cur");
241		}
242		$("#basket_line .basket_fly .opener > div.clicked").removeClass('small');
243	}
244
245	if(window.matchMedia('(min-width: 769px)').matches)
246	{
247		var _this = this;
248		if(parseInt($("#basket_line .basket_fly").css("right")) < 0)
249		{
250			$("#basket_line .basket_fly").stop().animate({"right": "0"}, 333, function(){
251				if($(_this).closest('.basket_fly.loaded').length)
252				{
253					onOpenFlyBasket(_this);
254				}
255				else
256				{
257					$.ajax({
258						url: arNextOptions['SITE_DIR'] + 'ajax/basket_fly.php',
259						type: 'post',
260						success: function(html){
261							$('#basket_line .basket_fly').addClass('loaded').html(html);
262							onOpenFlyBasket(_this);
263						}
264					});
265				}
266			});
267		}
268		else if($(this).is(".wish_count:not(.empty)") && !$("#basket_line .basket_fly .basket_sort ul.tabs li.cur").is("[item-section=DelDelCanBuy]"))
269		{
270			$("#basket_line .basket_fly .tabs li").removeClass("cur");
271			$("#basket_line .basket_fly .tabs_content li").removeClass("cur");
272			$("#basket_line .basket_fly .remove_all_basket").removeClass("cur");
273			$("#basket_line .basket_fly .tabs_content li[item-section="+$(this).data("type")+"]").addClass("cur");
274			$("#basket_line  .basket_fly .tabs li:eq("+$(this).index()+")").first().addClass("cur");
275			$("#basket_line .basket_fly .remove_all_basket."+$(this).data("type")).first().addClass("cur");
276		}
277		else if($(this).is(".basket_count") && $("#basket_line .basket_fly .basket_sort ul.tabs li.cur").length && !$("#basket_line .basket_fly .basket_sort ul.tabs li.cur").is("[item-section=AnDelCanBuy]"))
278		{
279			$("#basket_line .basket_fly .tabs li").removeClass("cur");
280			$("#basket_line .basket_fly .tabs_content li").removeClass("cur");
281			$("#basket_line .basket_fly .remove_all_basket").removeClass("cur");
282			$("#basket_line  .basket_fly .tabs_content li:eq("+$(this).index()+")").addClass("cur");
283			$("#basket_line  .basket_fly .tabs li:eq("+$(this).index()+")").first().addClass("cur");
284			$("#basket_line .basket_fly .remove_all_basket."+$(this).data("type")).first().addClass("cur");
285		}
286		else
287		{
288			$("#basket_line .basket_fly").stop().animate({"right": -$("#basket_line .basket_fly").outerWidth()}, 150);
289			$("#basket_line .basket_fly .opener > div.clicked").addClass('small');
290		}
291	}
292});
293
294if(!funcDefined("clearViewedProduct")){
295	function clearViewedProduct(){
296		try{
297			var siteID = arNextOptions.SITE_ID;
298			var localKey = 'NEXT_VIEWED_ITEMS_' + siteID;
299			var cookieParams = {path: '/', expires: 30};
300			if(typeof BX.localStorage !== 'undefined')
301			{
302				// remove local storage
303				BX.localStorage.set(localKey, {}, 0);
304			}
305			// remove cookie
306			$.removeCookie(localKey, cookieParams);
307		}
308		catch(e){
309			console.error(e);
310		}
311	}
312}
313
314if(!funcDefined("setViewedProduct")){
315	function setViewedProduct(id, arData){
316		try{
317
318			// save $.cookie option
319			var bCookieJson = $.cookie.json;
320			$.cookie.json = true;
321
322			var siteID = arNextOptions.SITE_ID;
323			var localKey = 'NEXT_VIEWED_ITEMS_' + siteID;
324			var cookieParams = {path: '/', expires: 30};
325
326			if((typeof BX.localStorage !== 'undefined') && (typeof id !== 'undefined') && (typeof arData !== 'undefined')){
327				var PRODUCT_ID = (typeof arData.PRODUCT_ID !== 'undefined') ? arData.PRODUCT_ID : id;
328				var arViewedLocal = BX.localStorage.get(localKey) ? BX.localStorage.get(localKey) : {};
329				var arViewedCookie = $.cookie(localKey) ? $.cookie(localKey) : {};
330				var count = 0;
331
332				// delete some items (sync cookie & local storage)
333				for(var _id in arViewedLocal){
334					arViewedLocal[_id].IS_LAST = false;
335					if(typeof arViewedCookie[_id] === 'undefined'){
336						delete arViewedLocal[_id];
337					}
338				}
339				for(var _id in arViewedCookie){
340					if(typeof arViewedLocal[_id] === 'undefined'){
341						delete arViewedCookie[_id];
342					}
343				}
344
345				for(var _id in arViewedCookie){
346					count++;
347				}
348
349				// delete item if other item (offer) of that PRODUCT_ID is exists
350				if(typeof arViewedLocal[PRODUCT_ID] !== 'undefined'){
351					if(arViewedLocal[PRODUCT_ID].ID != id){
352						delete arViewedLocal[PRODUCT_ID];
353						delete arViewedCookie[PRODUCT_ID];
354					}
355				}
356
357				delete arViewedLocal[2243];
358				delete arViewedCookie[2243];
359
360				var time = new Date().getTime();
361				arData.ID = id;
362				arData.ACTIVE_FROM = time;
363				arData.IS_LAST = true;
364				arViewedLocal[PRODUCT_ID] = arData;
365				arViewedCookie[PRODUCT_ID] = [time.toString(), arData.PICTURE_ID];
366
367				$.cookie(localKey, arViewedCookie, cookieParams);
368				BX.localStorage.set(localKey, arViewedLocal, 2592000);  // 30 days
369			}
370		}
371		catch(e){
372			console.error(e);
373		}
374		finally{
375			// restore $.cookie option
376			$.cookie.json = bCookieJson;
377		}
378	}
379}
380
381
382
383if(!funcDefined('initSelects')){
384	function initSelects(target){
385		var iOS = ( navigator.userAgent.match(/(iPad|iPhone|iPod)/g) ? true : false );
386		if ( iOS ) return;
387		if($("#bx-soa-order").length)
388			return;
389		if ($('#calc').length > 0)
390			return;
391		// SELECT STYLING
392		$(target).find('.wrapper1 select:visible').ikSelect({
393			syntax: '<div class="ik_select_link"> \
394						<span class="ik_select_link_text"></span> \
395						<div class="trigger"></div> \
396					</div> \
397					<div class="ik_select_dropdown"> \
398						<div class="ik_select_list"> \
399						</div> \
400					</div>',
401			dynamicWidth: true,
402			ddMaxHeight: 112,
403			customClass: 'common_select',
404			//equalWidths: true,
405			onShow: function(inst){
406				inst.$dropdown.css('top', (parseFloat(inst.$dropdown.css('top'))-5)+'px');
407				if ( inst.$dropdown.outerWidth() < inst.$link.outerWidth() ){
408					inst.$dropdown.css('width', inst.$link.outerWidth());
409				}
410				if ( inst.$dropdown.outerWidth() > inst.$link.outerWidth() ){
411					inst.$dropdown.css('width', inst.$link.outerWidth());
412				}
413				var count=0,
414					client_height=0;
415				inst.$dropdown.css('left', inst.$link.offset().left);
416				$(inst.$listInnerUl).find('li').each(function(){
417					if(!$(this).hasClass('ik_select_option_disabled')){
418						++count;
419						client_height+=$(this).outerHeight();
420					}
421				})
422				if(client_height<112){
423					inst.$listInner.css('height', 'auto');
424				}else{
425					inst.$listInner.css('height', '112px');
426				}
427				inst.$link.addClass('opened');
428				inst.$listInner.addClass('scroller');
429				if($('.confirm_region').length)
430					$('.confirm_region').remove();
431			},
432			onHide: function(inst){
433				inst.$link.removeClass('opened');
434			}
435		});
436		// END OF SELECT STYLING
437
438		var timeout;
439		$(window).on('resize', function(){
440			ignoreResize.push(true);
441				clearTimeout(timeout);
442				timeout = setTimeout(function(){
443					//$('select:visible').ikSelect('redraw');
444					var inst='';
445					if(inst=$('.common_select-link.opened + select').ikSelect().data('plugin_ikSelect')){
446						inst.$dropdown.css('left', inst.$link.offset().left+'px');
447					}
448				}, 20);
449			ignoreResize.pop();
450		});
451	}
452}
453
454if(!funcDefined('CheckTopMenuFullCatalogSubmenu')){
455	CheckTopMenuFullCatalogSubmenu = function(){
456		if(arNextOptions['THEME']['MENU_TYPE_VIEW'] != 'HOVER')
457			return;
458
459		var $menu = $('.menu_top_block');
460		if($menu.length)
461		{
462			var $wrapmenu = $menu.parents('.wrap_menu');
463
464			var wrapMenuWidth = $menu.closest('.wrapper_inner').actual('width');
465			if(!wrapMenuWidth)
466				wrapMenuWidth = $menu.closest('.wraps').actual('width');
467
468			var bCatalogFirst = $menu.hasClass('catalogfirst');
469			var findMenuLi = $('.menu_top_block:visible li.full');
470			var parentSubmenuWidth = $menu.actual('outerWidth');
471			var wrapMenuLeft = 0;
472			var wrapMenuRight = 0;
473
474			if($wrapmenu.length)
475			{
476				wrapMenuWidth = $wrapmenu.actual('outerWidth');
477				wrapMenuLeft = $wrapmenu.offset().left;
478				wrapMenuRight = wrapMenuLeft + wrapMenuWidth;
479			}
480
481			if($('.catalog_block.menu_top_block').length){
482				if($('.catalog_block.menu_top_block').is(':visible'))
483					findMenuLi=$('.menu_top_block.catalog_block li.full');
484			}
485			findMenuLi.each(function(){
486				var $this = $(this);
487				var $submenu = $this.find('>.dropdown');
488
489				if($submenu.length){
490					//if(bCatalogFirst){
491						$submenu.css({left: parentSubmenuWidth + 'px', width: (wrapMenuWidth - parentSubmenuWidth) + 'px', 'padding-left': '0px', 'padding-right': '0px', 'opacity': 1});
492					/*}
493					else{
494						$submenu.css({left: ($this.offset().left * -1) + 'px', width: ($(window).width() - 1) + 'px', 'padding-left': wrapMenuLeft + 'px', 'padding-right': ($(window).width() - wrapMenuRight) + 'px'});
495					}*/
496					// if(!isOnceInited && bCatalogFirst && arNextOptions["THEME"]["MENU_POSITION"] == "TOP"){
497					if(!isOnceInited && arNextOptions["THEME"]["MENU_POSITION"] == "TOP"){
498						$this.on('mouseenter', function(){
499							$submenu.css('min-height', $this.closest('.dropdown').actual('outerHeight') + 'px');
500						});
501					}
502				}
503			});
504		}
505	}
506}
507
508$.fn.getMaxHeights = function( outer, classNull, minHeight ){
509	var maxHeight = this.map( function( i, e ){
510		var calc_height=0;
511		$(e).css('height', '');
512
513		if( outer == true )
514			calc_height=$(e).actual('outerHeight');
515		else
516			calc_height=$(e).actual('height');
517
518		return calc_height;
519	}).get();
520	for(var i = 0, c = maxHeight.length; i < c; ++i)
521	{
522		if(maxHeight[i] % 2)
523			--maxHeight[i];
524	}
525	return Math.max.apply( this, maxHeight );
526}
527
528$.fn.equalizeHeights = function( outer, classNull, minHeight ){
529	var maxHeight = this.map( function( i, e ){
530		var minus_height=0,
531			calc_height=0;
532
533
534		if(classNull!==false)
535		{
536			if(!isMobile)
537				minus_height=parseInt($(e).find(classNull).actual('outerHeight'));
538		}
539
540		if(minus_height)
541			minus_height+=12;
542		$(e).css('height', '');
543		if( outer == true )
544			calc_height=$(e).actual('outerHeight')-minus_height;
545		else
546			calc_height=$(e).actual('height')-minus_height;
547
548		if(minHeight!==false)
549		{
550			if(calc_height<minHeight)
551				calc_height+=(minHeight-calc_height);
552
553			if(window.matchMedia('(max-width: 520px)').matches)
554				calc_height=300;
555
556			if(window.matchMedia('(max-width: 400px)').matches)
557				calc_height=200;
558
559		}
560		return calc_height;
561	}).get();
562
563	for(var i = 0, c = maxHeight.length; i < c; ++i){
564		if(maxHeight[i] % 2){
565			--maxHeight[i];
566		}
567	}
568	// console.group('equalizeHeights');
569	// console.log('this', this);
570	// console.log('maxHeight', Math.max.apply( this, maxHeight ));
571	// console.groupEnd('equalizeHeights');
572	return this.height( Math.max.apply( this, maxHeight ) );
573}
574
575$.fn.getFloatWidth = function(){
576	var width = 0
577	if($(this).length){
578		var rect = $(this)[0].getBoundingClientRect();
579		if(!(width = rect.width))
580			width = rect.right - rect.left;
581	}
582	return width
583}
584
585$.fn.sliceHeight = function( options ){
586	function _slice(el){
587		el.each(function() {
588			$(this).css('line-height', '');
589			$(this).css('height', '');
590		});
591		if(options.mobile == true)
592		{
593			if(window.matchMedia('(max-width: 550px)').matches)
594				return;
595		}
596		if(typeof(options.autoslicecount) == 'undefined' || options.autoslicecount !== false){
597			var elsw=(typeof(options.row) !== 'undefined' && options.row.length) ?  el.first().parents(options.row).getFloatWidth() : el.first().parents('.items').getFloatWidth(),
598				elw=(typeof(options.item) !== 'undefined' && options.item.length) ? $(options.item).first().getFloatWidth() : (el.first().hasClass('item') ? el.first().getFloatWidth() : el.first().parents('.item').getFloatWidth());
599
600			if(!elsw){
601				elsw = el.first().parents('.row').getFloatWidth();
602			}
603			if(elw && options.fixWidth)
604				elw -= options.fixWidth;
605
606			if(elsw && elw){
607				options.slice = Math.floor(elsw / elw);
608			}
609		}
610		if(options.customSlice) //manual slice count
611		{
612			var arBreakpoints = Object.keys(options.breakpoint),
613				bSliceNext = false;
614			if(arBreakpoints.length)
615			{
616				elw=(typeof(options.item) !== 'undefined' && options.item.length) ? $(options.item).last().getFloatWidth() : (el.last().hasClass('item') ? el.last().getFloatWidth() : el.last().parents('.item').getFloatWidth());
617				if(elw)
618					options.sliceNext = Math.floor(elsw / elw);
619				for(var key in arBreakpoints)
620				{
621					if(window.matchMedia(arBreakpoints[key].toString()).matches)
622					{
623						bSliceNext = true;
624						options.slice = options.breakpoint[arBreakpoints[key]];
625					}
626				}
627			}
628		}
629		if(typeof(options.typeResize) == 'undefined' || options.typeResize == false)
630		{
631			if(options.slice){
632				for(var i = 0; i < el.length; i += options.slice){
633					if(options.customSlice && options.sliceNext && bSliceNext && i) //manual slice count
634						options.slice = options.sliceNext;
635					$(el.slice(i, i + options.slice)).equalizeHeights(options.outer, options.classNull, options.minHeight, options.typeResize, options.typeValue);
636				}
637			}
638			if(options.lineheight){
639				var lineheightAdd = parseInt(options.lineheight);
640				if(isNaN(lineheightAdd)){
641					lineheightAdd = 0;
642				}
643				el.each(function() {
644					$(this).css('line-height', ($(this).actual('height') + lineheightAdd) + 'px');
645				});
646			}
647		}
648	}
649	var options = $.extend({
650		slice: null,
651		sliceNext: null,
652		outer: false,
653		lineheight: false,
654		autoslicecount: true,
655		classNull: false,
656		minHeight: false,
657		row:false,
658		item:false,
659		typeResize:false,
660		typeValue:false,
661		fixWidth:0,
662		resize:true,
663		mobile:false,
664		customSlice:false,
665		breakpoint:{},
666	}, options);
667
668	var el = $(this);
669
670	ignoreResize.push(true);
671	_slice(el);
672	ignoreResize.pop();
673
674	if(options.resize)
675	{
676		BX.addCustomEvent('onWindowResize', function(eventdata) {
677			try{
678				ignoreResize.push(true);
679				_slice(el);
680			}
681			catch(e){}
682			finally{
683				ignoreResize.pop();
684			}
685		});
686	}
687	else
688	{
689		if(!ignoreResize.length)
690		{
691			// ignoreResize.push(true);
692			_slice(el);
693			// ignoreResize.pop();
694		}
695	}
696}
697
698$.fn.sliceHeightNoResize = function( options ){
699	function _slice(el){
700
701		el.each(function() {
702			$(this).css('line-height', '');
703			$(this).css('height', '');
704		});
705		if(typeof(options.autoslicecount) == 'undefined' || options.autoslicecount !== false){
706			var elw = (el.first().hasClass('item') ? el.first().getFloatWidth() : el.first().parents('.item').getFloatWidth());
707			var elsw = el.first().parents('.items').getFloatWidth();
708			if(!elsw){
709				elsw = el.first().parents('.row').getFloatWidth();
710			}
711			if(elsw && elw){
712				options.slice = Math.floor(elsw / elw);
713			}
714		}
715
716		if(options.slice){
717			for(var i = 0; i < el.length; i += options.slice){
718
719				$(el.slice(i, i + options.slice)).equalizeHeights(options.outer, options.classNull, options.minHeight);
720			}
721		}
722		if(options.lineheight){
723			var lineheightAdd = parseInt(options.lineheight);
724			if(isNaN(lineheightAdd)){
725				lineheightAdd = 0;
726			}
727			el.each(function() {
728				$(this).css('line-height', ($(this).actual('height') + lineheightAdd) + 'px');
729			});
730		}
731	}
732
733	var options = $.extend({
734		slice: null,
735		outer: false,
736		lineheight: false,
737		autoslicecount: true,
738		classNull: false,
739		minHeight: false,
740		options: false,
741		resize: true,
742	}, options);
743
744	var el = $(this);
745	_slice(el);
746}
747
748if(!funcDefined('initHoverBlock')){
749	function initHoverBlock(target){
750		/*$(target).find('.catalog_item.item_wrap').on('mouseenter', function(){
751			$(this).addClass('hover');
752		})
753		$(target).find('.catalog_item.item_wrap').on('mouseleave', function(){
754			$(this).removeClass('hover');
755		})*/
756	}
757}
758if(!funcDefined('setStatusButton')){
759	function setStatusButton(){
760		if(!funcDefined('setItemButtonStatus')){
761			setItemButtonStatus = function(data){
762				if(data.BASKET){
763					for( var i in data.BASKET ){
764						var id = data.BASKET[i];
765						if(typeof id === 'number' || typeof id === 'string'){
766							$('.to-cart[data-item='+id+']').hide();
767							$('.counter_block[data-item='+id+']').hide();
768							$('.in-cart[data-item='+id+']').show();
769							$('.in-cart[data-item='+id+']').closest('.button_block').addClass('wide');
770						}
771					}
772				}
773				if(data.DELAY){
774					for( var i in data.DELAY ){
775						var id = data.DELAY[i];
776						if(typeof id === 'number' || typeof id === 'string'){
777							$('.wish_item.to[data-item='+id+']').hide();
778							$('.wish_item.in[data-item='+id+']').show();
779							if ($('.wish_item[data-item='+id+']').find(".value.added").length) {
780								$('.wish_item[data-item='+id+']').addClass("added");
781								$('.wish_item[data-item='+id+']').find(".value").hide();
782								$('.wish_item[data-item='+id+']').find(".value.added").show();
783							}
784						}
785					}
786				}
787				if(data.SUBSCRIBE){
788					for( var i in data.SUBSCRIBE ){
789						var id = data.SUBSCRIBE;
790						if(typeof id === 'number' || typeof id === 'string'){
791							$('.to-subscribe[data-item='+id+']').hide();
792							$('.in-subscribe[data-item='+id+']').show();
793						}
794					}
795				}
796				if(data.COMPARE){
797					for( var i in data.COMPARE ){
798						var id = data.COMPARE;
799						if(typeof id === 'number' || typeof id === 'string'){
800							$('.compare_item.to[data-item='+id+']').hide();
801							$('.compare_item.in[data-item='+id+']').show();
802							if ($('.compare_item[data-item='+id+']').find(".value.added").length){
803								$('.compare_item[data-item='+id+']').find(".value").hide();
804								$('.compare_item[data-item='+id+']').find(".value.added").show();
805							}
806						}
807					}
808				}
809			}
810		}
811		if(!Object.keys(arStatusBasketAspro).length)
812		{
813			if(typeof arNextOptions === 'undefined')
814			{
815				var arNextOptions = ({
816					"SITE_DIR" : '/'
817				});
818			}
819			$.ajax({
820				url: arNextOptions["SITE_DIR"]+'ajax/getAjaxBasket.php',
821				type: 'POST',
822				success: function(data){
823					arStatusBasketAspro = data;
824					setItemButtonStatus(arStatusBasketAspro);
825				}
826			});
827		}
828		else
829			setItemButtonStatus(arStatusBasketAspro);
830	}
831}
832
833
834if(!funcDefined('onLoadjqm')){
835	var onLoadjqm = function(name, hash, requestData, selector, requestTitle, isButton, thButton){
836
837		$.each($(hash.t).get(0).attributes, function(index, attr){
838			if(/^data\-autoload\-(.+)$/.test(attr.nodeName)){
839				var key = attr.nodeName.match(/^data\-autoload\-(.+)$/)[1];
840				var el = $('input[data-sid="'+key.toUpperCase()+'"]');
841				// el.val( $(hash.t).data('autoload-'+key) ).attr('readonly', 'readonly');
842				el.val(BX.util.htmlspecialcharsback($(hash.t).data('autoload-'+key))).attr('readonly', 'readonly');
843				el.closest('.form-group').addClass('input-filed');
844				el.attr('title', el.val());
845			}
846		});
847
848		//show gift block
849		if(hash.w.hasClass('send_gift_frame'))
850		{
851			var imgHtml = priceHtml = propsHtml = '';
852			if($('.offers_img a').length)
853				imgHtml = $('.offers_img a').html();
854			else if($('.item_main_info .item_slider:not(.flex) .slides li').length)
855				imgHtml = $('.item_main_info .item_slider .slides li:first a').html();
856
857			if($('.item_main_info *[itemprop="offers"]').length) //show price
858			{
859				if($('.offers_img.wof').length || $('.prices_tab').length)
860				{
861					if($('.prices_block .price').length)
862						priceHtml = $('.prices_block .cost.prices').html().replace('id', 'data-id');
863				}
864				else
865				{
866					if($('.prices_block .with_matrix').length)
867						priceHtml = '<div class="with_matrix">'+$('.prices_block .with_matrix').html()+'</div>';
868					else if($('.prices_block .price_group.min').length)
869						priceHtml = $('.prices_block .price_group.min').html();
870					else if($('.prices_block .price_matrix_wrapper').length)
871						priceHtml = $('.prices_block .price_matrix_wrapper').html();
872				}
873			}
874
875			if($('.buy_block .sku_props').length)
876			{
877				propsHtml = '<div class="props_item">';
878				$('.buy_block .sku_props .bx_catalog_item_scu > div').each(function(){
879					var title = $(this).find('.bx_item_section_name > span').html();
880					propsHtml += '<div class="prop_item">'+
881									'<span>'+
882										title + (title.indexOf(':') > 0 ? '' : ': ')+
883										(title.indexOf(':') > 0 ? '' : '<span class="val">'+$(this).find('ul li.active > span').text()+'</span>')+
884									'</span>'+
885								'</div>';
886
887				})
888				propsHtml += '</div>';
889			}
890			$('<div class="custom_block">'+
891				'<div class="title">'+BX.message('POPUP_GIFT_TEXT')+'</div>'+
892				'<div class="item_block">'+
893					'<table class="item_list"><tr>'+
894						'<td class="image">'+
895							'<div>'+imgHtml+'</div>'+
896						'</td>'+
897						'<td class="text">'+
898							'<div class="name">'+$('h1').text()+'</div>'+
899							priceHtml+
900							propsHtml+
901						'</td>'+
902					'</tr></table>'+
903				'</div>'+
904				'</div>').prependTo(hash.w.find('.form_body'))
905		}
906
907		if(arNextOptions['THEME']['REGIONALITY_SEARCH_ROW'] == 'Y' && (hash.w.hasClass('city_chooser_frame ') || hash.w.hasClass('city_chooser_small_frame')))
908			hash.w.addClass('small_popup_regions')
909
910		hash.w.addClass('show').css({
911			'margin-left': ($(window).width() > hash.w.outerWidth() ? '-' + hash.w.outerWidth() / 2 + 'px' : '-' + $(window).width() / 2 + 'px'),
912			// 'top': $(document).scrollTop() + (($(window).height() > hash.w.outerHeight() ? ($(window).height() - hash.w.outerHeight()) / 2 : 10))   + 'px',
913			'top': (($(window).height() > hash.w.height()) ? Math.floor(($(window).height() - hash.w.height()) / 2) : 0) + 'px',
914			'opacity': 1
915		});
916
917		var eventdata = {action:'loadForm'};
918		BX.onCustomEvent('onCompleteAction', [eventdata, $(hash.t)[0]]);
919
920
921		if(typeof(requestData) == 'undefined'){
922			requestData = '';
923		}
924		if(typeof(selector) == 'undefined'){
925			selector = false;
926		}
927		var width = $('.'+name+'_frame').width();
928		$('.'+name+'_frame').css('margin-left', '-'+width/2+'px');
929
930		if(name=='order-popup-call') {
931		}
932		else if(name=='order-button') {
933			$(".order-button_frame").find("div[product_name]").find("input").val(hash.t.title).attr("readonly", "readonly").css({"overflow": "hidden", "text-overflow": "ellipsis"});
934		}
935		else if(name=='basket_error')
936		{
937			$(".basket_error_frame .pop-up-title").text(requestTitle);
938			$(".basket_error_frame .ajax_text").html(requestData);
939
940			if(window.matchMedia('(max-width: 991px)').matches)
941			{
942				$("body").addClass("all_viewed");
943			}
944
945			initSelects(document);
946			if(isButton=="Y" && thButton)
947				$("<div class='popup_button_basket_wr'>
947<span class='popup_button_basket big_btn button' data-item="+thButton.data("item")+"><span class='btn btn-default'>"+BX.message("ERROR_BASKET_BUTTON")+"</span></span></div>").insertAfter($(".basket_error_frame .ajax_text"));
948		}
949		else if( name == 'one_click_buy') {
950			$('#one_click_buy_form').submit( function() {
951				if($('#one_click_buy_form').valid())
952				{
953					if($('.'+name+'_frame form input.error').length || $('.'+name+'_frame form textarea.error').length) {
954						return false
955					}
956					else if(!$(this).find('#one_click_buy_form_button').hasClass('clicked')){
957
958						if(!$(this).find('#one_click_buy_form_button').hasClass("clicked"))
959							$(this).find('#one_click_buy_form_button').addClass("clicked");
960						var form_url = $(this).attr('action');
961
962						var bSend = true;
963						if(window.renderRecaptchaById && window.asproRecaptcha && window.asproRecaptcha.key)
964						{
965							if(window.asproRecaptcha.params.recaptchaSize == 'invisible' && typeof grecaptcha != 'undefined')
966							{
967								if($('#one_click_buy_form').find('.g-recaptcha-response').val())
968								{
969									// eventdata.form.submit();
970									bSend = true;
971								}
972								else
973								{
974									grecaptcha.execute($('#one_click_buy_form').find('.g-recaptcha').data('widgetid'));
975									$(this).find('#one_click_buy_form_button').removeClass("clicked");
976									bSend = false;
977								}
978							}
979						}
980						if(bSend)
981						{
982							$.ajax({
983								url: $(this).attr('action'),
984								data: $(this).serialize(),
985								type: 'POST',
986								dataType: 'json',
987								error: function(data) {
988									alert('Error connecting server');
989								},
990								success: function(data) {
991									if(data.result == 'Y'){
992										if(arNextOptions['COUNTERS']['USE_1CLICK_GOALS'] !== 'N'){
993											var eventdata = {goal: 'goal_1click_success'};
994											BX.onCustomEvent('onCounterGoals', [eventdata])
995										}
996
997										if(ocb_files.length)
998										{
999											var obData = new FormData(),
1000												bHasFiles = false;
1001											$.each( ocb_files, function( key, value ){
1002												if(value)
1003												{
1004													bHasFiles = true;
1005													obData.append( key+'_'+value.code , value[0] );
1006												}
1007											});
1008											if(bHasFiles)
1009											{
1010												$.ajax({
1011													url: form_url+'?uploadfiles&orderID='+data.message,
1012													type: 'POST',
1013													data: obData,
1014													cache: false,
1015													dataType: 'json',
1016													processData: false, // Don't process the files
1017													contentType: false, // this is string query
1018													error: function(data, exception) {
1019														if(data)
1020														{
1021															// if('statusText')
1022															console.log(data);
1023															console.log(exception);
1024														}
1025														alert('Error with files');
1026													},
1027													success: function( respond, textStatus, jqXHR ){
1028														$('.one_click_buy_result').show();
1029														$('.one_click_buy_result_success').show();
1030														purchaseCounter(data.message, arNextOptions["COUNTERS"]["TYPE"]["ONE_CLICK"]);
1031													}
1032												})
1033											}
1034											else
1035											{
1036												$('.one_click_buy_result').show();
1037												$('.one_click_buy_result_success').show();
1038												purchaseCounter(data.message, arNextOptions["COUNTERS"]["TYPE"]["ONE_CLICK"]);
1039											}
1040										}
1041										else
1042										{
1043											$('.one_click_buy_result').show();
1044											$('.one_click_buy_result_success').show();
1045											purchaseCounter(data.message, arNextOptions["COUNTERS"]["TYPE"]["ONE_CLICK"]);
1046										}
1047									}
1048									else{
1049										$('.one_click_buy_result').show();
1050										$('.one_click_buy_result_fail').show();
1051										if(('err' in data) && data.err)
1052											data.message=data.message+' \n'+data.err;
1053										$('.one_click_buy_result_text').html(data.message);
1054									}
1055									$('.one_click_buy_modules_button', self).removeClass('disabled');
1056									$('#one_click_buy_form').hide();
1057									$('#one_click_buy_form_result').show();
1058								}
1059							});
1060						}
1061					}
1062				}
1063				return false;
1064			});
1065		}
1066		else if( name == 'one_click_buy_basket') {
1067			$('#one_click_buy_form').on("submit", function(){
1068				if($('#one_click_buy_form').valid())
1069				{
1070					if($('.'+name+'_frame form input.error').length || $('.'+name+'_frame form textarea.error').length) {
1071						return false
1072					}
1073					else if(!$(this).find('#one_click_buy_form_button').hasClass('clicked')){
1074
1075						if(!$(this).find('#one_click_buy_form_button').hasClass("clicked"))
1076							$(this).find('#one_click_buy_form_button').addClass("clicked");
1077						var form_url = $(this).attr('action');
1078
1079						var bSend = true;
1080						if(window.renderRecaptchaById && window.asproRecaptcha && window.asproRecaptcha.key)
1081						{
1082							if(window.asproRecaptcha.params.recaptchaSize == 'invisible' && typeof grecaptcha != 'undefined')
1083							{
1084								if($('#one_click_buy_form').find('.g-recaptcha-response').val())
1085								{
1086									// eventdata.form.submit();
1087									bSend = true;
1088								}
1089								else
1090								{
1091									grecaptcha.execute($('#one_click_buy_form').find('.g-recaptcha').data('widgetid'));
1092									$(this).find('#one_click_buy_form_button').removeClass("clicked");
1093									bSend = false;
1094								}
1095							}
1096						}
1097						if(bSend)
1098						{
1099							$.ajax({
1100								url: $(this).attr('action'),
1101								data: $(this).serialize(),
1102								type: 'POST',
1103								dataType: 'json',
1104								error: function(data) {
1105									window.console&&console.log(data);
1106								},
1107								success: function(data) {
1108									if(data.result == 'Y') {
1109										if(arNextOptions['COUNTERS']['USE_FASTORDER_GOALS'] !== 'N'){
1110											var eventdata = {goal: 'goal_fastorder_success'};
1111											BX.onCustomEvent('onCounterGoals', [eventdata])
1112										}
1113
1114										if(ocb_files.length)
1115										{
1116											var obData = new FormData(),
1117												bHasFiles = false;
1118											$.each( ocb_files, function( key, value ){
1119												if(value)
1120												{
1121													bHasFiles = true;
1122													obData.append( key+'_'+value.code , value[0] );
1123												}
1124											});
1125											if(bHasFiles)
1126											{
1127												$.ajax({
1128													url: form_url+'?uploadfiles&orderID='+data.message,
1129													type: 'POST',
1130													data: obData,
1131													cache: false,
1132													dataType: 'json',
1133													processData: false, // Don't process the files
1134													contentType: false, // this is string query
1135													error: function(data) {
1136														alert('Error with files');
1137													},
1138													success: function( respond, textStatus, jqXHR ){
1139														$('.one_click_buy_result').show();
1140														$('.one_click_buy_result_success').show();
1141														purchaseCounter(data.message, arNextOptions["COUNTERS"]["TYPE"]["ONE_CLICK"]);
1142													}
1143												})
1144											}
1145											else
1146											{
1147												$('.one_click_buy_result').show();
1148												$('.one_click_buy_result_success').show();
1149												purchaseCounter(data.message, arNextOptions["COUNTERS"]["TYPE"]["ONE_CLICK"]);
1150											}
1151										}
1152										else
1153										{
1154											$('.one_click_buy_result').show();
1155											$('.one_click_buy_result_success').show();
1156											purchaseCounter(data.message, arNextOptions["COUNTERS"]["TYPE"]["QUICK_ORDER"]);
1157										}
1158									}
1159									else{
1160										$('.one_click_buy_result').show();
1161										$('.one_click_buy_result_fail').show();
1162										if(('err' in data) && data.err)
1163											data.message=data.message+' \n'+data.err;
1164										$('.one_click_buy_result_text').text(data.message);
1165									}
1166									$('.one_click_buy_modules_button', self).removeClass('disabled');
1167									$('#one_click_buy_form').hide();
1168									$('#one_click_buy_form_result').show();
1169								}
1170							});
1171						}
1172					}
1173				}
1174				return false;
1175			});
1176		}
1177
1178		$('.'+name+'_frame').show();
1179	}
1180}
1181
1182$.fn.jqmEx = function(){
1183	// $(this).each(function(){
1184		var _this = $(this);
1185		var name = _this.data('name');
1186		var sFastViewClass = '';
1187		if(name.length){
1188			if(_this.closest('#fast_view_item').length)
1189				sFastViewClass = 'fast_view_popup';
1190			var script = arNextOptions['SITE_DIR'] + 'ajax/form.php';
1191			var paramsStr = ''; var trigger = ''; var arTriggerAttrs = {};
1192			$.each(_this.get(0).attributes, function(index, attr){
1193				var attrName = attr.nodeName;
1194				var attrValue = _this.attr(attrName);
1195				trigger += '[' + attrName + '=\"' + attrValue + '\"]';
1196				arTriggerAttrs[attrName] = attrValue;
1197				if(/^data\-param\-(.+)$/.test(attrName)){
1198					var key = attrName.match(/^data\-param\-(.+)$/)[1];
1199					paramsStr += key + '=' + attrValue + '&';
1200				}
1201			});
1202			var triggerAttrs = JSON.stringify(arTriggerAttrs);
1203			var encTriggerAttrs = encodeURIComponent(triggerAttrs);
1204			if(name == 'auth')
1205				script += '?' + paramsStr + 'auth=Y';
1206			else
1207				script += '?' + paramsStr + 'data-trigger=' + encTriggerAttrs;
1208			if(!$('.' + name + '_frame[data-trigger="' + encTriggerAttrs + '"]').length){
1209				if(_this.attr('disabled') != 'disabled'){
1210					$('body').find('.' + name + '_frame[data-trigger="' + encTriggerAttrs + '"]').remove();
1211					$('body').append('<div class="' + name + '_frame '+sFastViewClass+' jqmWindow popup" data-trigger="' + encTriggerAttrs + '"></div>');
1212					$('.' + name + '_frame[data-trigger="' + encTriggerAttrs + '"]').jqm({trigger: trigger, onLoad: function(hash){onLoadjqm(name, hash);}, onHide: function(hash){onHidejqm(name, hash);}, ajax:script});
1213				}
1214			}
1215			else {
1216				$('.' + name + '_frame[data-trigger="' + encTriggerAttrs + '"]').jqm({trigger: trigger, onLoad: function(hash){onLoadjqm(name, hash);}, onHide: function(hash){onHidejqm(name, hash);}, ajax:script});
1217			}
1218		}
1219	// });
1220}
1221
1222if(!funcDefined('onHidejqm')){
1223	var onHidejqm = function(name, hash){
1224		if (hash.w.find('.one_click_buy_result_success').is(':visible') && name=="one_click_buy_basket") {
1225			window.location.href = window.location.href;
1226		}
1227
1228		if($('.xzoom-source').length)
1229			$('.xzoom-source').remove();
1230		if($('.xzoom-preview').length)
1231			$('.xzoom-preview').remove();
1232
1233		// hash.w.css('opacity', 0).hide();
1234		hash.w.animate({'opacity': 0}, 0, function(){
1235			hash.w.hide();
1236			hash.w.empty();
1237			hash.o.remove();
1238			hash.w.removeClass('show');
1239
1240			if(window.matchMedia('(max-width: 991px)').matches)
1241			{
1242				$("body").removeClass("all_viewed");
1243			}
1244
1245			if(name == 'fast_view')
1246				$('.fast_view_popup').remove();
1247		});
1248	}
1249}
1250
1251if(!funcDefined("oneClickBuy")) {
1252	var oneClickBuy = function (elementID, iblockID, that) {
1253		var name = 'one_click_buy';
1254		var elementQuantity = 1;
1255		var offerProps = false;
1256		var buy_btn=$(that).closest('.buy_block').find('.to-cart');
1257		var buy_btn2=$(that).closest('tr').find('.to-cart');
1258
1259		if(typeof(that) !== 'undefined'){
1260			elementQuantity = $(that).attr('data-quantity');
1261			offerProps = $(that).attr('data-props');
1262		}
1263
1264		if(elementQuantity < 0){
1265			elementQuantity = 1;
1266		}
1267
1268		var tmp_props=buy_btn.data("props"),
1269			tmp_props2=buy_btn2.data("props"),
1270			props='',
1271			part_props='',
1272			add_props='N',
1273			fill_prop={},
1274			iblockid = buy_btn.data('iblockid'),
1275			item = buy_btn.attr('data-item');
1276
1277		if(tmp_props){
1278			props=tmp_props.split(";");
1279		}else if(tmp_props2){
1280			props=tmp_props2.split(";");
1281		}
1282		if(buy_btn.data("part_props")){
1283			part_props=buy_btn.data("part_props");
1284		}
1285		if(buy_btn.data("add_props")){
1286			add_props=buy_btn.data("add_props");
1287		}
1288
1289		fill_prop=fillBasketPropsExt(buy_btn, 'prop', buy_btn.data('bakset_div'));
1290		fill_prop.iblockID=iblockid;
1291		fill_prop.part_props=part_props;
1292		fill_prop.add_props=add_props;
1293		fill_prop.props=JSON.stringify(props);
1294		fill_prop.item=item;
1295		fill_prop.ocb_item="Y";
1296
1297		if(window.matchMedia('(min-width:992px)').matches)
1298		{
1299			if(!$(that).hasClass('clicked'))
1300			{
1301				$(that).addClass('clicked');
1302				$('body').find('.'+name+'_frame').remove();
1303				$('body').find('.'+name+'_trigger').remove();
1304				$('body').append('<div class="'+name+'_frame popup"></div>');
1305				$('body').append('<div class="'+name+'_trigger"></div>');
1306				$('.'+name+'_frame').jqm({trigger: '.'+name+'_trigger', onHide: function(hash) { onHidejqm(name,hash); }, toTop: false, onLoad: function( hash ){ onLoadjqm(name, hash ); }, ajax: arNextOptions["SITE_DIR"]+'ajax/one_click_buy.php?ELEMENT_ID='+elementID+'&IBLOCK_ID='+iblockID+'&ELEMENT_QUANTITY='+elementQuantity+'&OFFER_PROPS='+fill_prop.props});
1307				$('.'+name+'_trigger').click();
1308			}
1309		}
1310		else
1311		{
1312			var script = arNextOptions['SITE_DIR'] + 'form/';
1313			script += '?name='+name+'&form_id=ocb&path='+window.location.pathname+'&ELEMENT_ID='+elementID+'&IBLOCK_ID='+iblockID+'&ELEMENT_QUANTITY='+elementQuantity+'&OFFER_PROPS='+fill_prop.props
1314			location.href = script;
1315		}
1316	}
1317}
1318
1319if(!funcDefined("oneClickBuyBasket")) {
1320	var oneClickBuyBasket = function () {
1321		name = 'one_click_buy_basket';
1322		if(window.matchMedia('(min-width:992px)').matches)
1323		{
1324			if(!$('.fast_order').hasClass('clicked'))
1325			{
1326				$('.fast_order').addClass('clicked');
1327				$('body').find('.'+name+'_frame').remove();
1328				$('body').find('.'+name+'_trigger').remove();
1329				$('body').append('<div class="'+name+'_frame popup"></div>');
1330				$('body').append('<div class="'+name+'_trigger"></div>');
1331				$('.'+name+'_frame').jqm({trigger: '.'+name+'_trigger', onHide: function(hash) { onHidejqm(name,hash) }, onLoad: function( hash ){ onLoadjqm( name, hash ); }
1331, ajax: arNextOptions["SITE_DIR"]+'ajax/one_click_buy_basket.php'});
1332				$('.'+name+'_trigger').click();
1333			}
1334		}
1335		else
1336		{
1337			var script = arNextOptions['SITE_DIR'] + 'form/';
1338			script += '?name='+name+'&form_id=ocb&path='+window.location.pathname+'&buy_basket=y';
1339			location.href = script;
1340		}
1341	}
1342}
1343
1344if(!funcDefined("scroll_block")) {
1345	function scroll_block(block){
1346		var topPos = block.offset().top,
1347			headerH = $('header').outerHeight(true,true);
1348		if($(".stores_tab").length){
1349			$(".stores_tab").addClass("active").siblings().removeClass("active");
1350		}else{
1351			$(".prices_tab").addClass("active").siblings().removeClass("active");
1352			if($(".prices_tab .opener").length && !$(".prices_tab .opener .opened").length){
1353				var item = $(".prices_tab .opener").first();
1354				item.find(".opener_icon").addClass("opened");
1355				item.parents("tr").addClass("nb")
1356				item.parents("tr").next(".offer_stores").find(".stores_block_wrap").slideDown(200);
1357			}
1358		}
1359		$('html,body').animate({'scrollTop':topPos-80},150);
1360	}
1361}
1362
1363if(!funcDefined("jqmEd")) {
1364	var jqmEd = function (name, form_id, open_trigger, requestData, selector, requestTitle, isButton, thButton){
1365		if(typeof(requestData) == "undefined"){
1366			requestData = '';
1367		}
1368		if(typeof(selector) == "undefined"){
1369			selector = false;
1370		}
1371		$('body').find('.'+name+'_frame').remove();
1372		$('body').append('<div class="'+name+'_frame jqmWindow popup"></div>');
1373		if(typeof open_trigger == "undefined" ){
1374			$('.'+name+'_frame').jqm({trigger: '.'+name+'_frame.popup',onHide: function(hash) { onHidejqm(name,hash); }, onLoad: function( hash ){ onLoadjqm( name , hash , requestData, selector); }, ajax: arNextOptions["SITE_DIR"]+'ajax/form.php?form_id='+form_id+(requestData.length ? '&' + requestData : '')});
1375		}else{
1376			if(name == 'enter'){
1377				$('.'+name+'_frame').jqm({trigger: open_trigger,onHide: function(hash) { onHidejqm(name,hash); },  onLoad: function( hash ){ onLoadjqm( name , hash , requestData, selector); }, ajax: arNextOptions["SITE_DIR"]+'ajax/auth.php'});
1378			}else if(name=='basket_error'){
1379				$('.'+name+'_frame').jqm({trigger: open_trigger, onHide: function(hash) { onHidejqm(name,hash); }, onLoad: function( hash ){ onLoadjqm( name , hash , requestData, selector, requestTitle, isButton, thButton); }, ajax: arNextOptions["SITE_DIR"]+'ajax/basket_error.php'});
1380
1381			}else{
1382				$('.'+name+'_frame').jqm({trigger: open_trigger, onHide: function(hash) { onHidejqm(name,hash); }, onLoad: function( hash ){ onLoadjqm( name , hash , requestData, selector); }, ajax: arNextOptions["SITE_DIR"]+'ajax/form.php?form_id='+form_id+(requestData.length ? '&' + requestData : '')});
1383			}
1384			$(open_trigger).dblclick(function(){return false;})
1385		}
1386		return true;
1387	}
1388}
1389
1390if (!funcDefined("replaceBasketPopup")){
1391	function replaceBasketPopup (hash){
1392		if(typeof hash != "undefined"){
1393			hash.w.hide();
1394			hash.o.hide();
1395		}
1396	}
1397}
1398
1399if(!funcDefined("waitLayer")){
1400	function waitLayer(delay, callback){
1401		if((typeof dataLayer !== 'undefined') && (typeof callback === 'function')){
1402			callback();
1403		}
1404		else{
1405			setTimeout(function() {
1406				waitLayer(delay, callback);
1407			}, delay);
1408		}
1409	}
1410}
1411
1412if(!funcDefined("InitTopestMenuGummi")){
1413	InitTopestMenuGummi = function(){
1414		if(!isOnceInited){
1415			function _init(){
1416				var arItems = $menuTopest.find('>li:not(.more)');
1417				var cntItems = arItems.length;
1418				if(cntItems){
1419					var itemsWidth = 0;
1420					for(var i = 0; i < cntItems; ++i){
1421						var item = arItems.eq(i);
1422						var itemWidth = item.actual('outerWidth',{includeMargin: true});
1423						arItemsHideWidth[i] = (itemsWidth += itemWidth) + (i !== (cntItems - 1) ? moreWidth : 0);
1424					}
1425				}
1426			}
1427
1428			function _gummi(){
1429				var rowWidth = $menuTopest.actual('innerWidth');
1430				var arItems = $menuTopest.find('>li:not(.more),li.more>.dropdown>li');
1431				var cntItems = arItems.length;
1432				if(cntItems){
1433					var bMore = false;
1434					for(var i = cntItems - 1; i >= 0; --i){
1435						var item = arItems.eq(i);
1436						var bInMore = item.parents('.more').length > 0;
1437						if(!bInMore){
1438							if(arItemsHideWidth[i] > rowWidth){
1439								if(!bMore){
1440									bMore = true;
1441									more.removeClass('hidden');
1442								}
1443								var clone = item.clone();
1444								clone.find('>a').addClass('dark_font');
1445								clone.prependTo(moreDropdown);
1446								item.addClass('cloned');
1447							}
1448						}
1449					}
1450					for(var i = 0; i < cntItems; ++i){
1451						var item = arItems.eq(i);
1452						var bInMore = item.parents('.more').length > 0;
1453						if(bInMore){
1454							if(arItemsHideWidth[i] <= rowWidth){
1455								if(i === (cntItems - 1)){
1456									bMore = false;
1457									more.addClass('hidden');
1458								}
1459								var clone = item.clone();
1460								clone.find('>a').removeClass('dark_font');
1461								clone.insertBefore(more);
1462								item.addClass('cloned');
1463							}
1464						}
1465					}
1466					$menuTopest.find('li.cloned').remove();
1467				}
1468			}
1469
1470			var $menuTopest = $('.menu.topest');
1471			if($menuTopest.length)
1472			{
1473				var more = $menuTopest.find('>.more');
1474				var moreDropdown = more.find('>.dropdown');
1475				var moreWidth = more.actual('outerWidth',{includeMargin: true});
1476				var arItemsHideWidth = [];
1477
1478				ignoreResize.push(true);
1479				_init();
1480				_gummi();
1481				ignoreResize.pop();
1482
1483				BX.addCustomEvent('onWindowResize', function(eventdata) {
1484					try{
1485						ignoreResize.push(true);
1486						_gummi();
1487					}
1488					catch(e){}
1489					finally{
1490						ignoreResize.pop();
1491					}
1492				});
1493			}
1494		}
1495	}
1496}
1497
1498if(!funcDefined("InitTopMenuGummi")){
1499	InitTopMenuGummi = function(){
1500		function _init(){
1501			var arItems = $topMenu.closest('.wrap_menu').find('.inc_menu .menu_top_block >li:not(.more)');
1502			var cntItems = arItems.length;
1503			if(cntItems){
1504				var itemsWidth = 0;
1505				for(var i = 0; i < cntItems; ++i){
1506					var item = arItems.eq(i);
1507						var itemWidth = item.actual('outerWidth');
1508						arItemsHideWidth[i] = (itemsWidth += itemWidth) + (i !== (cntItems - 1) ? moreWidth : 0);
1509				}
1510			}
1511
1512		}
1513
1514		function _gummi(){
1515			var rowWidth = $wrapMenu.actual('innerWidth') - $wrapMenuLeft.actual('innerWidth');
1516			var arItems = $topMenu.find('>li:not(.more):not(.catalog),li.more>.dropdown>li');
1517			var cntItems = arItems.length;
1518
1519			if(cntItems){
1520				var bMore = false;
1521				for(var i = cntItems - 1; i >= 0; --i){
1522					var item = arItems.eq(i);
1523					var bInMore = item.parents('.more').length > 0;
1524					if(!bInMore){
1525						if(arItemsHideWidth[i] > rowWidth){
1526							if(!bMore){
1527								bMore = true;
1528								more.removeClass('hidden');
1529							}
1530							var clone = item.clone();
1531							clone.find('>.dropdown').removeAttr('style').removeClass('toleft');
1532							clone.find('>a').addClass('dark_font').removeAttr('style');
1533							clone.prependTo(moreDropdown);
1534							item.addClass('cloned');
1535						}
1536					}
1537				}
1538				for(var i = 0; i < cntItems; ++i){
1539					var item = arItems.eq(i);
1540					var bInMore = item.parents('.more').length > 0;
1541					if(bInMore){
1542						if(arItemsHideWidth[i] <= rowWidth){
1543							if(i === (cntItems - 1)){
1544								bMore = false;
1545								more.addClass('hidden');
1546							}
1547							var clone = item.clone();
1548							clone.find('>a').removeClass('dark_font');
1549							clone.insertBefore(more);
1550							item.addClass('cloned');
1551						}
1552					}
1553				}
1554				$topMenu.find('li.cloned').remove();
1555
1556				var cntItemsVisible = $topMenu.find('>li:not(.more):not(.catalog)').length;
1557				var o = rowWidth - arItemsHideWidth[cntItemsVisible - 1];
1558				var itemsPaddingAdd = Math.floor(o / (cntItemsVisible + (more.hasClass('hidden') ? 0 : 1)));
1559				var itemsPadding_new = itemsPadding_min + itemsPaddingAdd;
1560				var itemsPadding_new_l = Math.floor(itemsPadding_new / 2);
1561				var itemsPadding_new_r = itemsPadding_new - itemsPadding_new_l;
1562
1563				$topMenu.find('>li:not(.catalog):visible>a').each(function(){
1564					$(this).css({'padding-left': itemsPadding_new_l + 'px'});
1565					$(this).css({'padding-right': itemsPadding_new_r + 'px'});
1566				});
1567
1568				var lastItemPadding_new = itemsPadding_new + o - (cntItemsVisible + (more.is(':visible') ? 1 : 0)) * itemsPaddingAdd;
1569				var lastItemPadding_new_l = Math.floor(lastItemPadding_new / 2);
1570				var lastItemPadding_new_r = lastItemPadding_new - lastItemPadding_new_l;
1571				$topMenu.find('>li:visible').last().find('>a').css({'padding-left': lastItemPadding_new_l + 'px'});
1572				$topMenu.find('>li:visible').last().find('>a').css({'padding-right': lastItemPadding_new_r + 'px'});
1573			}
1574			CheckTopMenuFullCatalogSubmenu();
1575		}
1576
1577		var $topMenu = $('.menu_top_block');
1578		if($menuTopest.length)
1579		{
1580			var $wrapMenu = $topMenu.parents('.wrap_menu');
1581			var $wrapMenuLeft = $wrapMenu.find('.catalog_menu_ext');
1582			var more = $topMenu.find('>.more');
1583			var moreWidth = more.actual('outerWidth',{includeMargin: true});
1584			more.addClass('hidden');
1585			var arItemsHideWidth = [];
1586			var moreDropdown = more.find('>.dropdown');
1587			var itemsPadding = parseInt(more.find('>a').css('padding-left')) * 2;
1588			var itemsPadding_min = itemsPadding;
1589
1590			// setTimeout(function(){
1591				ignoreResize.push(true);
1592				_init();
1593				_gummi();
1594				ignoreResize.pop();
1595			// }, 100)
1596
1597			BX.addCustomEvent('onWindowResize', function(eventdata) {
1598				try{
1599					ignoreResize.push(true);
1600					_gummi();
1601				}
1602				catch(e){}
1603				finally{
1604					ignoreResize.pop();
1605				}
1606			});
1607
1608			/*BX.addCustomEvent('onTopPanelFixUnfix', function(eventdata) {
1609				ignoreResize.push(true);
1610				_gummi();
1611				ignoreResize.pop();
1612			});*/
1613		}
1614	}
1615}
1616
1617if(!funcDefined("checkCounters")){
1618	function checkCounters(name){
1619		if(typeof name !== "undefined"){
1620			if(name == "google" && (arNextOptions["COUNTERS"]["GOOGLE_ECOMERCE"] == "Y" && arNextOptions["COUNTERS"]["GOOGLE_COUNTER"] > 0)){
1621				return true;
1622			}
1623			else if(name == "yandex" && (arNextOptions["COUNTERS"]["YANDEX_ECOMERCE"] == "Y" && arNextOptions["COUNTERS"]["YANDEX_COUNTER"] > 0)){
1624				return true;
1625			}
1626			else{
1627				return false;
1628			}
1629		}
1630		else if((arNextOptions["COUNTERS"]["YANDEX_ECOMERCE"] == "Y" && arNextOptions["COUNTERS"]["YANDEX_COUNTER"] > 0) || (arNextOptions["COUNTERS"]["GOOGLE_ECOMERCE"] == "Y" && arNextOptions["COUNTERS"]["GOOGLE_COUNTER"] > 0)) {
1631			return true;
1632		}
1633		else{
1634			return false;
1635		}
1636	}
1637}
1638
1639if(!funcDefined("addBasketCounter")){
1640	function addBasketCounter(id){
1641		if(arNextOptions['COUNTERS']['USE_BASKET_GOALS'] !== 'N'){
1642			var eventdata = {goal: 'goal_basket_add', params: {id: id}};
1643			BX.onCustomEvent('onCounterGoals', [eventdata]);
1644		}
1645		if(checkCounters()){
1646			$.ajax({
1647				url:arNextOptions['SITE_DIR'] + "ajax/goals.php",
1648				dataType: "json",
1649				type: "POST",
1650				data: {"ID": id},
1651				success: function(item){
1652					if(!!item && !!item.ID){
1653						waitLayer(100, function() {
1654							dataLayer.push({
1655								"event": arNextOptions["COUNTERS"]['GOOGLE_EVENTS']['ADD2BASKET'],
1656							    "ecommerce": {
1657							    	"currencyCode": item.CURRENCY,
1658							        "add": {
1659							            "products": [{
1660						                    "id": item.ID,
1661						                    "name": item.NAME,
1662						                    "price": item.PRICE,
1663						                    "brand": item.BRAND,
1664						                    "category": item.CATEGORY,
1665						                    "quantity": item.QUANTITY
1666						                }]
1667							        }
1668							    }
1669							});
1670						});
1671					}
1672				}
1673			});
1674		}
1675	}
1676}
1677
1678if(!funcDefined("purchaseCounter")){
1679	function purchaseCounter(order_id, type, callback){
1680		if(checkCounters()){
1681			$.ajax({
1682				url:arNextOptions['SITE_DIR'] + "ajax/goals.php",
1683				dataType: "json",
1684				type: "POST",
1685				data: {"ORDER_ID": order_id, "TYPE": type},
1686				success: function(order){
1687					var products = [];
1688					if(order.ITEMS){
1689						for(var i in order.ITEMS){
1690							products.push({
1691								"id": order.ITEMS[i].ID,
1692								"sku": order.ITEMS[i].ID,
1693			                    "name": order.ITEMS[i].NAME,
1694			                    "price": order.ITEMS[i].PRICE,
1695			                    "brand": order.ITEMS[i].BRAND,
1696			                    "category": order.ITEMS[i].CATEGORY,
1697			                    "quantity": order.ITEMS[i].QUANTITY
1698							});
1699						}
1700					}
1701					if(order.ID){
1702						waitLayer(100, function() {
1703							dataLayer.push({
1704								"event": arNextOptions["COUNTERS"]['GOOGLE_EVENTS']['PURCHASE'],
1705							    "ecommerce": d = {
1706							    	"purchase": {
1707								    	"actionField":{
1708								    		"id": order.ACCOUNT_NUMBER,
1709								    		"shipping": order.PRICE_DELIVERY,
1710								    		"tax": order.TAX_VALUE,
1711								    		"list": type,
1712								    		"revenue": order.PRICE
1713								    	},
1714							            "products": products
1715							        }
1716							    }
1717							});
1718
1719							(window.b24order = window.b24order || []).push({ id: order.ACCOUNT_NUMBER, sum: order.PRICE });
1720
1721							if(typeof callback !== 'undefined'){
1722								callback(d);
1723							}
1724						});
1725					}
1726				}
1727			});
1728		}
1729	}
1730}
1731
1732if(!funcDefined("viewItemCounter")){
1733	function viewItemCounter(id, price_id){
1734		if(checkCounters()){
1735			$.ajax({
1736				url:arNextOptions['SITE_DIR'] + "ajax/goals.php",
1737				dataType: "json",
1738				type: "POST",
1739				data: {"PRODUCT_ID": id, "PRICE_ID": price_id},
1740				success: function(item){
1741					if(item.ID){
1742						waitLayer(100, function() {
1743							dataLayer.push({
1744								//"event": "",
1745								"ecommerce": {
1746									"detail": {
1747										"products": [{
1748											"id": item.ID,
1749											"name": item.NAME,
1750											"price": item.PRICE,
1751											"brand": item.BRAND,
1752											"category": item.CATEGORY
1753										}]
1754									}
1755								}
1756							});
1757						});
1758					}
1759				}
1760			});
1761		}
1762	}
1763}
1764
1765if(!funcDefined("checkoutCounter")){
1766	function checkoutCounter(step, option, callback){
1767		if(checkCounters('google')){
1768			$.ajax({
1769				url:arNextOptions['SITE_DIR'] + "ajax/goals.php",
1770				dataType: "json",
1771				type: "POST",
1772				data: {"BASKET": "Y"},
1773				success: function(basket){
1774					var products = [];
1775					if(basket.ITEMS){
1776						for(var i in basket.ITEMS){
1777							products.push({
1778								"id": basket.ITEMS[i].ID,
1779			                    "name": basket.ITEMS[i].NAME,
1780			                    "price": basket.ITEMS[i].PRICE,
1781			                    "brand": basket.ITEMS[i].BRAND,
1782			                    "category": basket.ITEMS[i].CATEGORY,
1783			                    "quantity": basket.ITEMS[i].QUANTITY
1784							});
1785						}
1786					}
1787					if(products){
1788						waitLayer(100, function() {
1789							dataLayer.push({
1790								"event": arNextOptions["COUNTERS"]['GOOGLE_EVENTS']['CHECKOUT_ORDER'],
1791							    "ecommerce": {
1792							    	'checkout': {
1793								    	"actionField":{
1794								    		"step": step,
1795								    		"option": option
1796								    	},
1797								        "products": products
1798								    }
1799							    },
1800							    /*"eventCallback": function() {
1801							    	if((typeof callback !== 'undefined') && (typeof callback === 'function')){
1802							    		callback();
1803							    	}
1804							   }*/
1805							});
1806						});
1807					}
1808				}
1809			});
1810		}
1811	}
1812}
1813
1814if(!funcDefined("delFromBasketCounter")){
1815	function delFromBasketCounter(id, callback){
1816		if(checkCounters()){
1817			$.ajax({
1818				url:arNextOptions['SITE_DIR'] + "ajax/goals.php",
1819				dataType: "json",
1820				type: "POST",
1821				data: {"ID": id},
1822				success: function(item){
1823					if(item.ID){
1824						waitLayer(100, function() {
1825							dataLayer.push({
1826								"event": arNextOptions["COUNTERS"]['GOOGLE_EVENTS']['REMOVE_BASKET'],
1827							    "ecommerce": {
1828							        "remove": {
1829							            "products": [{
1830						                    "id": item.ID,
1831						                    "name": item.NAME,
1832						                    "category": item.CATEGORY
1833						                }]
1834							        }
1835							    }
1836							});
1837							if(typeof callback == 'function'){
1838								callback();
1839							}
1840						});
1841					}
1842				}
1843			});
1844		}
1845	}
1846}
1847
1848if(!funcDefined("setHeightCompany")){
1849	function setHeightCompany(){
1850		$('.md-50.img').height($('.md-50.big').outerHeight()-35);
1851	}
1852}
1853
1854if(!funcDefined("initSly")){
1855	function initSly(){
1856		var $frame  = $(document).find('.frame');
1857		var $slidee = $frame.children('ul').eq(0);
1858		var $wrap   = $frame.parent();
1859
1860		if(arNextOptions["PAGES"]["CATALOG_PAGE"] && $frame.length){
1861			$frame.sly({
1862				horizontal: 1,
1863				itemNav: 'basic',
1864				smart: 1,
1865				mouseDragging: 0,
1866				touchDragging: 0,
1867				releaseSwing: 0,
1868				startAt: 0,
1869				scrollBar: $wrap.find('.scrollbar'),
1870				scrollBy: 1,
1871				speed: 300,
1872				elasticBounds: 0,
1873				easing: 'swing',
1874				dragHandle: 1,
1875				dynamicHandle: 1,
1876				clickBar: 1,
1877
1878				// Buttons
1879				forward: $wrap.find('.forward'),
1880				backward: $wrap.find('.backward'),
1881			});
1882			$frame.sly('reload');
1883		}
1884	}
1885}
1886
1887if(!funcDefined("createTableCompare")){
1888	function createTableCompare(originalTable, appendDiv, cloneTable){
1889
1890		try{
1891			var clone = originalTable.clone().removeAttr('id').addClass('clone');
1892			if(cloneTable.length){
1893				cloneTable.remove();
1894				appendDiv.html('');
1895				appendDiv.html(clone);
1896			}else{
1897				appendDiv.append(clone);
1898			}
1899		}
1900		catch(e){}
1901		finally{
1902
1903		}
1904	}
1905}
1906
1907if(!funcDefined('fillBasketPropsExt')){
1908	fillBasketPropsExt = function(that, prop_code, basket_prop_div){
1909		var
1910			i = 0,
1911			propCollection = null,
1912			foundValues = false,
1913			basketParams = {},
1914			obBasketProps = null;
1915
1916		// obBasketProps = that.closest('.catalog_detail').find('.basket_props_block');
1917		obBasketProps = BX(basket_prop_div);
1918
1919		if (!!obBasketProps)
1920		{
1921			propCollection = obBasketProps.getElementsByTagName('select');
1922			if (!!propCollection && !!propCollection.length)
1923			{
1924				for (i = 0; i < propCollection.length; i++)
1925				{
1926					if (!propCollection[i].disabled)
1927					{
1928						switch(propCollection[i].type.toLowerCase())
1929						{
1930							case 'select-one':
1931								basketParams[propCollection[i].name] = propCollection[i].value;
1932								foundValues = true;
1933								break;
1934							default:
1935								break;
1936						}
1937					}
1938				}
1939			}
1940			propCollection = obBasketProps.getElementsByTagName('input');
1941			if (!!propCollection && !!propCollection.length)
1942			{
1943				for (i = 0; i < propCollection.length; i++)
1944				{
1945					if (!propCollection[i].disabled)
1946					{
1947						switch(propCollection[i].type.toLowerCase())
1948						{
1949							case 'hidden':
1950								basketParams[propCollection[i].name] = propCollection[i].value;
1951								foundValues = true;
1952								break;
1953							case 'radio':
1954								if (propCollection[i].checked)
1955								{
1956									basketParams[propCollection[i].name] = propCollection[i].value;
1957									foundValues = true;
1958								}
1959								break;
1960							default:
1961								break;
1962						}
1963					}
1964				}
1965			}
1966		}
1967		if (!foundValues)
1968		{
1969			basketParams[prop_code] = [];
1970			basketParams[prop_code][0] = 0;
1971		}
1972		return basketParams;
1973	}
1974}
1975if(!funcDefined('showBasketError')){
1976	showBasketError = function(mess, title, addButton, th){
1977		var title_set=(title ? title : BX.message("ERROR_BASKET_TITLE")),
1978			isButton="N",
1979			thButton="";
1980		if(typeof addButton!==undefined){
1981			isButton="Y";
1982		}
1983		if(typeof th!==undefined){
1984			thButton=th;
1985		}
1986		$("body").append("<span class='add-error-bakset' style='display:none;'></span>");
1987		jqmEd('basket_error', 'error-bakset', '.add-error-bakset', mess, this, title_set, isButton, thButton);
1988		$("body .add-error-bakset").click();
1989		$("body .add-error-bakset").remove();
1990	}
1991}
1992
1993CheckTopMenuDotted = function(){
1994	var menu = $('nav.mega-menu.sliced');
1995
1996	/*if(isMobile)
1997		return;*/
1998	if(window.matchMedia('(max-width:991px)').matches)
1999		return;
2000
2001	if(menu.length)
2002	{
2003		menu.each(function(){
2004			if($(this).hasClass('initied'))
2005				return false;
2006
2007			var menuMoreItem = $(this).find('td.js-dropdown');
2008			if($(this).parents('.collapse').css('display') == 'none'){
2009				return false;
2010			}
2011
2012			var block_w = $(this).closest('div').actual('width');
2013			var	menu_w = $(this).find('table').actual('outerWidth');
2014			var afterHide = false;
2015
2016			while(menu_w > block_w) {
2017				menuItemOldSave = $(this).find('td').not('.nosave').last();
2018				if(menuItemOldSave.length){
2019					menuMoreItem.show();
2020					var oldClass = menuItemOldSave.attr('class');
2021					menuItemNewSave = '<li class="menu-item ' + (menuItemOldSave.hasClass('dropdown') ? 'dropdown-submenu ' : '') + (menuItemOldSave.hasClass('active') ? 'active ' : '') + '" data-hidewidth="' + menu_w + '" ' + (oldClass ? 'data-class="' + oldClass + '"' : '') + '>' + menuItemOldSave.find('.wrap').html() + '</li>';
2022					menuItemOldSave.remove();
2023					menuMoreItem.find('> .wrap > .dropdown-menu').prepend(menuItemNewSave);
2024					menu_w = $(this).find('table').actual('outerWidth');
2025					afterHide = true;
2026				}
2027				//menu.find('.nosave').css('display', 'table-cell');
2028				else{
2029					break;
2030				}
2031			}
2032
2033			if(!afterHide) {
2034				do {
2035					var menuItemOldSaveCnt = menuMoreItem.find('.dropdown-menu').find('li').length;
2036					menuItemOldSave = menuMoreItem.find('.dropdown-menu').find('li').first();
2037					if(!menuItemOldSave.length) {
2038						menuMoreItem.hide();
2039						break;
2040					}
2041					else {
2042						var hideWidth = menuItemOldSave.attr('data-hidewidth');
2043						if(hideWidth > block_w) {
2044							break
2045						}
2046						else {
2047							var oldClass = menuItemOldSave.attr('data-class');
2048							menuItemNewSave = '<td class="' + (oldClass ? oldClass + ' ' : '') + '" data-hidewidth="' + block_w + '"><div class="wrap">' + menuItemOldSave.html() + '</div></td>';
2049							menuItemOldSave.remove();
2050							$(menuItemNewSave).insertBefore($(this).find('td.js-dropdown'));
2051							if(!menuItemOldSaveCnt) {
2052								menuMoreItem.hide();
2053								break;
2054							}
2055						}
2056					}
2057					menu_w = $(this).find('table').actual('outerWidth');
2058				}
2059				while(menu_w <= block_w);
2060			}
2061			$(this).find('td').css('visibility', 'visible');
2062			$(this).find('td').removeClass('unvisible');
2063			$(this).addClass('ovisible');
2064			$(this).addClass('initied');
2065		})
2066	}
2067	return false;
2068}
2069
2070CheckTopVisibleMenu = function(that) {
2071	var dropdownMenu = $('.dropdown-menu:visible').last();
2072
2073	if(dropdownMenu.length){
2074		dropdownMenu.find('a').css('white-space', '');
2075		dropdownMenu.css('left', '');
2076		dropdownMenu.css('right', '');
2077		dropdownMenu.removeClass('toright');
2078
2079		var dropdownMenu_left = dropdownMenu.offset().left;
2080		if(typeof(dropdownMenu_left) != 'undefined'){
2081			var menu = dropdownMenu.parents('.mega-menu');
2082			if(!menu.length)
2083				menu = dropdownMenu.closest('.logo-row');
2084			var menu_width = menu.outerWidth();
2085			var menu_left = menu.offset().left;
2086			var menu_right = menu_left + menu_width;
2087			var isToRight = dropdownMenu.parents('.toright').length > 0;
2088			var parentsDropdownMenus = dropdownMenu.parents('.dropdown-menu');
2089			var isHasParentDropdownMenu = parentsDropdownMenus.length > 0;
2090			if(isHasParentDropdownMenu){
2091				var parentDropdownMenu_width = parentsDropdownMenus.first().outerWidth();
2092				var parentDropdownMenu_left = parentsDropdownMenus.first().offset().left;
2093				var parentDropdownMenu_right = parentDropdownMenu_width + parentDropdownMenu_left;
2094			}
2095
2096			if(parentDropdownMenu_right + dropdownMenu.outerWidth() > menu_right){
2097				dropdownMenu.find('a').css('white-space', 'normal');
2098			}
2099
2100			var dropdownMenu_width = dropdownMenu.outerWidth();
2101			var dropdownMenu_right = dropdownMenu_left + dropdownMenu_width;
2102
2103			if(dropdownMenu_right > menu_right || isToRight){
2104				var addleft = 0;
2105				addleft = menu_right - dropdownMenu_right;
2106				if(isHasParentDropdownMenu || isToRight){
2107					dropdownMenu.css('left', 'auto');
2108					dropdownMenu.css('right', '100%');
2109					dropdownMenu.addClass('toright');
2110				}
2111				else{
2112					var dropdownMenu_curLeft = parseInt(dropdownMenu.css('left'));
2113					dropdownMenu.css('left', (dropdownMenu_curLeft + addleft) + 'px');
2114				}
2115			}
2116		}
2117	}
2118}
2119
2120if(!funcDefined("isRealValue")){
2121	function isRealValue(obj){
2122		return obj && obj !== "null" && obj!== "undefined";
2123	}
2124}
2125
2126if(!funcDefined("rightScroll")){
2127	function rightScroll(prop, id){
2128		var el = BX('prop_' + prop + '_' + id);
2129		if (el) {
2130			var curVal = parseInt(el.style.marginLeft);
2131			if (curVal >= 0) el.style.marginLeft = curVal - 20 + '%';
2132		}
2133	}
2134}
2135
2136if(!funcDefined("leftScroll")){
2137	function leftScroll(prop, id){
2138		var el = BX('prop_' + prop + '_' + id);
2139		if (el) {
2140			var curVal = parseInt(el.style.marginLeft);
2141			if (curVal < 0) el.style.marginLeft = curVal + 20 + '%';
2142		}
2143	}
2144}
2145
2146if(!funcDefined("InitOrderCustom")){
2147	InitOrderCustom = function () {
2148		$('.ps_logo img').wrap('<div class="image"></div>');
2149
2150		$('#bx-soa-order .radio-inline').each(function() {
2151			if ($(this).find('input').attr('checked') == 'checked') {
2152				$(this).addClass('checked');
2153			}
2154		});
2155
2156		$('#bx-soa-order .checkbox input[type=checkbox]').each(function() {
2157			if ($(this).attr('checked') == 'checked')
2158				$(this).parent().addClass('checked');
2159		});
2160
2161		$('#bx-soa-order .bx-authform-starrequired').each(function() {
2162			var html = $(this).html();
2163			$(this).closest('label').append('<span class="bx-authform-starrequired"> '+ html + '</span>');
2164			$(this).detach();
2165		});
2166		$('.bx_ordercart_coupon').each(function() {
2167			if ($(this).find('.bad').length)
2168				$(this).addClass('bad');
2169			else if ($(this).find('.good').length)
2170				$(this).addClass('good');
2171		});
2172		/*if (typeof(propsMap) !== 'undefined') {
2173			$(propsMap).on('click', function () {
2174				var value = $('#orderDescription').val();
2175				if ($('#orderDescription')) {
2176					if (value != '') {
2177						$('#orderDescription').closest('.form-group').addClass('value_y');
2178					}
2179				}
2180			});
2181		}*/
2182	}
2183}
2184
2185if(!funcDefined("InitLabelAnimation")){
2186	InitLabelAnimation = function(className) {
2187		// Fix order labels
2188		if (!$(className).length) {
2189			return;
2190		}
2191		$(className).find('.form-group').each(function() {
2192			if ($(this).find('input[type=text], textarea').length && !$(this).find('.dropdown-block').length && $(this).find('input[type=text], textarea').val() != '') {
2193				$(this).addClass('value_y');
2194			}
2195		});
2196
2197		$(document).on('click', className+' .form-group:not(.bx-soa-pp-field) label', function() {
2198			$(this).parent().find('input, textarea').focus();
2199		});
2200
2201		$(document).on('focusout', className+' .form-group:not(.bx-soa-pp-field) input, '+className+' .form-group:not(.bx-soa-pp-field) textarea', function() {
2202			var value = $(this).val();
2203			if (value != '' && !$(this).closest('.form-group').find('.dropdown-block').length && !$(this).closest('.form-group').find('#profile_change').length) {
2204				$(this).closest('.form-group').addClass('value_y');
2205			}else{
2206				$(this).closest('.form-group').removeClass('value_y');
2207			}
2208		});
2209
2210		$(document).on('focus', className+' .form-group:not(.bx-soa-pp-field) input, '+className+' .form-group:not(.bx-soa-pp-field) textarea', function() {
2211			if (!$(this).closest('.form-group').find('.dropdown-block').length && !$(this).closest('.form-group').find('#profile_change').length && !$(this).closest('.form-group').find('[name=PERSON_TYPE_OLD]').length ) {
2212				$(this).closest('.form-group').addClass('value_y');
2213			}
2214		});
2215	};
2216}
2217
2218checkPopupWidth = function(){
2219	$('.popup.show').each(function() {
2220		var width_form = $(this).actual('width');
2221		$(this).css({
2222			'margin-left': ($(window).width() > width_form ? '-' + width_form / 2 + 'px' : '-' + $(window).width() / 2 + 'px'),
2223		});
2224	});
2225}
2226
2227checkCaptchaWidth = function(){
2228	$('.captcha-row').each(function() {
2229		var width = $(this).actual('width');
2230		if($(this).hasClass('b')){
2231			if(width > 320){
2232				$(this).removeClass('b');
2233			}
2234		}
2235		else{
2236			if(width <= 320){
2237				$(this).addClass('b');
2238			}
2239		}
2240	});
2241}
2242
2243checkFormWidth = function(){
2244	$('.form .form_left').each(function() {
2245		var form = $(this).parents('.form');
2246		var width = form.actual('width');
2247		if(form.hasClass('b')){
2248			if(width > 417){
2249				form.removeClass('b');
2250			}
2251		}
2252		else{
2253			if(width <= 417){
2254				form.addClass('b');
2255			}
2256		}
2257	});
2258}
2259
2260checkFormControlWidth = function(){
2261	$('.form-control').each(function() {
2262		var width = $(this).actual('width');
2263		var labelWidth = $(this).find('label:not(.error) > span').actual('width');
2264		var errorWidth = $(this).find('label.error').actual('width');
2265		if(errorWidth > 0){
2266			if($(this).hasClass('h')){
2267				if(width > (labelWidth + errorWidth + 5)){
2268					$(this).removeClass('h');
2269				}
2270			}
2271			else{
2272				if(width <= (labelWidth + errorWidth + 5)){
2273					$(this).addClass('h');
2274				}
2275			}
2276		}
2277		else{
2278			$(this).removeClass('h');
2279		}
2280	});
2281}
2282
2283scrollToTop = function(){
2284	if(arNextOptions['THEME']['SCROLLTOTOP_TYPE'] !== 'NONE'){
2285		var _isScrolling = false;
2286		// Append Button
2287		$('body').append($('<a />').addClass('scroll-to-top ' + arNextOptions['THEME']['SCROLLTOTOP_TYPE'] + ' ' + arNextOptions['THEME']['SCROLLTOTOP_POSITION']).attr({'href': '#', 'id': 'scrollToTop'}));
2288		$('#scrollToTop').click(function(e){
2289			e.preventDefault();
2290			$('body, html').animate({scrollTop : 0}, 500);
2291			return false;
2292		});
2293		// Show/Hide Button on Window Scroll event.
2294		$(window).scroll(function(){
2295			if(!_isScrolling) {
2296				_isScrolling = true;
2297				if($(window).scrollTop() > 150){
2298					$('#scrollToTop').stop(true, true).addClass('visible');
2299					_isScrolling = false;
2300				}
2301				else{
2302					$('#scrollToTop').stop(true, true).removeClass('visible');
2303					_isScrolling = false;
2304				}
2305				checkScrollToTop();
2306			}
2307		});
2308	}
2309}
2310
2311checkScrollToTop = function(){
2312	var bottom = 55,
2313		scrollVal = $(window).scrollTop(),
2314		windowHeight = $(window).height(),
2315		footerOffset = 0;
2316	if($('footer').length)
2317		footerOffset = $('footer').offset().top +70;
2318
2319	if(arNextOptions['THEME']['SCROLLTOTOP_POSITION'] == 'CONTENT'){
2320		warpperWidth = $('body > .wrapper > .wrapper_inner').width();
2321		$('#scrollToTop').css('margin-left', Math.ceil(warpperWidth / 2) + 23);
2322	}
2323
2324	if(scrollVal + windowHeight > footerOffset){
2325		$('#scrollToTop').css('bottom', bottom  + scrollVal + windowHeight - footerOffset - 24);
2326	}
2327	else if(parseInt($('#scrollToTop').css('bottom')) > bottom){
2328		$('#scrollToTop').css('bottom', 3);
2329	}
2330}
2331
2332CheckObjectsSizes = function() {
2333	$('.container iframe,.container object,.container video').each(function() {
2334		var height_attr = $(this).attr('height');
2335		var width_attr = $(this).attr('width');
2336		if (height_attr && width_attr) {
2337			$(this).css('height', $(this).outerWidth() * height_attr / width_attr);
2338		}
2339	});
2340}
2341
2342if(!funcDefined('reloadTopBasket')){
2343	var reloadTopBasket = function reloadTopBasket(action, basketWindow, speed, delay, slideDown, item){
2344		var obj={
2345				"PARAMS": $('#top_basket_params').val(),
2346				"ACTION": action
2347			};
2348		if(typeof item !== "undefined" ){
2349			obj.delete_top_item='Y';
2350			obj.delete_top_item_id=item.data('id');
2351		}
2352		// $.post( arNextOptions['SITE_DIR']+"ajax/show_basket_popup.php", obj, $.proxy(function( data ){
2353		$.post( arNextOptions['SITE_DIR']+"ajax/show_basket_actual.php", obj, $.proxy(function( data ){
2354			$(basketWindow).html(data);
2355
2356			getActualBasket();
2357
2358			var eventdata = {action:'loadBasket'};
2359			BX.onCustomEvent('onCompleteAction', [eventdata]);
2360
2361			/*if(arNextOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N'){
2362				if($(window).outerWidth() > 520){
2363					if(slideDown=="Y")
2364						$(basketWindow).find('.basket_popup_wrapp').stop(true,true).slideDown(speed);
2365					clearTimeout(basketTimeoutSlide);
2366					basketTimeoutSlide = setTimeout(function() {
2367						var _this = $('#basket_line').find('.basket_popup_wrapp');
2368						if (_this.is(':hover')) {
2369							_this.show();
2370						}else{
2371							$('#basket_line').find('.basket_popup_wrapp').slideUp(speed);
2372						}
2373					},delay);
2374				}
2375			}*/
2376		}))
2377	}
2378}
2379
2380CheckTabActive = function(){
2381	if(typeof(clicked_tab) && clicked_tab)
2382	{
2383		if(window.matchMedia('(min-width: 768px)').matches)
2384		{
2385			clicked_tab--;
2386			$('.nav.nav-tabs li').each(function(){
2387				if($(this).index() == clicked_tab)
2388					$(this).addClass('active');
2389			})
2390			// $('.nav.nav-tabs li:eq('+clicked_tab+')').addClass('active');
2391			$('.catalog_detail .tab-content .tab-pane:eq('+clicked_tab+')').addClass('active');
2392			$('.catalog_detail .tab-content .tab-pane .title-tab-heading').next().removeAttr('style');
2393			clicked_tab = 0;
2394		}
2395	}
2396}
2397
2398/*countdown start*/
2399if(!funcDefined('initCountdown')){
2400	var initCountdown = function initCountdown(){
2401		if( $('.view_sale_block').size() ){
2402			$('.view_sale_block').each(function(){
2403				var activeTo=$(this).find('.active_to').text(),
2404					dateTo= new Date(activeTo.replace(/(\d+)\.(\d+)\.(\d+)/, '$3/$2/$1'));
2405				$(this).find('.countdown').countdown({until: dateTo, format: 'dHMS', padZeroes: true, layout: '{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>'}, $.countdown.regionalOptions['ru']);
2406			})
2407		}
2408	}
2409}
2410
2411if(!funcDefined('initCountdownTime')){
2412	var initCountdownTime = function initCountdownTime(block, time){
2413		if(time)
2414		{
2415			var dateTo= new Date(time.replace(/(\d+)\.(\d+)\.(\d+)/, '$3/$2/$1'));
2416			block.find('.countdown').countdown('destroy');
2417			block.find('.countdown').countdown({until: dateTo, format: 'dHMS', padZeroes: true, layout: '{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>'}, $.countdown.regionalOptions['ru']);
2418			block.find('.view_sale_block').show();
2419		}
2420		else
2421		{
2422			block.find('.view_sale_block').hide();
2423		}
2424	}
2425}
2426/*countdown end*/
2427
2428waitCounter = function(idCounter, delay, callback){
2429	var obCounter = window['yaCounter' + idCounter];
2430	if(typeof obCounter == 'object')
2431	{
2432		if(typeof callback == 'function')
2433			callback();
2434
2435	}
2436	else
2437	{
2438		setTimeout(function(){
2439			waitCounter(idCounter, delay, callback);
2440		}, delay);
2441	}
2442}
2443
2444var isOnceInited = insertFilter = false;
2445var animationTime = 200;
2446var delayTime = 200;
2447var topMenuEnterTimer = false;
2448var isMobile = jQuery.browser.mobile;
2449
2450if(isMobile)
2451	document.documentElement.className += ' mobile';
2452
2453if(navigator.userAgent.indexOf("Edge") != -1)
2454	document.documentElement.className += ' bx-ie-edge';
2455
2456/*filter start*/
2457if(!funcDefined('checkVerticalMobileFilter')){
2458	var checkVerticalMobileFilter = function checkVerticalMobileFilter(){
2459		if($('.right_block1.catalog.vertical').length && !$('.left_block.filter_ajax').length)
2460		{
2461			if(typeof window['trackBarOptions'] !== 'undefined')
2462			{
2463				window['trackBarValues'] = {}
2464				for(key in window['trackBarOptions'])
2465				{
2466					window['trackBarValues'][key] = {
2467						'leftPercent': window['trackBar' + key].leftPercent,
2468						'leftValue': window['trackBar' + key].minInput.value,
2469						'rightPercent': window['trackBar' + key].rightPercent,
2470						'rightValue': window['trackBar' + key].maxInput.value,
2471					}
2472				}
2473			}
2474
2475			if(window.matchMedia('(max-width: 991px)').matches)
2476			{
2477				if(!insertFilter)
2478				{
2479					$('.js_filter .bx_filter.bx_filter_vertical').html($('.left_block .bx_filter.bx_filter_vertical').html());
2480					$('.left_block .bx_filter.bx_filter_vertical .bx_filter_section').remove();
2481					insertFilter=true;
2482				}
2483			}
2484			else
2485			{
2486				if(insertFilter)
2487				{
2488					$('.left_block .bx_filter.bx_filter_vertical').html($('.js_filter .bx_filter.bx_filter_vertical').html());
2489					$('.js_filter .bx_filter.bx_filter_vertical .bx_filter_section').remove();
2490					insertFilter=false;
2491				}
2492			}
2493
2494			if(typeof window['trackBarOptions'] !== 'undefined')
2495			{
2496				for(key in window['trackBarOptions'])
2497				{
2498					window['trackBarOptions'][key].leftPercent = window['trackBarValues'][key].leftPercent;
2499					window['trackBarOptions'][key].rightPercent = window['trackBarValues'][key].rightPercent;
2500					window['trackBarOptions'][key].curMinPrice = window['trackBarValues'][key].leftValue;
2501					window['trackBarOptions'][key].curMaxPrice = window['trackBarValues'][key].rightValue;
2502					window['trackBar' + key] = new BX.Iblock.SmartFilter(window['trackBarOptions'][key]);
2503					window['trackBar' + key].minInput.value = window['trackBarValues'][key].leftValue;
2504					window['trackBar' + key].maxInput.value = window['trackBarValues'][key].rightValue;
2505				}
2506			}
2507		}
2508		else if($('.visible_mobile_filter').length)
2509		{
2510			var posTopBlock = BX.pos($('.detail.partners')[0]),
2511				posBlock = $('.ajax_load').position();
2512			// $('.visible_mobile_filter').css('top', posBottomBlock.top-posTopBlock.top);
2513			$('.visible_mobile_filter').css('top', posBlock.top);
2514
2515		}
2516	}
2517}
2518/*filter end*/
2519
2520// TOP MENU ANIMATION
2521$(document).on('click', '.menu_top_block>li .more a', function(){
2522	$this = $(this);
2523	$this.parents('.dropdown').first().find('>.hidden').removeClass('hidden');
2524	$this.parent().addClass('hidden');
2525	setTimeout(function(){
2526		$this.parent().remove();
2527	}, 500);
2528});
2529
2530$(document).on('mouseenter', '.menu_top_block.catalogfirst>li>.dropdown>li.full', function(){
2531	var $submenu = $(this).find('>.dropdown');
2532
2533	if($submenu.length){
2534		if(topMenuEnterTimer){
2535			clearTimeout(topMenuEnterTimer);
2536			topMenuEnterTimer = false;
2537		}
2538	}
2539});
2540
2541$(document).on('mouseenter', '.menu_top_block>li:not(.full)', function(){
2542	var $submenu = $(this).find('>.dropdown');
2543
2544	if($submenu.length && !$submenu.hasClass('visible')){
2545		var $menu = $(this).parents('.menu');
2546		var $wrapmenu = $menu.parents('.wrap_menu');
2547		var wrapMenuWidth = $wrapmenu.actual('outerWidth');
2548		var wrapMenuLeft = $wrapmenu.offset().left;
2549		var wrapMenuRight = wrapMenuLeft + wrapMenuWidth;
2550		var left = wrapMenuRight - ($(this).offset().left + $submenu.actual('outerWidth'));
2551		if(window.matchMedia('(min-width: 951px)').matches && $(this).hasClass('catalog') && ( $('.banner_auto').hasClass('catalog_page') || $('.banner_auto').hasClass('front_page'))){
2552			return;
2553		}
2554		if(left < 0){
2555			$submenu.css({left: left + 'px'});
2556		}
2557		$submenu.stop().slideDown(animationTime, function(){
2558			$submenu.css({height: '', 'overflow':'visible'});
2559		});
2560
2561
2562		$(this).on('mouseleave', function(){
2563			var leaveTimer = setTimeout(function(){
2564				$submenu.stop().slideUp(animationTime, function(){
2565					$submenu.css({left: ''});
2566				});
2567			}, delayTime);
2568
2569			$(this).on('mouseenter', function(){
2570				if(leaveTimer){
2571					clearTimeout(leaveTimer);
2572					leaveTimer = false;
2573				}
2574			});
2575		});
2576	}
2577});
2578
2579$(document).on('mouseenter', '.menu_top_block>li .dropdown>li', function(){
2580	var $this = $(this);
2581	var $submenu = $this.find('>.dropdown');
2582
2583	if($submenu.length && ((!$this.parents('.full').length && !$this.hasClass('full')) || $this.parents('.more').length)){
2584		var $menu = $this.parents('.menu');
2585		var $wrapmenu = $menu.parents('.wrap_menu');
2586		var arParentSubmenuForOpacity = [];
2587		topMenuEnterTimer = setTimeout(function(){
2588
2589			var wrapMenuWidth = $wrapmenu.actual('outerWidth');
2590			var wrapMenuLeft = $wrapmenu.offset().left;
2591			var wrapMenuRight = wrapMenuLeft + wrapMenuWidth;
2592			var $parentSubmenu = $this.parent();
2593			var bToLeft = $parentSubmenu.hasClass('toleft') ? true : false;
2594			if(!bToLeft){
2595				bToLeft = $this.offset().left + $this.actual('outerWidth') + $submenu.actual('outerWidth') > wrapMenuRight;
2596			}
2597			else{
2598				bToLeft = $this.offset().left + $this.actual('outerWidth') - $submenu.actual('outerWidth') < wrapMenuLeft;
2599			}
2600
2601			if(bToLeft){
2602				$this.find('>.dropdown').addClass('toleft').show();
2603			}
2604			else{
2605				$this.find('>.dropdown').removeClass('toleft').show();
2606			}
2607			var submenuLeft = $submenu.offset().left;
2608			var submenuRight = submenuLeft + $submenu.actual('outerWidth');
2609
2610			$this.parents('.dropdown').each(function(){
2611				var $this = $(this);
2612				var leftOffset = $this.offset().left;
2613				var rightOffset = leftOffset + $this.actual('outerWidth');
2614				if(leftOffset >= submenuLeft  && leftOffset < (submenuRight - 1) || (rightOffset > (submenuLeft + 1) && rightOffset <= submenuRight)){
2615					arParentSubmenuForOpacity.push($this);
2616					$this.find('>li>a').css({opacity: '0.1'});
2617				}
2618			});
2619		}, delayTime);
2620
2621		$this.unbind('mouseleave');
2622		$this.on('mouseleave', function(){
2623			var leaveTimer = setTimeout(function(){
2624				$this.find('.dropdown').removeClass('toleft').hide();
2625				if(arParentSubmenuForOpacity.length){
2626					for(i in arParentSubmenuForOpacity){
2627						arParentSubmenuForOpacity[i].find('>li>a').css({opacity: ''});
2628					}
2629				}
2630			}, delayTime);
2631
2632			$this.unbind('mouseenter');
2633			$this.on('mouseenter', function(){
2634				if(leaveTimer){
2635					clearTimeout(leaveTimer);
2636					leaveTimer = false;
2637				}
2638			});
2639		});
2640	}
2641});
2642
2643getGridSize = function(counts,slider) {
2644	var counts_item=1;
2645		//wide
2646		if(window.matchMedia('(min-width: 1200px)').matches){
2647			counts_item=counts[0];
2648			if(typeof(slider.data('lg_count')) !== 'undefined' && slider.data('lg_count') && $('.front.wide_page').length)
2649				counts_item=slider.data('lg_count');
2650		}
2651
2652		//large
2653		if(window.matchMedia('(max-width: 1200px)').matches){
2654			counts_item=counts[1];
2655		}
2656
2657		//middle
2658		if(window.matchMedia('(max-width: 992px)').matches){
2659			counts_item=counts[2];
2660		}
2661
2662		//small
2663		if(counts[3]){
2664			if(window.matchMedia('(max-width: 600px)').matches){
2665				counts_item=counts[3];
2666			}
2667		}
2668
2669		//exsmall
2670		if(counts[4]){
2671			if(window.matchMedia('(max-width: 400px)').matches){
2672				counts_item=counts[4];
2673			}
2674		}
2675	return counts_item;
2676}
2677
2678CheckFlexSlider = function(){
2679	$('.flexslider:not(.thmb)').each(function(){
2680		var slider = $(this);
2681		if(typeof(slider.data('flexslider')) != 'undefined')
2682		{
2683			if('vars' in slider.data('flexslider'))
2684			{
2685				slider.resize();
2686
2687				var counts = slider.data('flexslider').vars.counts;
2688				if(typeof(counts) != 'undefined' && slider.is(':visible')){
2689					var cnt = getGridSize(counts,slider);
2690					var to0 = (cnt != slider.data('flexslider').vars.minItems || cnt != slider.data('flexslider').vars.maxItems || cnt != slider.data('flexslider').vars.move);
2691					if(to0){
2692						slider.data('flexslider').vars.minItems = cnt;
2693						slider.data('flexslider').vars.maxItems = cnt;
2694						slider.data('flexslider').vars.move = cnt;
2695						slider.flexslider(0);
2696						slider.resize();
2697						slider.resize(); // twise!
2698					}
2699				}
2700			}
2701		}
2702	});
2703}
2704
2705InitFlexSlider = function() {
2706	$('.flexslider:not(.thmb):not(.flexslider-init)').each(function(){
2707		var slider = $(this);
2708		var options;
2709		var defaults = {
2710			// animationLoop: false,
2711			// controlNav: false,
2712			// keyboard: false,
2713			// pauseOnAction: false,
2714			// pauseInvisible: false,
2715			// directionNav: true,
2716			// useCSS: false,
2717			animation: "slide"
2718		}
2719		var config = $.extend({}, defaults, options, slider.data('plugin-options'));
2720		if(!slider.parent().hasClass('top_slider_wrapp') && slider.is(':visible')){
2721			if(typeof(config.counts) != 'undefined' && config.direction !== 'vertical'){
2722				config.maxItems =  getGridSize(config.counts,slider);
2723				config.minItems = getGridSize(config.counts,slider);
2724				config.itemWidth = 200;
2725			}
2726			if(typeof(config.move) == 'undefined')
2727				config.move = 1;
2728			config.start = function(slider){
2729				var eventdata = {slider: slider};
2730				BX.onCustomEvent('onSlideInit', [eventdata]);
2731			}
2732
2733			config.after = function(slider){
2734				var eventdata = {slider: slider};
2735				BX.onCustomEvent('onSlideComplete', [eventdata]);
2736			}
2737
2738			config.end = function(slider){
2739				var eventdata = {slider: slider};
2740				BX.onCustomEvent('onSlideEnd', [eventdata]);
2741			}
2742
2743			slider.flexslider(config).addClass('flexslider-init');
2744			if(config.controlNav)
2745				slider.addClass('flexslider-control-nav');
2746			if(config.directionNav)
2747				slider.addClass('flexslider-direction-nav');
2748		}
2749
2750
2751
2752
2753	});
2754}
2755
2756InitZoomPict = function(el) {
2757	var block = $('.zoom_picture');
2758	if(typeof el !== 'undefined')
2759		block = el;
2760	if(block.length){
2761		var slide=block.closest('.slides');
2762		var zoomer = block,
2763			options,
2764			defaults = {
2765				zoomWidth: 200,
2766				zoomHeight: 200,
2767				adaptive: false,
2768				title: true,
2769				Xoffset: 15,
2770
2771			};
2772		var config = $.extend({}, defaults, options, zoomer.data('plugin-options'));
2773			zoomer.xzoom(config);
2774
2775		/*block.on('mouseleave', function(){
2776			if($('.xzoom-lens').length)
2777				block.data('xzoom').closezoom();
2778		})*/
2779		block.on('mouseleave', function(){
2780			block.data('xzoom').movezoom(event);
2781		})
2782	}
2783}
2784
2785var arBasketAsproCounters = arStatusBasketAspro = arBasketPrices = {};
2786SetActualBasketFlyCounters = function(){
2787	if(arBasketAsproCounters.DEFAULT == true){
2788		$.ajax({
2789			url: arNextOptions['SITE_DIR'] + 'ajax/basket_fly.php',
2790			type: 'post',
2791			success: function(html){
2792				$('#basket_line .basket_fly').removeClass('loaded').html(html);
2793			}
2794		});
2795	}
2796	else{
2797		$('.basket_fly .opener .basket_count .count').attr('class', 'count' + (arBasketAsproCounters.READY.COUNT > 0 ? '' : ' empty_items')).find('.items span').text(arBasketAsproCounters.READY.COUNT)
2798		$('.basket_fly .opener .basket_count + a').attr('href', arBasketAsproCounters['READY']['HREF'])
2799		$('.basket_fly .opener .basket_count').attr('title', arBasketAsproCounters.READY.TITLE).attr('class', 'basket_count small clicked' + (arBasketAsproCounters.READY.COUNT > 0 ? '' : ' empty'))
2800
2801		$('.basket_fly .opener .wish_count .count').attr('class', 'count' + (arBasketAsproCounters.DELAY.COUNT > 0 ? '' : ' empty_items')).find('.items span').text(arBasketAsproCounters.DELAY.COUNT)
2802		$('.basket_fly .opener .wish_count + a').attr('href', arBasketAsproCounters.DELAY.HREF)
2803		$('.basket_fly .opener .wish_count').attr('title', arBasketAsproCounters.DELAY.TITLE).attr('class', 'wish_count small clicked' + (arBasketAsproCounters.DELAY.COUNT > 0 ? '' : ' empty'))
2804
2805		$('.basket_fly .opener .compare_count .wraps_icon_block').attr('class', 'wraps_icon_block compare' + (arBasketAsproCounters.COMPARE.COUNT > 0 ? '' : ' empty_block'));
2806		$('.basket_fly .opener .compare_count .count').attr('class', 'count' + (arBasketAsproCounters.COMPARE.COUNT > 0 ? '' : ' empty_items')).find('.items span').text(arBasketAsproCounters.COMPARE.COUNT)
2807		$('.basket_fly .opener .compare_count + a').attr('href', arBasketAsproCounters.COMPARE.HREF)
2808
2809	}
2810}
2811
2812CheckHeaderFixed = function(){
2813	var header_fixed = $('#headerfixed');
2814		header = $('header').first();
2815	if(header_fixed.length){
2816		if(header.length)
2817		{
2818			var isHeaderFixed = false,
2819				isTabsFixed = false,
2820				headerCanFix = true,
2821				headerFixedHeight = header_fixed.actual('outerHeight'),
2822				headerNormalHeight = header.actual('outerHeight'),
2823				headerDiffHeight = headerNormalHeight - headerFixedHeight,
2824				mobileBtnMenu = $('.btn.btn-responsive-nav'),
2825				headerTop = $('#panel:visible').actual('outerHeight');
2826				topBlock = $('.TOP_HEADER').first();
2827
2828			if(headerDiffHeight <= 0)
2829				headerDiffHeight = 0;
2830			if(topBlock.length)
2831				headerTop += topBlock.actual('outerHeight');
2832
2833			$(window).scroll(function(){
2834				var tabs_fixed = $('.product-item-detail-tabs-container-fixed');
2835				if(window.matchMedia('(min-width:992px)').matches)
2836				{
2837					var scrollTop = $(window).scrollTop();
2838					headerCanFix = !mobileBtnMenu.is(':visible')/* && !$('.dropdown-menu:visible').length*/;
2839
2840					var tabs_offset = $('.tabs_section .nav.nav-tabs').offset();
2841
2842					var current_is = $('.search-wrapper .search-input:visible'),
2843						title_search_result = $('.title-search-result.'+current_is.attr('id')),
2844						pos, pos_input;
2845
2846					if(!isHeaderFixed)
2847					{
2848						if((scrollTop > headerNormalHeight + headerTop) && headerCanFix)
2849						{
2850							isHeaderFixed = true;
2851							// header_fixed.css('top', '-' + headerNormalHeight + 'px');
2852							header_fixed.addClass('fixed');
2853							// header_fixed.stop(0).animate({top: '0'}, 300);
2854
2855							/*header_fixed.animate({top: '0'}, {duration:300, complete:
2856								function(){}
2857							});*/
2858
2859							if($('nav.mega-menu.sliced').length)
2860								$('nav.mega-menu.sliced').removeClass('initied');
2861							CheckTopMenuDotted();
2862						}
2863					}
2864					else if(isHeaderFixed || !headerCanFix)
2865					{
2866						if((scrollTop <= headerDiffHeight + headerTop) || !headerCanFix)
2867						{
2868							isHeaderFixed = false;
2869							header_fixed.removeClass('fixed');
2870						}
2871					}
2872					//fixed tabs
2873					if(tabs_fixed.length)
2874					{
2875						if (scrollTop + headerFixedHeight > tabs_offset.top)
2876						{
2877							tabs_fixed.css({'top': header_fixed.actual('outerHeight')});
2878							tabs_fixed.addClass('fixed');
2879						}
2880						else if (tabs_fixed.hasClass('fixed'))
2881						{
2882							tabs_fixed.removeAttr('style');
2883							tabs_fixed.removeClass('fixed');
2884						}
2885					}
2886				}
2887			});
2888		}
2889	}
2890
2891	//mobile fixed
2892	var mfixed = $('.wrapper1.mfixed_Y #mobileheader');
2893	if(mfixed.length && isMobile)
2894	{
2895		var isMHeaderFixed = false,
2896			mheaderCanFix = true,
2897			//mheaderFixedHeight = mfixed.actual('outerHeight'),
2898			mheaderFixedHeight = 0,
2899			mheaderTop = $('#panel:visible').actual('outerHeight');
2900		$(window).scroll(function(){
2901			var scrollTop = $(window).scrollTop();
2902			if(window.matchMedia('(max-width:991px)').matches)
2903			{
2904				if($('.wrapper1.mfixed_Y.mfixed_view_scroll_top #mobileheader').length)
2905				{
2906					if(scrollTop > startScroll)
2907					{
2908						$('.wrapper1.mfixed_Y.mfixed_view_scroll_top #mobileheader').removeClass('fixed');
2909					}
2910					else if(scrollTop > mheaderFixedHeight + mheaderTop)
2911						$('.wrapper1.mfixed_Y.mfixed_view_scroll_top #mobileheader').addClass('fixed');
2912					else if(scrollTop <= mheaderFixedHeight + mheaderTop)
2913						$('.wrapper1.mfixed_Y.mfixed_view_scroll_top #mobileheader').removeClass('fixed');
2914					startScroll = scrollTop;
2915				}
2916				else
2917				{
2918					if(!isMHeaderFixed)
2919					{
2920						if((scrollTop > mheaderFixedHeight + mheaderTop))
2921						{
2922							isMHeaderFixed = true;
2923							mfixed.addClass('fixed');
2924						}
2925					}
2926					else if(isMHeaderFixed)
2927					{
2928						if((scrollTop <= mheaderFixedHeight + mheaderTop))
2929						{
2930							isMHeaderFixed = false;
2931							mfixed.removeClass('fixed');
2932						}
2933					}
2934				}
2935			}
2936			else
2937				mfixed.removeClass('fixed');
2938		})
2939	}
2940}
2941
2942CheckHeaderFixedMenu = function(){
2943	if(arNextOptions['THEME']['HEADER_FIXED'] == 2 && $('#headerfixed .js-nav').length && window.matchMedia('(min-width: 992px)').matches)
2944	{
2945		$('#headerfixed .js-nav').css('width','0');
2946		var all_width = 0,
2947			cont_width = $('#headerfixed .maxwidth-theme').actual('width'),
2948			padding_menu = $('#headerfixed .logo-row.v2 .menu-block').actual('outerWidth')-$('#headerfixed .logo-row.v2 .menu-block').actual('width');
2949		$('#headerfixed .logo-row.v2 > .inner-table-block').each(function(){
2950			if(!$(this).hasClass('menu-block'))
2951				all_width += $(this).actual('outerWidth');
2952		})
2953		$('#headerfixed .js-nav').width(cont_width-all_width-padding_menu);
2954	}
2955}
2956
2957CheckTopMenuPadding = function(){
2958	if($('.logo_and_menu-row .right-icons .wrap_icon').length && $('.logo_and_menu-row .menu-row').length){
2959		var menuPosition = $('.menu-row .menu-only').position().left,
2960			leftPadding = 0,
2961			rightPadding = 0;
2962		$('.logo_and_menu-row .menu-row>div').each(function(indx){
2963			if(!$(this).hasClass('menu-only')){
2964				var elementPosition = $(this).position().left,
2965					elementWidth = $(this).outerWidth()+1;
2966
2967				if(elementPosition > menuPosition){
2968					rightPadding += elementWidth;
2969				}else{
2970					leftPadding += elementWidth;
2971				}
2972			}
2973		}).promise().done(function(){
2974			$('.logo_and_menu-row .menu-only').css({'padding-left': leftPadding, 'padding-right': rightPadding});
2975		});
2976	}
2977}
2978
2979CheckTopMenuOncePadding = function(){
2980	if($('.menu-row.sliced .right-icons .wrap_icon').length){
2981		var menuPosition = $('.menu-row .menu-only').position().left,
2982			leftPadding = 0,
2983			rightPadding = 0;
2984		$('.menu-row.sliced .maxwidth-theme>div>div>div').each(function(indx){
2985			if(!$(this).hasClass('menu-only')){
2986				var elementPosition = $(this).position().left,
2987					elementWidth = $(this).outerWidth()+1;
2988
2989				if(elementPosition > menuPosition){
2990					rightPadding += elementWidth;
2991				}else{
2992					leftPadding += elementWidth;
2993				}
2994			}
2995		}).promise().done(function(){
2996			$('.menu-row.sliced .menu-only').css({'padding-left': leftPadding, 'padding-right': rightPadding});
2997		});
2998	}
2999}
3000
3001CheckSearchWidth = function(){
3002	if($('.logo_and_menu-row .search_wrap').length){
3003		var searchPosition = $('.logo_and_menu-row .search_wrap').position().left,
3004			maxWidth = $('.logo_and_menu-row .maxwidth-theme').width() - 2;
3005			width = 0;
3006
3007		$('.logo_and_menu-row .maxwidth-theme > .row >div').each(function(){
3008			if(!$(this).hasClass('search_wrap') && !$(this).hasClass('region-block')){
3009				var elementWidth = $(this).outerWidth();
3010				width = (width ? width - elementWidth : maxWidth - elementWidth);
3011			}
3012		}).promise().done(function(){
3013			if($('.logo_and_menu-row .search_wrap.wide_search').length)
3014				$('.logo_and_menu-row .search_wrap .search-block').outerWidth(width);
3015			else
3016				$('.logo_and_menu-row .search_wrap').outerWidth(width);
3017			$('.logo_and_menu-row .search_wrap').css({'opacity': 1, 'visibility': 'visible'});
3018		});
3019	}
3020}
3021
3022//Надо его возвращать или нет не понятно
3023lazyLoadPagenBlock = function(){
3024	setTimeout(function(){
3025		if ($('.with-load-block .ajax_load_btn:not(.appear-block)').length) {
3026			$('.with-load-block .ajax_load_btn:not(.appear-block)').appear(function(){
3027				var $this = $(this);
3028				$this.addClass('appear-block').trigger('click');
3029			}, {accX: 0, accY: 200})
3030		}
3031	}, 200)
3032}
3033
3034scrollPreviewBlock = function(){
3035	if(typeof($.cookie('scroll_block')) != 'undefined' && $.cookie('scroll_block'))
3036	{
3037		var scroll_block = $($.cookie('scroll_block'));
3038		if(scroll_block.length)
3039		{
3040			$('body, html').animate({scrollTop: scroll_block.offset().top}, 500);
3041		}
3042		$.cookie('scroll_block', null);
3043	}
3044}
3045
3046scrollToBlock = function(block){
3047	if($(block).length)
3048	{
3049		var offset = $(block).offset().top;
3050		if(typeof($(block).data('toggle')) != 'undefined')
3051			$(block).click();
3052
3053		if(typeof($(block).data('offset')) != 'undefined')
3054			offset += $(block).data('offset');
3055		$('body, html').animate({scrollTop: offset}, 500);
3056	}
3057}
3058
3059SetFixedAskBlock = function(){
3060	if($('.ask_a_question_wrapper').length)
3061	{
3062		var offset = $('.ask_a_question_wrapper').offset(),
3063			footer_offset = 0,
3064			block = $('.ask_a_question_wrapper').find('.ask_a_question'),
3065			block_offset = BX.pos(block[0]),
3066			block_height = block_offset.bottom-block_offset.top,
3067			diff_top_scroll = $('#headerfixed').height() + 20;
3068
3069		if($('footer').length)
3070			footer_offset = $('footer').offset().top;
3071
3072		if($('.banner.CONTENT_BOTTOM').length)
3073			footer_offset = $('.banner.CONTENT_BOTTOM').offset().top;
3074
3075		/* removed for ISSUE NEXT-414
3076		if(block_height+130 > block.closest('.fixed_wrapper').height())
3077			block.addClass('nonfixed');
3078		else
3079			block.removeClass('nonfixed');
3080		*/
3081
3082		if(block_height+diff_top_scroll+documentScrollTopLast + 130 > footer_offset)
3083		{
3084			block.removeClass('fixed').css({'top': 'auto', 'width': 'auto', 'bottom': 0});
3085			block.parent().css('position', 'static');
3086			block.parent().parent().css('position', 'static');
3087		}
3088		else
3089		{
3090			block.parent().removeAttr('style');
3091			block.parent().parent().removeAttr('style');
3092
3093			if(documentScrollTopLast + diff_top_scroll > offset.top)
3094			{
3095				var fixed_width = $('.fixed_block_fix').width();
3096				block.addClass('fixed').css({'top': diff_top_scroll, 'bottom': 'auto'});
3097				if(fixed_width)
3098					block.css({'width': $('.fixed_block_fix').width()})
3099			}
3100			else
3101				block.removeClass('fixed').css({'top': 0, 'width': 'auto'});
3102		}
3103	}
3104}
3105
3106MegaMenuFixed = function(){
3107	var animationTime = 150;
3108
3109	$('.logo_and_menu-row .burger').on('click', function(){
3110		$('.mega_fixed_menu').fadeIn(animationTime);
3111		$('.header_wrap').toggleClass('zindexed');
3112	});
3113
3114	$('.mega_fixed_menu .svg.svg-inline-close').on('click', function(){
3115		$(this).closest('.mega_fixed_menu').fadeOut(animationTime);
3116		$('.header_wrap').toggleClass('zindexed');
3117	});
3118
3119	$('.mega_fixed_menu .dropdown-menu .arrow').on('click', function(e){
3120		e.preventDefault();
3121		e.stopPropagation();
3122		$(this).closest('.dropdown-submenu').find('.dropdown-menu').slideToggle(animationTime);
3123		$(this).closest('.dropdown-submenu').addClass('opened');
3124	});
3125}
3126
3127CheckPopupTop = function(){
3128	var popup = $('.jqmWindow.show:last');
3129	if(!popup.length)
3130		popup = $('.jqmWindow.show');
3131	if(!popup.length)
3132		popup = $('.jqm-init.show');
3133	if(popup.length){
3134		var documentScollTop = $(document).scrollTop();
3135		var windowHeight = $(window).height();
3136		var popupTop = parseInt(popup.css('top'));
3137		var popupHeight = popup.height();
3138
3139		if(windowHeight >= popupHeight){
3140			// center
3141			popupTop = (windowHeight - popupHeight) / 2;
3142		}
3143		else{
3144			if(documentScollTop > documentScrollTopLast){
3145				// up
3146				popupTop -= documentScollTop - documentScrollTopLast;
3147			}
3148			else if(documentScollTop < documentScrollTopLast){
3149				// down
3150				popupTop += documentScrollTopLast - documentScollTop;
3151			}
3152
3153			if(popupTop + popupHeight < windowHeight){
3154				// bottom
3155				popupTop = windowHeight - popupHeight;
3156			}
3157			else if(popupTop > 0){
3158				// top
3159				popupTop = 0;
3160			}
3161		}
3162		popup.css('top', popupTop + 'px');
3163	}
3164}
3165
3166/*set price item*/
3167if(!funcDefined('setPriceItem')){
3168	var setPriceItem = function setPriceItem(main_block, quantity, rewrite_price, check_quantity, is_sku, show_percent, percent){
3169		var old_quantity = main_block.find('.to-cart').attr('data-ratio'),
3170			value = (typeof rewrite_price !== 'undefined' && rewrite_price ? rewrite_price : main_block.find('.to-cart').attr('data-value')),
3171			currency = main_block.find('.to-cart').attr('data-currency'),
3172			total_block = '<div class="total_summ" style="display:none;"><div>'+BX.message('TOTAL_SUMM_ITEM')+'<span></span></div></div>',
3173			price_block = main_block.find('.cost.prices'),
3174			use_percent = (typeof show_percent !== 'undefined' && show_percent == 'Y'),
3175			percent_number = (typeof percent !== 'undefined' && percent),
3176			sku_checked = (main_block.find('.has_offer_prop').length ? 'Y' : 'N'),
3177			check = (typeof check_quantity !== 'undefined' && check_quantity);
3178
3179		if(main_block.find('.buy_block').length)
3180		{
3181			if(!main_block.find('.buy_block .total_summ').length && !is_sku)
3182				$(total_block).appendTo(main_block.find('.buy_block'))
3183		}
3184		else if(main_block.find('.counter_wrapp').length)
3185		{
3186			if(!main_block.find('.counter_wrapp .total_summ').length && !is_sku)
3187				$(total_block).appendTo(main_block.find('.counter_wrapp:first'))
3188		}
3189		if(main_block.find('.total_summ').length)
3190		{
3191			if(value && currency)
3192			{
3193				if((1 == quantity && old_quantity == quantity) || (typeof is_sku !== 'undefined' && is_sku && !check))
3194				{
3195					main_block.find('.total_summ').slideUp(50);
3196				}
3197				else
3198				{
3199					main_block.find('.total_summ span').html(BX.Currency.currencyFormat((value*quantity), currency, true));
3200					if(main_block.find('.total_summ').is(':hidden')/* || sku_checked == 'Y'*/)
3201						main_block.find('.total_summ').slideDown(100);
3202				}
3203			}
3204			else
3205			{
3206				main_block.find('.total_summ').slideUp(100);
3207			}
3208		}
3209	}
3210}
3211
3212if(!funcDefined('getCurrentPrice')){
3213	var getCurrentPrice = function getCurrentPrice(price, currency, print_price){
3214		var val = '';
3215		var format_value = BX.Currency.currencyFormat(price, currency);
3216		if(print_price.indexOf(format_value) >= 0)
3217		{
3218			val = print_price.replace(format_value, '<span class="price_value">'+format_value+'</span><span class="price_currency">');
3219			val += '</span>';
3220		}
3221		else
3222		{
3223			val = print_price;
3224		}
3225
3226		return val;
3227	}
3228}
3229
3230$(document).ready(function(){
3231	//check width for menu and search
3232	CheckSearchWidth();
3233	MegaMenuFixed();
3234
3235	//ecommerce order
3236	if(arNextOptions["PAGES"]["ORDER_PAGE"])
3237	{
3238		var arUrl = parseUrlQuery();
3239		if("ORDER_ID" in arUrl)
3240		{
3241			var _id = arUrl["ORDER_ID"];
3242			if(arNextOptions['COUNTERS']['USE_FULLORDER_GOALS'] !== 'N')
3243			{
3244				var eventdata = {goal: 'goal_order_success', result: _id};
3245				BX.onCustomEvent('onCounterGoals', [eventdata])
3246			}
3247			if(checkCounters())
3248			{
3249				if(typeof BX.localStorage !== 'undefined'){
3250					var d = BX.localStorage.get('gtm_e_' + _id);
3251					if(typeof d === 'object'){
3252						window.dataLayer = window.dataLayer || [];
3253						dataLayer.push({"event": arNextOptions["COUNTERS"]['GOOGLE_EVENTS']['PURCHASE'], "ecommerce": d});
3254					}
3255
3256					if(typeof localStorage !== 'undefined'){
3257						localStorage.removeItem('gtm_e_' + _id);
3258					}
3259				}
3260			}
3261		}
3262	}
3263	var bSafary = false;
3264	if(typeof jQuery.browser == 'object')
3265		bSafary = jQuery.browser.safari;
3266	else if(typeof browser == 'object')
3267		bSafary = browser.safari;
3268	if(!bSafary){
3269		CheckTopMenuPadding();
3270		CheckTopMenuOncePadding();
3271		CheckTopMenuDotted();
3272		CheckHeaderFixed();
3273		setTimeout(function() {$(window).resize();}, 150); // need to check resize flexslider & menu
3274		setTimeout(function() {$(window).scroll();}, 250); // need to check position fixed ask block
3275	}
3276	else{
3277		setTimeout(function(){
3278			$(window).resize(); // need to check resize flexslider & menu
3279			setTimeout(function(){
3280				CheckTopMenuPadding();
3281				CheckTopMenuOncePadding();
3282				CheckTopMenuDotted();
3283				CheckHeaderFixed();
3284
3285				setTimeout(function(){
3286					$(window).scroll();
3287				}, 50);
3288			}, 50);
3289		}, 350);
3290	}
3291
3292	if(arNextOptions['THEME']['USE_DEBUG_GOALS'] === 'Y')
3293		$.cookie('_ym_debug', 1, {path: '/',});
3294	else
3295		$.cookie('_ym_debug', null, {path: '/',});
3296
3297	/*  --- Bind mobile menu  --- */
3298	var $mobileMenu = $("#mobilemenu")
3299	if($mobileMenu.length){
3300		$mobileMenu.isLeftSide = $mobileMenu.hasClass('leftside')
3301		$mobileMenu.isOpen = $mobileMenu.hasClass('show')
3302		$mobileMenu.isDowndrop = $mobileMenu.find('>.scroller').hasClass('downdrop')
3303
3304		$('#mobileheader .burger').click(function(){
3305			SwipeMobileMenu()
3306		})
3307
3308		if($mobileMenu.isLeftSide){
3309			$mobileMenu.parent().append('<div id="mobilemenu-overlay"></div>')
3310			var $mobileMenuOverlay = $('#mobilemenu-overlay')
3311
3312			$mobileMenuOverlay.click(function(){
3313				if($mobileMenu.isOpen){
3314					CloseMobileMenu()
3315				}
3316			});
3317
3318			$(document).swiperight(function(e) {
3319				if(!$(e.target).closest('.flexslider').length && !$(e.target).closest('.swipeignore').length){
3320					OpenMobileMenu()
3321				}
3322			});
3323
3324			$(document).swipeleft(function(e) {
3325				if(!$(e.target).closest('.flexslider').length && !$(e.target).closest('.swipeignore').length){
3326					CloseMobileMenu()
3327				}
3328			});
3329		}
3330		else{
3331			$('#mobileheader').click(function(e){
3332				if(!$(e.target).closest('#mobilemenu').length && !$(e.target).closest('.burger').length && $mobileMenu.isOpen){
3333					CloseMobileMenu()
3334				}
3335			});
3336		}
3337
3338		$('#mobilemenu .menu a,#mobilemenu .social-icons a').click(function(e){
3339			var $this = $(this)
3340			if($this.hasClass('parent')){
3341				e.preventDefault()
3342
3343				if(!$mobileMenu.isDowndrop){
3344					$this.closest('li').addClass('expanded')
3345					MoveMobileMenuWrapNext()
3346				}
3347				else{
3348					if(!$this.closest('li').hasClass('expanded')){
3349						$this.closest('li').addClass('expanded')
3350					}
3351					else{
3352						$this.closest('li').removeClass('expanded')
3353					}
3354				}
3355			}
3356			else{
3357				if($this.closest('li').hasClass('counters')){
3358					var href = $this.attr('href')
3359					if(typeof href !== 'undefined'){
3360						window.location.href = href
3361						window.location.reload()
3362					}
3363				}
3364
3365				if(!$this.closest('.menu_back').length){
3366					CloseMobileMenu()
3367				}
3368			}
3369		})
3370
3371		$('#mobilemenu .dropdown .menu_back').click(function(e){
3372			e.preventDefault()
3373			var $this = $(this)
3374			MoveMobileMenuWrapPrev()
3375			setTimeout(function(){
3376				$this.closest('.expanded').removeClass('expanded')
3377			}, 400)
3378		})
3379
3380		OpenMobileMenu = function(){
3381			if(!$mobileMenu.isOpen){
3382				// hide styleswitcher
3383				if($('.style-switcher').hasClass('active')){
3384					$('.style-switcher .switch').trigger('click')
3385				}
3386				$('.style-switcher .switch').hide()
3387
3388				if($mobileMenu.isLeftSide){
3389					// show overlay
3390					setTimeout(function(){
3391						$mobileMenuOverlay.fadeIn('fast')
3392					}, 100)
3393				}
3394				else{
3395					// scroll body to top & set fixed
3396					$('body').scrollTop(0).css({position: 'fixed'})
3397
3398					// set menu top = bottom of header
3399					$mobileMenu.css({top: + ($('#mobileheader').height() + $('#mobileheader').offset().top) + 'px'})
3400
3401					// change burger icon
3402					$('#mobileheader .burger').addClass('c')
3403				}
3404
3405				// show menu
3406				$mobileMenu.addClass('show')
3407				$mobileMenu.isOpen = true
3408
3409				if(!$mobileMenu.isDowndrop){
3410					var $wrap = $mobileMenu.find('.wrap').first()
3411					var params =  $wrap.data('params')
3412					if(typeof params === 'undefined'){
3413						params = {
3414							depth: 0,
3415							scroll: {},
3416							height: {}
3417						}
3418					}
3419					$wrap.data('params', params)
3420				}
3421			}
3422		}
3423
3424		CloseMobileMenu = function(){
3425			if($mobileMenu.isOpen){
3426				// hide menu
3427				$mobileMenu.removeClass('show')
3428				$mobileMenu.isOpen = false
3429
3430				// show styleswitcher
3431				$('.style-switcher .switch').show()
3432
3433				if($mobileMenu.isLeftSide){
3434					// hide overlay
3435					setTimeout(function(){
3436						$mobileMenuOverlay.fadeOut('fast')
3437					}, 100)
3438				}
3439				else{
3440					// change burger icon
3441					$('#mobileheader .burger').removeClass('c')
3442
3443					// body unset fixed
3444					$('body').css({position: ''})
3445				}
3446
3447				if(!$mobileMenu.isDowndrop){
3448					setTimeout(function(){
3449						var $scroller = $mobileMenu.find('.scroller').first()
3450						var $wrap = $mobileMenu.find('.wrap').first()
3451						var params =  $wrap.data('params')
3452						params.depth = 0
3453						$wrap.data('params', params).attr('style', '')
3454						$mobileMenu.scrollTop(0)
3455						$scroller.css('height', '')
3456					}, 400)
3457				}
3458			}
3459		}
3460
3461		SwipeMobileMenu = function(){
3462			if($mobileMenu.isOpen){
3463				CloseMobileMenu()
3464			}
3465			else{
3466				OpenMobileMenu()
3467			}
3468		}
3469
3470		function MoveMobileMenuWrapNext(){
3471			if(!$mobileMenu.isDowndrop){
3472				var $scroller = $mobileMenu.find('.scroller').first()
3473				var $wrap = $mobileMenu.find('.wrap').first()
3474				if($wrap.length){
3475					var params =  $wrap.data('params')
3476					var $dropdownNext = $mobileMenu.find('.expanded>.dropdown').eq(params.depth)
3477					if($dropdownNext.length){
3478						// save scroll position
3479						params.scroll[params.depth] = parseInt($mobileMenu.scrollTop())
3480
3481						// height while move animating
3482						params.height[params.depth + 1] = Math.max($dropdownNext.height(), (!params.depth ? $wrap.height() : $mobileMenu.find('.expanded>.dropdown').eq(params.depth - 1).height()))
3483						$scroller.css('height', params.height[params.depth + 1] + 'px')
3484
3485						// inc depth
3486						++params.depth
3487
3488						// translateX for move
3489						$wrap.css('transform', 'translateX(' + -100 * params.depth + '%)')
3490
3491						// scroll to top
3492						setTimeout(function() {
3493							$mobileMenu.animate({scrollTop : 0}, 200);
3494						}, 100)
3495
3496						// height on enimating end
3497						var h = $dropdownNext.height()
3498						setTimeout(function() {
3499							if(h){
3500								$scroller.css('height', h + 'px')
3501							}
3502							else{
3503								$scroller.css('height', '')
3504							}
3505						}, 200)
3506					}
3507
3508					$wrap.data('params', params)
3509				}
3510			}
3511		}
3512
3513		function MoveMobileMenuWrapPrev(){
3514			if(!$mobileMenu.isDowndrop){
3515				var $scroller = $mobileMenu.find('.scroller').first()
3516				var $wrap = $mobileMenu.find('.wrap').first()
3517				if($wrap.length){
3518					var params =  $wrap.data('params')
3519					if(params.depth > 0){
3520						var $dropdown = $mobileMenu.find('.expanded>.dropdown').eq(params.depth - 1)
3521						if($dropdown.length){
3522							// height while move animating
3523							$scroller.css('height', params.height[params.depth] + 'px')
3524
3525							// dec depth
3526							--params.depth
3527
3528							// translateX for move
3529							$wrap.css('transform', 'translateX(' + -100 * params.depth + '%)')
3530
3531							// restore scroll position
3532							setTimeout(function() {
3533								$mobileMenu.animate({scrollTop : params.scroll[params.depth]}, 200);
3534							}, 100)
3535
3536							// height on enimating end
3537							var h = (!params.depth ? false : $mobileMenu.find('.expanded>.dropdown').eq(params.depth - 1).height())
3538							setTimeout(function() {
3539								if(h){
3540									$scroller.css('height', h + 'px')
3541								}
3542								else{
3543									$scroller.css('height', '')
3544								}
3545							}, 200)
3546						}
3547					}
3548
3549					$wrap.data('params', params)
3550				}
3551			}
3552		}
3553	}
3554	/*  --- END Bind mobile menu  --- */
3555
3556	/* change type2 menu for fixed */
3557	if($('#headerfixed .js-nav').length)
3558	{
3559		if(arNextOptions['THEME']['HEADER_FIXED'] == 2)
3560			CheckHeaderFixedMenu();
3561
3562		setTimeout(function(){
3563			$('#headerfixed .js-nav').addClass('opacity1');
3564		},350);
3565	}
3566
3567	// -- scroll after apply option
3568	if($('.instagram_ajax').length)
3569	{
3570		BX.addCustomEvent('onCompleteAction', function(eventdata){
3571			if(eventdata.action === 'instagrammLoaded')
3572				scrollPreviewBlock();
3573		});
3574	}
3575	else
3576		scrollPreviewBlock();
3577
3578
3579	scrollToTop();
3580	checkVerticalMobileFilter();
3581
3582	$.extend( $.validator.messages, {
3583		required: BX.message('JS_REQUIRED'),
3584		email: BX.message('JS_FORMAT'),
3585		equalTo: BX.message('JS_PASSWORD_COPY'),
3586		minlength: BX.message('JS_PASSWORD_LENGTH'),
3587		remote: BX.message('JS_ERROR')
3588	});
3589
3590	$.validator.addMethod(
3591		'regexp', function( value, element, regexp ){
3592			var re = new RegExp( regexp );
3593			return this.optional( element ) || re.test( value );
3594		},
3595		BX.message('JS_FORMAT')
3596	);
3597
3598	$.validator.addMethod(
3599		'filesize', function( value, element, param ){
3600			return this.optional( element ) || ( element.files[0].size <= param )
3601		},
3602		BX.message('JS_FILE_SIZE')
3603	);
3604
3605	$.validator.addMethod(
3606		'date', function( value, element, param ) {
3607			var status = false;
3608			if(!value || value.length <= 0){
3609				status = false;
3610			}
3611			else{
3612				// html5 date allways yyyy-mm-dd
3613				var re = new RegExp('^([0-9]{4})(.)([0-9]{2})(.)([0-9]{2})$');
3614				var matches = re.exec(value);
3615				if(matches){
3616					var composedDate = new Date(matches[1], (matches[3] - 1), matches[5]);
3617					status = ((composedDate.getMonth() == (matches[3] - 1)) && (composedDate.getDate() == matches[5]) && (composedDate.getFullYear() == matches[1]));
3618				}
3619				else{
3620					// firefox
3621					var re = new RegExp('^([0-9]{2})(.)([0-9]{2})(.)([0-9]{4})$');
3622					var matches = re.exec(value);
3623					if(matches){
3624						var composedDate = new Date(matches[5], (matches[3] - 1), matches[1]);
3625						status = ((composedDate.getMonth() == (matches[3] - 1)) && (composedDate.getDate() == matches[1]) && (composedDate.getFullYear() == matches[5]));
3626					}
3627				}
3628			}
3629			return status;
3630		}, BX.message('JS_DATE')
3631	);
3632
3633	$.validator.addMethod(
3634		'extension', function(value, element, param){
3635			param = typeof param === 'string' ? param.replace(/,/g, '|') : 'png|jpe?g|gif';
3636			return this.optional(element) || value.match(new RegExp('.(' + param + ')$', 'i'));
3637		}, BX.message('JS_FILE_EXT')
3638	);
3639
3640	$.validator.addMethod(
3641		'captcha', function( value, element, params ){
3642			return $.validator.methods.remote.call(this, value, element,{
3643				url: arNextOptions['SITE_DIR'] + 'ajax/check-captcha.php',
3644				type: 'post',
3645				data:{
3646					captcha_word: value,
3647					captcha_sid: function(){
3648						return $(element).closest('form').find('input[name="captcha_sid"]').val();
3649					}
3650				}
3651			});
3652		},
3653		BX.message('JS_ERROR')
3654	);
3655
3656	$.validator.addMethod(
3657		'recaptcha', function(value, element, param){
3658			var id = $(element).closest('form').find('.g-recaptcha').attr('data-widgetid');
3659			if(typeof id !== 'undefined'){
3660				return grecaptcha.getResponse(id) != '';
3661			}
3662			else{
3663				return true;
3664			}
3665		}, BX.message('JS_RECAPTCHA_ERROR')
3666	);
3667
3668	$.validator.addClassRules({
3669		'phone':{
3670			regexp: arNextOptions['THEME']['VALIDATE_PHONE_MASK']
3671		},
3672		'confirm_password':{
3673			equalTo: 'input[name="REGISTER\[PASSWORD\]"]',
3674			minlength: 6
3675		},
3676		'password':{
3677			minlength: 6
3678		},
3679		'inputfile':{
3680			extension: arNextOptions['THEME']['VALIDATE_FILE_EXT'],
3681			filesize: 5000000
3682		},
3683		'captcha':{
3684			captcha: ''
3685		},
3686		'recaptcha':{
3687			recaptcha: ''
3688		}
3689	});
3690
3691	if(arNextOptions['THEME']['PHONE_MASK']){
3692		$('input.phone').inputmask('mask', {'mask': arNextOptions['THEME']['PHONE_MASK']});
3693	}
3694
3695	/*city*/
3696	$('select.region').on('change', function(){
3697		var val = parseInt($(this).val());
3698		if($('select.city').length)
3699		{
3700			if(val)
3701			{
3702				$('select.city option').hide();
3703				$('select.city option').prop('disabled', 'disabled');
3704				$('select.city option[data-parent_section='+val+']').prop('disabled', '');
3705				$('select.city option:eq(0)').prop('disabled', '');
3706				$('select.city').ikSelect('reset');
3707				$('select.city option[data-parent_section='+val+']').show();
3708			}
3709			else
3710				$('select.city option').prop('disabled', 'disabled');
3711				$('select.city option:eq(0)').prop('disabled', '');
3712				$('select.city').ikSelect('reset');
3713		}
3714	})
3715
3716	$('select.city, select.region').on('change', function(){
3717		var _this = $(this),
3718			val = parseInt(_this.val());
3719		if(_this.hasClass('region'))
3720		{
3721			$('select.city option:eq(0)').show();
3722			$('select.city').val(0);
3723		}
3724
3725		if((_this.hasClass('region') && !val) || _this.hasClass('city'))
3726		{
3727			$.ajax({
3728				type: 'POST',
3729				data: {ID: val},
3730			}).success(function(html){
3731				var ob = BX.processHTML(html);
3732				$('.ajax_items')[0].innerHTML = ob.HTML;
3733				BX.ajax.processScripts(ob.SCRIPT);
3734			})
3735		}
3736	})
3737
3738	$('.mobile_regions .city_item').on('click', function(e){
3739    	e.preventDefault();
3740    	var _this = $(this);
3741    	$.removeCookie('current_region');
3742		$.cookie('current_region', _this.data('id'), {path: '/',domain: arNextOptions['SITE_ADDRESS']});
3743		location.href = _this.attr('href');
3744    })
3745
3746	/* toggle */
3747	var $this = this,
3748		previewParClosedHeight = 25;
3749
3750	$('section.toggle > label').prepend($('<i />').addClass('fa fa-plus'));
3751	$('section.toggle > label').prepend($('<i />').addClass('fa fa-minus'));
3752	$('section.toggle.active > p').addClass('preview-active');
3753	$('section.toggle.active > div.toggle-content').slideDown(350, function() {});
3754
3755	$('section.toggle > label').click(function(e){
3756		var parentSection = $(this).parent(),
3757			parentWrapper = $(this).parents('div.toogle'),
3758			previewPar = false,
3759			isAccordion = parentWrapper.hasClass('toogle-accordion');
3760
3761		if(isAccordion && typeof(e.originalEvent) != 'undefined') {
3762			parentWrapper.find('section.toggle.active > label').trigger('click');
3763		}
3764
3765		parentSection.toggleClass('active');
3766
3767		// Preview Paragraph
3768		if( parentSection.find('> p').get(0) ){
3769			previewPar = parentSection.find('> p');
3770			var previewParCurrentHeight = previewPar.css('height');
3771			previewPar.css('height', 'auto');
3772			var previewParAnimateHeight = previewPar.css('height');
3773			previewPar.css('height', previewParCurrentHeight);
3774		}
3775
3776		// Content
3777		var toggleContent = parentSection.find('> div.toggle-content');
3778
3779		if( parentSection.hasClass('active') ){
3780			$(previewPar).animate({
3781				height: previewParAnimateHeight
3782			}, 350, function() {
3783				$(this).addClass('preview-active');
3784			});
3785			toggleContent.slideDown(350, function() {});
3786		}
3787		else{
3788			$(previewPar).animate({
3789				height: previewParClosedHeight
3790			}, 350, function() {
3791				$(this).removeClass('preview-active');
3792			});
3793			toggleContent.slideUp(350, function() {});
3794		}
3795	});
3796
3797	$('.tables-responsive .responsive').footable(); //responsive table
3798
3799	$('a[rel=tooltip]').tooltip();
3800	$('span[data-toggle=tooltip]').tooltip();
3801
3802	$('.toggle .more_items').on('click', function(){
3803		$(this).closest('.toggle').find('.collapsed').fadeToggle();
3804		$(this).remove();
3805		if(typeof $(this).data('resize') !== 'undefined' && $(this).data('resize'))
3806			$(window).resize();
3807	})
3808	$('.toggle_menu .more_items').on('click', function(){
3809		$(this).closest('.toggle_menu').find('.collapsed').addClass('clicked_exp');
3810		$(this).remove();
3811	})
3812
3813	/* search sync */
3814	$(document).on('keyup', '.search-input-div input', function(e){
3815		var inputValue = $(this).val();
3816		$('.search-input-div input:not(:focus').val(inputValue);
3817
3818		if($(this).closest('#headerfixed').length)
3819		{
3820			if(e.keyCode == 13)
3821				$('.search form').submit();
3822		}
3823	});
3824	$(document).on('click', '.search-button-div button', function(e){
3825		if($(this).closest('#headerfixed').length)
3826			$('.search form').submit();
3827	});
3828
3829	$('.inline-search-show, .inline-search-hide').on('click', function(e){
3830		if(window.matchMedia('(min-width: 600px)').matches)
3831		{
3832			if(typeof($(this).data('type_search')) != 'undefined' && $(this).data('type_search') == 'fixed')
3833				$('.inline-search-block').addClass('fixed');
3834
3835			if(arNextOptions['THEME']['TYPE_SEARCH'] == 'fixed'){
3836				$('.inline-search-block.fixed.big .search-input').focus();
3837			}
3838			if(arNextOptions['THEME']['TYPE_SEARCH'] != 'fixed')
3839			{
3840				var height_block = 0;
3841				/*if(!$('header > .top-block').length || $('header.long').length)
3842				{*/
3843					if($('header.long').length)
3844					{
3845						height_block = $('header.long').closest('#header').actual('outerHeight');
3846					}
3847					else
3848					{
3849						height_block = $(this).closest('.maxwidth-theme').actual('outerHeight');
3850						if($(this).closest('.top-block').length)
3851							height_block = $(this).closest('.top-block').actual('outerHeight');
3852						else if($(this).closest('header.header-v8').length)
3853							height_block = $(this).closest('header.header-v8').actual('outerHeight');
3854					}
3855					if($('#bx-panel').length)
3856						height_block += $('#bx-panel').actual('outerHeight');
3857					$('.inline-search-block').css({
3858						'height': height_block,
3859						'line-height': height_block-4+'px',
3860						'top': -height_block
3861					})
3862				//}
3863			}
3864
3865			$('.inline-search-block').toggleClass('show');
3866			if($('.top-block').length)
3867			{
3868				if($('.inline-search-block').hasClass('show'))
3869					$('.inline-search-block').css('background', $('.top-block').css('background-color'));
3870				else
3871					$('.inline-search-block').css('background', '#fff');
3872			}
3873			if(arNextOptions['THEME']['TYPE_SEARCH'] == 'fixed')
3874			{
3875				if($('.inline-search-block').hasClass('show'))
3876					$('<div class="jqmOverlay search"></div>').appendTo('body');
3877				else
3878					$('.jqmOverlay').detach();
3879			}
3880		}
3881		else
3882			location.href = arNextOptions['PAGES']['CATALOG_PAGE_URL']+'?q';
3883	})
3884
3885	/* close search block */
3886	$("html, body").on('mousedown', function(e){
3887		if(typeof e.target.className == 'string' && e.target.className.indexOf('adm') < 0)
3888		{
3889			e.stopPropagation();
3890			var search_target = $(e.target).closest('.bx_searche');
3891			if(!$(e.target).hasClass('inline-search-block') && !$(e.target).hasClass('svg') && !search_target.length)
3892			{
3893				$('.inline-search-block').removeClass('show');
3894				// $('.title-search-result').hide();
3895				if(arNextOptions['THEME']['TYPE_SEARCH'] == 'fixed')
3896					$('.jqmOverlay.search').detach();
3897			}
3898
3899			if($('#basket_line .basket_fly').length && parseInt($("#basket_line .basket_fly").css("right")) >= 0){
3900				if(!$(e.target).closest('.basket_wrapp').length)
3901					$("#basket_line .basket_fly").stop().animate({"right": -$("#basket_line .basket_fly").outerWidth()}, 150);
3902			}
3903
3904			if(isMobile)
3905			{
3906				if(search_target.length)
3907					location.href = search_target.attr('href');
3908			}
3909			var class_name = $(e.target).attr('class');
3910			if(typeof(class_name) == 'undefined' || class_name.indexOf('tooltip') < 0) //tooltip link
3911				$('.tooltip-link').tooltip('hide');
3912		}
3913	});
3914	$('.inline-search-block').find('*').on('mousedown', function(e){
3915		e.stopPropagation();
3916	});
3917
3918	/*check mobile device*/
3919	
3920		$(document).on('click', '*[data-event="jqm"]', function(e){
3921			e.preventDefault();
3922			e.stopPropagation();
3923			if(!$(this).hasClass('clicked'))
3924			{
3925				$(this).addClass('clicked');
3926				$(this).jqmEx();
3927				$(this).trigger('click');
3928			}
3929			return false;
3930		});
3931	
3932
3933	$('.animate-load').on('click', function(){
3934		if(!jQuery.browser.mobile)
3935			$(this).parent().addClass('loadings');
3936	})
3937
3938	BX.addCustomEvent('onCompleteAction', function(eventdata, _this){
3939		try{
3940			if(eventdata.action === 'loadForm')
3941			{
3942				$(_this).parent().removeClass('loadings');
3943				$(_this).removeClass('clicked');
3944
3945				if($(_this).hasClass('one_click_buy_trigger'))
3946					$('.one_click').removeClass('clicked')
3947				else if($(_this).hasClass('one_click_buy_basket_trigger'))
3948					$('.fast_order').removeClass('clicked')
3949			}
3950			else if(eventdata.action === 'loadBasket')
3951			{
3952				$('.basket-link.basket').attr('title', arBasketPrices.BASKET_SUMM_TITLE);
3953				$('.basket-link.delay').attr('title', arBasketPrices.DELAY_SUMM_TITLE);
3954
3955				if(arBasketPrices.BASKET_COUNT>0)
3956				{
3957					$('.header__cart .cart-value').show();
3958					$('.basket-link.basket').addClass('basket-count');
3959					$('.basket-link.basket .count').removeClass('empted');
3960					if($('.basket-link.basket .prices').length)
3961						$('.basket-link.basket .prices').html(arBasketPrices.BASKET_SUMM);
3962				}
3963				else
3964				{
3965					$('.header__cart .cart-value').hide();
3966					$('.basket-link.basket').removeClass('basket-count');
3967					$('.basket-link.basket .count').addClass('empted');
3968					if($('.basket-link.basket .prices').length)
3969						$('.basket-link.basket .prices').html(arBasketPrices.BASKET_SUMM_TITLE_SMALL);
3970				}
3971				$('.basket-link.basket .count').text(arBasketPrices.BASKET_COUNT);
3972
3973				$('.header__cart .cart-value').text(arBasketPrices.BASKET_COUNT);
3974				$('.header__favorite .favorite-value').text(arBasketPrices.DELAY_COUNT);
3975
3976				
3977				if(arBasketPrices.DELAY_COUNT>0)
3978				{
3979					$('.header__favorite .favorite-value').show()
3980					$('.basket-link.delay').addClass('basket-count');
3981					$('.basket-link.delay .count').removeClass('empted');
3982				}
3983				else
3984				{
3985					$('.header__favorite .favorite-value').hide()
3986					$('.basket-link.delay').removeClass('basket-count');
3987					$('.basket-link.delay .count').addClass('empted');
3988				}
3989				$('.basket-link.delay .count').text(arBasketPrices.DELAY_COUNT);
3990			}
3991			else if(eventdata.action === 'loadActualBasketCompare')
3992			{
3993				var compare_count = Object.keys(arBasketAspro.COMPARE).length;
3994				if(compare_count>0)
3995				{
3996					$('.basket-link.compare').addClass('basket-count');
3997					$('.basket-link.compare .count').removeClass('empted');
3998					if($('#compare_fly').length)
3999						$('#compare_fly').removeClass('empty_block');
4000				}
4001				else
4002				{
4003					$('.basket-link.compare').removeClass('basket-count');
4004					$('.basket-link.compare .count').addClass('empted');
4005					if($('#compare_fly').length)
4006						$('#compare_fly').addClass('empty_block');
4007				}
4008				$('.basket-link.compare .count').text(compare_count);
4009			}
4010			else if(eventdata.action === 'loadRSS')
4011			{
4012			}
4013			else if(eventdata.action === 'jsLoadBlock')
4014			{
4015				
4016			}
4017		}
4018		catch(e){
4019			console.error(e)
4020		}
4021	})
4022
4023	/*slices*/
4024	if($('.banners-small .item.normal-block').length)
4025		$('.banners-small .item.normal-block').sliceHeight();
4026	if($('.teasers .item').length)
4027		$('.teasers .item').sliceHeight();
4028	if($('.wrap-portfolio-front .row.items > div').length)
4029		$('.wrap-portfolio-front .row.items > div').sliceHeight({'row': '.row.items', 'item': '.item1'});
4030
4031	/* bug fix in ff*/
4032	$('img').removeAttr('draggable');
4033
4034	clicked_tab = 0;
4035
4036	$('.title-tab-heading').on('click', function(){
4037		var container = $(this).parent(),
4038			slide_block = $(this).next(),
4039			bReviewTab = container.hasClass('media_review');
4040
4041		clicked_tab = container.index()+1;
4042
4043		container.siblings().removeClass('active');
4044
4045		$('.nav.nav-tabs li').removeClass('active');
4046
4047		if(container.hasClass('active'))
4048		{
4049			if(bReviewTab)
4050			{
4051				$('#reviews_content').slideUp(200, function(){
4052					container.removeClass('active');
4053				});
4054			}
4055			else
4056			{
4057				slide_block.slideUp(200, function(){
4058					container.removeClass('active');
4059				});
4060			}
4061		}
4062		else
4063		{
4064			container.addClass('active');
4065			if(bReviewTab)
4066			{
4067				$('#reviews_content').slideDown();
4068			}
4069			else
4070			{
4071				if($('.tabs_section + #reviews_content').length)
4072					$('.tabs_section + #reviews_content').slideUp();
4073				slide_block.slideDown();
4074				if(typeof container.attr('id') !== 'undefined' && container.attr('id') == 'descr'){
4075					var $gallery = $('.galerys-block');
4076					if($gallery.length){
4077						var bTypeBig = $gallery.find('.big_slider').length;
4078						var $slider = bTypeBig ? $gallery.find('.big_slider') : $gallery.find('.small_slider');
4079						InitFlexSlider();
4080						var interval = setInterval(function(){
4081							if($slider.find('.slides .item').attr('style').indexOf('height') === -1){
4082								$(window).resize();
4083							}
4084							else{
4085								clearInterval(interval);
4086							}
4087						}, 100);
4088					}
4089				}
4090			}
4091		}
4092	})
4093
4094	InitFlexSlider();
4095
4096	setTimeout(function(){
4097		InitTopestMenuGummi();
4098		isOnceInited = true;
4099	},50);
4100
4101	InitZoomPict();
4102
4103	// $('body').on( 'click', '.captcha_reload', function(e){
4104	$(document).on('click', '.captcha_reload', function(e){
4105		var captcha = $(this).parents('.captcha-row');
4106		e.preventDefault();
4107		$.ajax({
4108			url: arNextOptions['SITE_DIR'] + 'ajax/captcha.php'
4109		}).done(function(text){
4110			captcha.find('input[name=captcha_sid]').val(text);
4111			captcha.find('img').attr('src', '/bitrix/tools/captcha.php?captcha_sid=' + text);
4112			captcha.find('input[name=captcha_word]').val('').removeClass('error');
4113			captcha.find('.captcha_input').removeClass('error').find('.error').remove();
4114		});
4115	});
4116
4117	/* show print */
4118	if(arNextOptions["PAGES"]["BASKET_PAGE"])
4119	{
4120		if(arNextOptions["THEME"]["SHOW_BASKET_PRINT"]=="Y")
4121		{
4122			if($('.page-top h1').length)
4123				$('<div class="print-link" title="'+arNextOptions["THEME"]["EXPRESSION_FOR_PRINT_PAGE"]+'"><i class="svg svg-print"></i></div>').insertBefore($('.page-top h1'));
4124		}
4125	}
4126	else
4127	{
4128		if(arNextOptions['THEME']['PRINT_BUTTON'] == 'Y')
4129		{
4130			setTimeout(function(){
4131				if($('.page-top .rss-block.top').length)
4132				{
4133					$('<div class="print-link" title="'+arNextOptions["THEME"]["EXPRESSION_FOR_PRINT_PAGE"]+'"><i class="svg svg-print"></i></div>').insertBefore($('.page-top .rss-block.top .share_wrapp'));
4134				}
4135				else if($('.page-top .rss').length)
4136				{
4137					$('<div class="print-link" title="'+arNextOptions["THEME"]["EXPRESSION_FOR_PRINT_PAGE"]+'"><i class="svg svg-print"></i></div>').insertAfter($('.page-top .rss'));
4138				}
4139				else if($('.page-top h1').length)
4140					$('<div class="print-link" title="'+arNextOptions["THEME"]["EXPRESSION_FOR_PRINT_PAGE"]+'"><i class="svg svg-print"></i></div>').insertBefore($('.page-top h1'));
4141				// else
4142					// $('footer .print-block').html('<div class="print-link"><i class="svg svg-print"><svg id="Print.svg" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path class="cls-1" d="M1553,287h-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,1553,287Zm-8,1h4v-4h-4v4Zm4-12h-4v2h4v-2Zm4,4h-12v5h2v-3h8v3h2v-5Z" transform="translate(-1539 -274)"/></svg></i></div>');
4143			},150);
4144		}
4145	}
4146
4147	$(document).on('click', '.print-link', function(){
4148		window.print();
4149	})
4150
4151	$('.head-block .item-link').on('click', function(){
4152		var _this = $(this);
4153		_this.siblings().removeClass('active');
4154		_this.addClass('active');
4155	})
4156
4157	$('table.table').each(function(){
4158		var _this = $(this),
4159			first_td = _this.find('thead tr th');
4160		if(!first_td.length)
4161			first_td = _this.find('thead tr td');
4162		if(first_td.length)
4163		{
4164			var j = 0;
4165			_this.find('tbody tr td').each(function(i){
4166				if(j > first_td.length-1)
4167					j = 0;
4168				$('<div class="th-mobile">'+first_td[j].textContent+'</div>').appendTo($(this));
4169				j++;
4170			})
4171		}
4172	})
4173
4174	if(window.matchMedia('(min-width: 768px)').matches)
4175		$('.wrapper_middle_menu.wrap_menu').removeClass('mobile');
4176
4177
4178	if(window.matchMedia('(max-width: 767px)').matches)
4179		$('.wrapper_middle_menu.wrap_menu').addClass('mobile');
4180
4181	$('.menu_top_block .v_bottom > a').on('click', function(e){
4182		if($(e.target).hasClass('toggle_block'))
4183			e.preventDefault();
4184	})
4185	$('.menu_top_block .v_bottom > a .toggle_block').on('click', function(e){
4186		$(this).closest('.v_bottom').toggleClass('opened');
4187		$(this).closest('.v_bottom').find('>.dropdown').slideToggle()
4188	})
4189
4190	$(document).on('click', '.show_props', function(){
4191		$(this).prev('.props_list_wrapp').stop().slideToggle(333);
4192		$(this).find('.char_title').toggleClass('opened');
4193	});
4194
4195	$('.see_more').on('click', function(e) {
4196		e.preventDefault();
4197		var see_more = ($(this).is('.see_more') ? $(this) : $(this).parents('.see_more').first());
4198		var see_moreText = (see_more.find('> a').length ? see_more.find('> a') : see_more);
4199		var see_moreHiden = see_more.parent().find('> .d');
4200		if(see_more.hasClass('open')){
4201			see_moreText.text(BX.message('CATALOG_VIEW_MORE'));
4202			see_more.removeClass('open');
4203			see_moreHiden.hide();
4204		}
4205		else{
4206			see_moreText.text(BX.message('CATALOG_VIEW_LESS'));
4207			see_more.addClass('open');
4208			see_moreHiden.show();
4209		}
4210		return false;
4211	});
4212
4213	$('.button.faq_button').click(function(e){
4214		e.preventDefault();
4215		$(this).toggleClass('opened');
4216		$('.faq_ask .form').slideToggle();
4217	});
4218
4219	$('.staff.list .staff_section .staff_section_title a').click(function(e) {
4220		e.preventDefault();
4221		$(this).parents('.staff_section').toggleClass('opened');
4222		$(this).parents('.staff_section').find('.staff_section_items').stop().slideToggle(600);
4223		$(this).parents('.staff_section_title').find('.opener_icon').toggleClass('opened');
4224	});
4225
4226	$('.jobs_wrapp .item .name').click(function(e) {
4227		$(this).closest('.item').toggleClass('opened');
4228		$(this).closest('.item').find('.description_wrapp').stop().slideToggle(600);
4229		$(this).closest('.item').find('.opener_icon').toggleClass('opened');
4230	});
4231
4232	$('.faq.list .item .q a').on('click', function(e){
4233		e.preventDefault();
4234		$(this).parents('.item').toggleClass('opened');
4235		$(this).parents('.item').find('.a').stop().slideToggle();
4236		$(this).parents('.item').find('.q .opener_icon').toggleClass('opened');
4237	});
4238
4239	$('.opener_icon').click(function(e) {
4240		e.preventDefault();
4241		$(this).parent().find('a').trigger('click');
4242	});
4243
4244	$('.dotdot').dotdotdot();
4245
4246	$('.more_block span').on('click', function() {
4247		var content_offset=$('.catalog_detail .tabs_section').offset();
4248		$('html, body').animate({scrollTop: content_offset.top-43}, 400);
4249	});
4250
4251	$(document).on("click", ".counter_block:not(.basket) .plus", function(){
4252		if(!$(this).parents('.basket_wrapp').length){
4253			if($(this).parent().data("offers")!="Y"){
4254				var isDetailSKU2 = $(this).parents('.counter_block_wr').length;
4255					input = $(this).parents(".counter_block").find("input[type=text]")
4256					tmp_ratio = !isDetailSKU2 ? $(this).parents(".counter_wrapp").find(".to-cart").data('ratio') : $(this).parents('tr').first().find("td.buy .to-cart").data('ratio'),
4257					isDblQuantity = !isDetailSKU2 ? $(this).parents(".counter_wrapp").find(".to-cart").data('float_ratio') : $(this).parents('tr').first().find("td.buy .to-cart").data('float_ratio'),
4258					ratio=( isDblQuantity ? parseFloat(tmp_ratio) : parseInt(tmp_ratio, 10)),
4259					max_value='';
4260					currentValue = input.val();
4261
4262
4263				if(isDblQuantity)
4264					ratio = Math.round(ratio*arNextOptions.JS_ITEM_CLICK.precisionFactor)/arNextOptions.JS_ITEM_CLICK.precisionFactor;
4265
4266				curValue = (isDblQuantity ? parseFloat(currentValue) : parseInt(currentValue, 10));
4267
4268				curValue += ratio;
4269				if (isDblQuantity){
4270					curValue = Math.round(curValue*arNextOptions.JS_ITEM_CLICK.precisionFactor)/arNextOptions.JS_ITEM_CLICK.precisionFactor;
4271				}
4272				if(parseFloat($(this).data('max'))>0){
4273					if(input.val() < $(this).data('max')){
4274						if(curValue<=$(this).data('max'))
4275							input.val(curValue);
4276
4277						input.change();
4278					}
4279				}else{
4280					input.val(curValue);
4281					input.change();
4282				}
4283			}
4284		}
4285	});
4286	$(document).on("click", ".counter_block:not(.basket) .minus", function(){
4287		if(!$(this).parents('.basket_wrapp').length){
4288			if($(this).parent().data("offers")!="Y"){
4289				var isDetailSKU2 = $(this).parents('.counter_block_wr').length;
4290					input = $(this).parents(".counter_block").find("input[type=text]")
4291					tmp_ratio = !isDetailSKU2 ? $(this).parents(".counter_wrapp").find(".to-cart").data('ratio') : $(this).parents('tr').first().find("td.buy .to-cart").data('ratio'),
4292					isDblQuantity = !isDetailSKU2 ? $(this).parents(".counter_wrapp").find(".to-cart").data('float_ratio') : $(this).parents('tr').first().find("td.buy .to-cart").data('float_ratio'),
4293					ratio=( isDblQuantity ? parseFloat(tmp_ratio) : parseInt(tmp_ratio, 10)),
4294					max_value='';
4295					currentValue = input.val();
4296
4297				if(isDblQuantity)
4298					ratio = Math.round(ratio*arNextOptions.JS_ITEM_CLICK.precisionFactor)/arNextOptions.JS_ITEM_CLICK.precisionFactor;
4299
4300				curValue = (isDblQuantity ? parseFloat(currentValue) : parseInt(currentValue, 10));
4301
4302				curValue -= ratio;
4303				if (isDblQuantity){
4304					curValue = Math.round(curValue*arNextOptions.JS_ITEM_CLICK.precisionFactor)/arNextOptions.JS_ITEM_CLICK.precisionFactor;
4305				}
4306
4307				if(parseFloat($(this).parents(".counter_block").find(".plus").data('max'))>0){
4308					if(currentValue > ratio){
4309						if(curValue<ratio){
4310							input.val(ratio);
4311						}else{
4312							input.val(curValue);
4313						}
4314						input.change();
4315					}
4316				}else{
4317					if(curValue > ratio){
4318						input.val(curValue);
4319					}else{
4320						if(ratio){
4321							input.val(ratio);
4322						}else if(currentValue > 1){
4323							input.val(curValue);
4324						}
4325					}
4326					input.change();
4327				}
4328			}
4329		}
4330	});
4331
4332	$('.counter_block input[type=text]').numeric({allow:"."});
4333	$('.counter_block input[type=text]').on('focus', function(){
4334		$(this).addClass('focus');
4335	})
4336	$('.counter_block input[type=text]').on('blur', function(){
4337		$(this).removeClass('focus');
4338	})
4339	$(document).on("change", ".counter_block input[type=text]", function(e){
4340		if(!$(this).parents('.basket_wrapp').length){
4341			var val = $(this).val(),
4342				tmp_ratio = $(this).parents(".counter_wrapp").find(".to-cart").data('ratio') ? $(this).parents(".counter_wrapp").find(".to-cart").data('ratio') : $(this).parents('tr').first().find("td.buy .to-cart").data('ratio'),
4343				isDblQuantity = $(this).parents(".counter_wrapp").find(".to-cart").data('float_ratio') ? $(this).parents(".counter_wrapp").find(".to-cart").data('float_ratio') : $(this).parents('tr').first().find("td.buy .to-cart").data('float_ratio'),
4344				ratio=( isDblQuantity ? parseFloat(tmp_ratio) : parseInt(tmp_ratio, 10)),
4345				diff = val % ratio;
4346
4347			if(isDblQuantity)
4348			{
4349				ratio = Math.round(ratio*arNextOptions.JS_ITEM_CLICK.precisionFactor)/arNextOptions.JS_ITEM_CLICK.precisionFactor;
4350				if(Math.round(diff*arNextOptions.JS_ITEM_CLICK.precisionFactor)/arNextOptions.JS_ITEM_CLICK.precisionFactor == ratio)
4351					diff = 0;
4352			}
4353
4354			if($(this).hasClass('focus'))
4355			{
4356				intCount = Math.round(
4357					Math.round(val * arNextOptions.JS_ITEM_CLICK.precisionFactor / ratio) / arNextOptions.JS_ITEM_CLICK.precisionFactor
4358				) || 1;
4359				val = (intCount <= 1 ? ratio : intCount * ratio);
4360				// val -= diff;
4361				val = Math.round(val*arNextOptions.JS_ITEM_CLICK.precisionFactor)/arNextOptions.JS_ITEM_CLICK.precisionFactor;
4362			}
4363
4364			if(parseFloat($(this).parents(".counter_block").find(".plus").data('max'))>0){
4365				if(val>parseFloat($(this).parents(".counter_block").find(".plus").data('max'))){
4366					val=parseFloat($(this).parents(".counter_block").find(".plus").data('max'));
4367					// val -= (val % ratio);
4368				}
4369			}
4370			if(val<ratio){
4371				val=ratio;
4372			}else if(!parseFloat(val)){
4373				val=1;
4374			}
4375
4376			$(this).parents('.counter_block').parent().parent().find('.to-cart').attr('data-quantity', val);
4377			$(this).parents('.counter_block').parent().parent().find('.one_click').attr('data-quantity', val);
4378			$(this).val(val);
4379
4380			var eventdata = {type: 'change', params: {id: $(this), value: val}};
4381			BX.onCustomEvent('onCounterProductAction', [eventdata]);
4382		}
4383	});
4384
4385	BX.addCustomEvent('onCounterProductAction', function(eventdata) {
4386		if(typeof eventdata != 'object'){
4387			eventdata = {type: 'undefined'};
4388		}
4389		try{
4390			if(typeof eventdata.type != 'undefined'){
4391				if(!eventdata.params.id.closest('.gifts').length) // no gift
4392				{
4393					var obProduct = eventdata.params.id.data('product');
4394
4395					if(eventdata.params.id.closest('.has_offer_prop').length) // type1 for offers in element list
4396					{
4397						if(typeof window['obSkuQuantys'] === 'undefined')
4398							window["obSkuQuantys"] = {};
4399
4400						// if(typeof window['obOffers'] === 'undefined')
4401							window["obSkuQuantys"][eventdata.params.id.closest('.offer_buy_block').find('.to-cart').data('item')] = eventdata.params.value;
4402					}
4403					if(typeof window[obProduct] == 'object')
4404					{
4405						if(obProduct == "obOffers")
4406							setPriceAction('', '', 'Y');
4407						else
4408							window[obProduct].setPriceAction('Y');
4409					}
4410					else if(eventdata.params.id.length)
4411					{
4412						if(eventdata.params.id.closest('.main_item_wrapper').length && arNextOptions['THEME']['SHOW_TOTAL_SUMM'] == 'Y')
4413						{
4414							setPriceItem(eventdata.params.id.closest('.main_item_wrapper'), eventdata.params.value);
4415						}
4416					}
4417					BX.onCustomEvent('onCounterProductActionResize');
4418				}
4419			}
4420		}
4421		catch(e){
4422			console.error(e)
4423		}
4424	});
4425
4426	/*slide cart*/
4427	$(document).on('mouseenter', '#basket_line .basket_normal:not(.empty_cart):not(.bcart) .basket_block ', function() {
4428		$(this).closest('.basket_normal').find('.popup').addClass('block');
4429		$(this).closest('.basket_normal').find('.basket_popup_wrapp').stop(true,true).slideDown(150);
4430	});
4431	$(document).on('mouseleave', '#basket_line .basket_normal .basket_block ', function() {
4432		var th=$(this);
4433		$(this).closest('.basket_normal').find('.basket_popup_wrapp').stop(true,true).slideUp(150, function(){
4434			th.closest('.basket_normal').find('.popup').removeClass('block');
4435		});
4436	});
4437
4438	$(document).on('click', '.popup_button_basket', function(){
4439		var th=$(".to-cart[data-item="+$(this).data("item")+"]");
4440
4441		var val = th.attr('data-quantity');
4442
4443		if(!val) $val = 1;
4444
4445		var tmp_props=th.data("props"),
4446			props='',
4447			part_props='',
4448			add_props='N',
4449			fill_prop={},
4450			iblockid = th.data('iblockid'),
4451			offer = th.data('offers'),
4452			rid='',
4453			basket_props='',
4454			item = th.attr('data-item');
4455
4456		if(offer!="Y"){
4457			offer = "N";
4458		}else{
4459			basket_props=th.closest('.prices_tab').find('.bx_sku_props input').val();
4460		}
4461		if(tmp_props){
4462			props=tmp_props.split(";");
4463		}
4464		if(th.data("part_props")){
4465			part_props=th.data("part_props");
4466		}
4467		if(th.data("add_props")){
4468			add_props=th.data("add_props");
4469		}
4470		if($('.rid_item').length){
4471			rid=$('.rid_item').data('rid');
4472		}else if(th.data('rid')){
4473			rid=th.data('rid');
4474		}
4475
4476		fill_prop=fillBasketPropsExt(th, 'prop', 'bx_ajax_text');
4477
4478		fill_prop.quantity=val;
4479		fill_prop.add_item='Y';
4480		fill_prop.rid=rid;
4481		fill_prop.offers=offer;
4482		fill_prop.iblockID=iblockid;
4483		fill_prop.part_props=part_props;
4484		fill_prop.add_props=add_props;
4485		fill_prop.props=JSON.stringify(props);
4486		fill_prop.item=item;
4487		fill_prop.basket_props=basket_props;
4488
4489		$.ajax({
4490			type:"POST",
4491			url:arNextOptions['SITE_DIR']+"ajax/item.php",
4492			data:fill_prop,
4493			dataType:"json",
4494			success:function(data){
4495				$('.basket_error_frame').jqmHide();
4496				if("STATUS" in data){
4497					getActualBasket(fill_prop.iblockID);
4498					if(data.STATUS === 'OK'){
4499						th.hide();
4500						th.closest('.counter_wrapp').find('.counter_block').hide();
4501						th.parents('tr').find('.counter_block_wr .counter_block').hide();
4502						th.closest('.button_block').addClass('wide');
4503						th.parent().find('.in-cart').show();
4504
4505						addBasketCounter(item);
4506						$('.wish_item[data-item='+item+']').removeClass("added");
4507						$('.wish_item[data-item='+item+']').find(".value").show();
4508						$('.wish_item[data-item='+item+']').find(".value.added").hide();
4509
4510						if($("#ajax_basket").length)
4511							reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'Y');
4512
4513						if($("#basket_line .basket_fly").length){
4514							if(th.closest('.fast_view_frame').length || window.matchMedia('(max-width: 767px)').matches)
4515								basketFly('open', 'N');
4516							else
4517								basketFly('open');
4518						}
4519
4520					}else{
4521						showBasketError(BX.message(data.MESSAGE));
4522					}
4523				}else{
4524					showBasketError(BX.message("CATALOG_PARTIAL_BASKET_PROPERTIES_ERROR"));
4525				}
4526			}
4527		});
4528	})
4529
4530	$(document).on( 'click', '.to-cart:not(.read_more)', function(e){
4531		e.preventDefault();
4532		var th=$(this);
4533		if(!th.hasClass('clicked'))
4534		{
4535			th.addClass('clicked');
4536			var val = $(this).attr('data-quantity');
4537
4538
4539			var tmp_props=$(this).data("props"),
4540				props='',
4541				part_props='',
4542				add_props='N',
4543				fill_prop={},
4544				iblockid = $(this).data('iblockid'),
4545				offer = $(this).data('offers'),
4546				rid='',
4547				basket_props='',
4548				item = $(this).attr('data-item');
4549			if(th.closest('.but-cell').length)
4550			{
4551				if($('.counter_block[data-item="'+item+'"]').length)
4552					val = $('.counter_block[data-item="'+item+'"] input').val();
4553			}
4554
4555			if(!val)
4556				val = 1;
4557			if(offer!="Y"){
4558				offer = "N";
4559			}else{
4560				basket_props=$(this).closest('.prices_tab').find('.bx_sku_props input').val();
4561			}
4562			if(tmp_props){
4563				props=tmp_props.split(";");
4564			}
4565			if($(this).data("part_props")){
4566				part_props=$(this).data("part_props");
4567			}
4568			if($(this).data("add_props")){
4569				add_props=$(this).data("add_props");
4570			}
4571			if($('.rid_item').length){
4572				rid=$('.rid_item').data('rid');
4573			}else if($(this).data('rid')){
4574				rid=$(this).data('rid');
4575			}
4576
4577			fill_prop=fillBasketPropsExt(th, 'prop', th.data('bakset_div'));
4578
4579
4580			fill_prop.quantity=val;
4581			fill_prop.add_item='Y';
4582			fill_prop.rid=rid;
4583			fill_prop.offers=offer;
4584			fill_prop.iblockID=iblockid;
4585			fill_prop.part_props=part_props;
4586			fill_prop.add_props=add_props;
4587			fill_prop.props=JSON.stringify(props);
4588			fill_prop.item=item;
4589			fill_prop.basket_props=basket_props;
4590
4591			if(th.data("empty_props")=="N"){
4592				showBasketError($("#"+th.data("bakset_div")).html(), BX.message("ERROR_BASKET_PROP_TITLE"), "Y", th);
4593
4594				var eventdata = {action:'loadForm'};
4595				BX.onCustomEvent('onCompleteAction', [eventdata, th[0]]);
4596			}else{
4597				$.ajax({
4598					type:"POST",
4599					url:arNextOptions['SITE_DIR']+"ajax/item.php",
4600					data:fill_prop,
4601					dataType:"json",
4602					success:function(data){
4603						let valueBasket = document.querySelector('.cart-value')
4604						valueBasket.textContent = Number(valueBasket.textContent)+1
4605
4606						getActualBasket(fill_prop.iblockID);
4607						var eventdata = {action:'loadForm'};
4608						BX.onCustomEvent('onCompleteAction', [eventdata, th[0]]);
4609						arStatusBasketAspro = {};
4610
4611						if(data !==null){
4612							if("STATUS" in data){
4613								if(data.MESSAGE_EXT===null)
4614									data.MESSAGE_EXT='';
4615								if(data.STATUS === 'OK'){
4616
4617									//показать переключалку количества
4618									console.log('показать переключалку количества')
4619									$('.to-cart[data-item='+item+']').hide()
4620									$('.counter[data-item='+item+']').show().css('display', 'flex')
4621
4622									/*const wrap = $('.to-cart[data-item='+item+']').closest(".counter_wrapp")
4623									wrap.find(".counter_block").show()
4624									wrap.find(".button_block").hide()*/
4625
4626									// th.hide();
4627									// $('.to-cart[data-item='+item+']').hide();
4628									// $('.to-cart[data-item='+item+']').closest('.counter_wrapp').find('.counter_block').hide();
4629									// $('.to-cart[data-item='+item+']').parents('tr').find('.counter_block_wr .counter_block').hide();
4630									// $('.to-cart[data-item='+item+']').closest('.button_block').addClass('wide');
4631									// // th.parent().find('.in-cart').show();
4632									// $('.in-cart[data-item='+item+']').show();
4633									//
4634									// addBasketCounter(item);
4635									// $('.wish_item[data-item='+item+']').removeClass("added");
4636									// $('.wish_item[data-item='+item+']').find(".value").show();
4637									// $('.wish_item[data-item='+item+']').find(".value.added").hide();
4638
4639									if($("#ajax_basket").length)
4640										reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'Y');
4641
4642									if($("#basket_line .basket_fly").length){
4643										if(th.closest('.fast_view_frame').length || window.matchMedia('(max-width: 767px)').matches  || $("#basket_line .basket_fly.loaded").length)
4644											basketFly('open', 'N');
4645										else
4646											basketFly('open');
4647									}
4648
4649								}else{
4650									showBasketError(BX.message(data.MESSAGE)+' <br/>'+data.MESSAGE_EXT);
4651								}
4652							}else{
4653								showBasketError(BX.message("CATALOG_PARTIAL_BASKET_PROPERTIES_ERROR"));
4654							}
4655						}else{
4656							th.hide();
4657							$('.to-cart[data-item='+item+']').hide();
4658							$('.to-cart[data-item='+item+']').closest('.counter_wrapp').find('.counter_block').hide();
4659							$('.to-cart[data-item='+item+']').parents('tr').find('.counter_block_wr .counter_block').hide();
4660							$('.to-cart[data-item='+item+']').closest('.button_block').addClass('wide');
4661							// th.parent().find('.in-cart').show();
4662							$('.in-cart[data-item='+item+']').show();
4663
4664							addBasketCounter(item);
4665							$('.wish_item[data-item='+item+']').removeClass("added");
4666							$('.wish_item[data-item='+item+']').find(".value").show();
4667							$('.wish_item[data-item='+item+']').find(".value.added").hide();
4668
4669							if($("#ajax_basket").length)
4670								reloadTopBasket('add', $('#ajax_basket'), 200, 5000, 'Y');
4671
4672							if($("#basket_line .basket_fly").length)
4673							{
4674								if(th.closest('.fast_view_frame').length || window.matchMedia('(max-width: 767px)').matches  || $("#basket_line .basket_fly.loaded").length)
4675									basketFly('open', 'N');
4676								else
4677									basketFly('open');
4678							}
4679						}
4680					}
4681				});
4682			}
4683		}
4684
4685	})
4686
4687	$(document).on('click', '.to-subscribe', function(e){
4688		e.preventDefault();
4689		var th=$(this);
4690		if(!th.hasClass('clicked'))
4691		{
4692			th.addClass('clicked');
4693			if($(this).is('.auth'))
4694			{
4695				if($(this).hasClass('nsubsc'))
4696				{
4697					$(this).jqmEx();
4698					$(this).trigger('click');
4699				}
4700				else
4701				{
4702					location.href=arNextOptions['SITE_DIR']+'auth/?backurl='+location.pathname;
4703				}
4704			}
4705			else
4706			{
4707				var item = $(this).attr('data-item'),
4708					iblockid = $(this).attr('data-iblockid');
4709				// $(this).hide();
4710				$('.to-subscribe[data-item='+item+']').hide();
4711				$('.to-subscribe[data-item='+item+']').parent().find('.in-subscribe').show();
4712				$.get(arNextOptions['SITE_DIR'] + 'ajax/item.php?item=' + item + '&subscribe_item=Y',
4713					$.proxy(function(data){
4714						arStatusBasketAspro = {};
4715						getActualBasket(iblockid);
4716					})
4717				);
4718				th.removeClass('clicked');
4719			}
4720		}
4721	})
4722
4723	$(document).on('click', '.in-subscribe', function(e){
4724		e.preventDefault();
4725		var item = $(this).attr('data-item'),
4726			iblockid = $(this).attr('data-iblockid');;
4727		// $(this).hide();
4728		$('.in-subscribe[data-item='+item+']').hide();
4729		$('.in-subscribe[data-item='+item+']').parent().find('.to-subscribe').removeClass('clicked');
4730		$('.in-subscribe[data-item='+item+']').parent().find('.to-subscribe').show();
4731		$.get(arNextOptions['SITE_DIR'] + 'ajax/item.php?item=' + item + '&subscribe_item=Y',
4732			$.proxy(function(data){
4733				getActualBasket(iblockid);
4734				arStatusBasketAspro = {};
4735			})
4736		);
4737	})
4738
4739	$(document).on('click', '.wish_item', function(e){
4740		e.preventDefault();
4741		var val = $(this).attr('data-quantity'),
4742			_this = $(this),
4743			offer = $(this).data('offers'),
4744			iblockid = $(this).data('iblock'),
4745			tmp_props=$(this).data("props"),
4746			props='',
4747			item = $(this).attr('data-item');
4748			item2 = $(this).attr('data-item');
4749
4750		if(!_this.hasClass('clicked'))
4751		{
4752			_this.addClass('clicked');
4753			if(!val) $val = 1;
4754			if(offer!="Y") offer = "N";
4755			if(tmp_props){
4756				props=tmp_props.split(";");
4757			}
4758			if(!$(this).hasClass('text')){
4759				/*if($(this).hasClass('added')){
4760					$(this).hide();
4761					$(this).closest('.wish_item_button').find('.to').show();
4762
4763					$('.like_icons').each(function(){
4764						if($(this).find('.wish_item.text[data-item="'+item+'"]').length){
4765							$(this).find('.wish_item.text[data-item="'+item+'"]').removeClass('added');
4766							$(this).find('.wish_item.text[data-item="'+item+'"]').find('.value').show();
4767							$(this).find('.wish_item.text[data-item="'+item+'"]').find('.value.added').hide();
4768						}
4769						if($(this).find('.wish_item_button').length){
4770							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').removeClass('added');
4771							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value').show();
4772							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value.added').hide();
4773						}
4774					})
4775				}*/
4776				/*else{
4777					$(this).hide();
4778					$(this).closest('.wish_item_button').find('.in').addClass('added').show();
4779
4780					$('.like_icons').each(function(){
4781						if($(this).find('.wish_item.text[data-item="'+item+'"]').length){
4782							$(this).find('.wish_item.text[data-item="'+item+'"]').addClass('added');
4783							$(this).find('.wish_item.text[data-item="'+item+'"]').find('.value').hide();
4784							$(this).find('.wish_item.text[data-item="'+item+'"]').find('.value.added').css({"display":"block"})
4785						}
4786						if($(this).find('.wish_item_button').length){
4787							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').addClass('added');
4788							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value').hide();
4789							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value.added').show();
4790						}
4791					})
4792				}*/
4793			}else{
4794				/*if(!$(this).hasClass('added')){
4795					$('.wish_item[data-item=' + item + ']').addClass('added');
4796					$('.wish_item[data-item=' + item + ']').find('.value').hide();
4797					$('.wish_item[data-item=' + item + ']').find('.value.added').css('display','block');
4798
4799					$('.like_icons').each(function(){
4800						if($(this).find('.wish_item_button').length){
4801							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').addClass('added');
4802							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value').hide();
4803							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value.added').show();
4804						}
4805					})
4806				}else{
4807					$('.wish_item[data-item=' + item + ']').removeClass('added');
4808					$('.wish_item[data-item=' + item + ']').find('.value').show();
4809					$('.wish_item[data-item=' + item + ']').find('.value.added').hide();
4810
4811					$('.like_icons').each(function(){
4812						if($(this).find('.wish_item_button').length){
4813							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').removeClass('added');
4814							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value').show();
4815							$(this).find('.wish_item_button').find('.wish_item[data-item="'+item+'"]').find('.value.added').hide();
4816						}
4817					})
4818				}*/
4819			}
4820
4821		/*	$('.in-cart[data-item=' + item + ']').hide();
4822			$('.to-cart[data-item=' + item + ']').removeClass('clicked');
4823			$('.to-cart[data-item=' + item + ']').parent().removeClass('wide');
4824			if(!$('.counter_block[data-item=' + item + ']').closest('.counter_wrapp').find('.to-order').length)
4825			{
4826				$('.to-cart[data-item=' + item + ']').show();
4827				$('.counter_block[data-item=' + item + ']').show();
4828			}*/
4829			if(!$(this).closest('.module-cart').size()){
4830				$.ajax({
4831					type:"GET",
4832					url:arNextOptions['SITE_DIR']+"ajax/item.php",
4833					data:"item="+item2+"&quantity="+val+"&wish_item=Y"+"&offers="+offer+"&iblockID="+iblockid+"&props="+JSON.stringify(props),
4834					dataType:"json",
4835					success: function(data){
4836
4837						if($('.wish_item[data-item=' + item + ']').hasClass('in-favorite')){
4838							$('.wish_item[data-item=' + item + ']').removeClass('in-favorite');
4839						}else{
4840							$('.wish_item[data-item=' + item + ']').addClass('in-favorite');
4841						}
4842					
4843						getActualBasket(iblockid);
4844						arStatusBasketAspro = {};
4845						if(data !==null){
4846							if(data.MESSAGE_EXT===null)
4847								data.MESSAGE_EXT='';
4848							if("STATUS" in data){
4849								if(data.STATUS === 'OK'){
4850									if(arNextOptions['COUNTERS']['USE_BASKET_GOALS'] !== 'N'){
4851										var eventdata = {goal: 'goal_wish_add', params: {id: item2}};
4852										BX.onCustomEvent('onCounterGoals', [eventdata]);
4853									}
4854									if($("#ajax_basket").length)
4855										reloadTopBasket('wish', $('#ajax_basket'), 200, 5000, 'N');
4856
4857									if($("#basket_line .basket_fly").length){
4858										if(_this.closest('.fast_view_frame').length || window.matchMedia('(max-width: 767px)').matches || $("#basket_line .basket_fly.loaded").length)
4859											basketFly('wish', 'N');
4860										else
4861											basketFly('wish');
4862									}
4863								}else{
4864									showBasketError(BX.message(data.MESSAGE)+' <br/>'+data.MESSAGE_EXT, BX.message("ERROR_ADD_DELAY_ITEM"));
4865								}
4866							}else{
4867								showBasketError(BX.message(data.MESSAGE)+' <br/>'+data.MESSAGE_EXT, BX.message("ERROR_ADD_DELAY_ITEM"));
4868							}
4869						}else{
4870							if($("#ajax_basket").length)
4871								reloadTopBasket('wish', $('#ajax_basket'), 200, 5000, 'N');
4872
4873							if($("#basket_line .basket_fly").length){
4874								if(_this.closest('.fast_view_frame').length || window.matchMedia('(max-width: 767px)').matches || $("#basket_line .basket_fly.loaded").length)
4875									basketFly('wish', 'N');
4876								else
4877									basketFly('wish');
4878							}
4879						}
4880					_this.removeClass('clicked');
4881					}
4882				});
4883			}
4884		}
4885
4886	})
4887
4888	$(document).on('click', '.item_main_info .item_slider .flex-direction-nav li span', function(e){
4889		if($('.inner_slider .slides_block').length)
4890		{
4891			if($(this).parent().hasClass('flex-nav-next'))
4892				$('.inner_slider .slides_block li.current').next().click();
4893			else
4894				$('.inner_slider .slides_block li.current').prev().click();
4895		}
4896	})
4897
4898	$(document).on('click', '.compare_item', function(e){
4899		e.preventDefault();
4900		var item = $(this).attr('data-item');
4901		var iblockID = $(this).attr('data-iblock');
4902		var th=$(this);
4903		if(!th.hasClass('clicked'))
4904		{
4905			th.addClass('clicked');
4906			if(!$(this).hasClass('text')){
4907				if($(this).hasClass('added')){
4908					$(this).hide();
4909					$(this).closest('.compare_item_button').find('.to').show();
4910
4911					/*sync other button*/
4912					$('.like_icons').each(function(){
4913						if($(this).find('.compare_item.text[data-item="'+item+'"]').length){
4914							$(this).find('.compare_item.text[data-item="'+item+'"]').removeClass('added');
4915							$(this).find('.compare_item.text[data-item="'+item+'"]').find('.value').show();
4916							$(this).find('.compare_item.text[data-item="'+item+'"]').find('.value.added').hide();
4917						}
4918						if($(this).find('.compare_item_button').length){
4919							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').removeClass('added');
4920							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value').show();
4921							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value.added').hide();
4922						}
4923					})
4924				}
4925				else{
4926					$(this).hide();
4927					$(this).closest('.compare_item_button').find('.in').show();
4928
4929					/*sync other button*/
4930					$('.like_icons').each(function(){
4931						if($(this).find('.compare_item.text[data-item="'+item+'"]').length){
4932							$(this).find('.compare_item.text[data-item="'+item+'"]').addClass('added');;
4933							$(this).find('.compare_item.text[data-item="'+item+'"]').find('.value').hide();
4934							$(this).find('.compare_item.text[data-item="'+item+'"]').find('.value.added').css({"display":"block"});
4935						}
4936						if($(this).find('.compare_item_button').length){
4937							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').addClass('added');
4938							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value.added').show();
4939							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value').hide();
4940						}
4941					})
4942				}
4943			}else{
4944				if(!$(this).hasClass('added')){
4945					$('.compare_item[data-item=' + item + ']').addClass('added');
4946					$('.compare_item[data-item=' + item + ']').find('.value').hide();
4947					$('.compare_item[data-item=' + item + ']').find('.value.added').css('display','block');
4948
4949					/*sync other button*/
4950					$('.like_icons').each(function(){
4951						if($(this).find('.compare_item_button').length){
4952							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').addClass('added');
4953							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value.added').show();
4954							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value').hide();
4955						}
4956					})
4957				}else{
4958					$('.compare_item[data-item=' + item + ']').removeClass('added');
4959					$('.compare_item[data-item=' + item + ']').find('.value').show();
4960					$('.compare_item[data-item=' + item + ']').find('.value.added').hide();
4961
4962					/*sync other button*/
4963					$('.like_icons').each(function(){
4964						if($(this).find('.compare_item_button').length){
4965							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').removeClass('added');
4966							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value').show();
4967							$(this).find('.compare_item_button').find('.compare_item[data-item="'+item+'"]').find('.value.added').hide();
4968						}
4969					})
4970				}
4971			}
4972
4973			$.get(arNextOptions['SITE_DIR'] + 'ajax/item.php?item=' + item + '&compare_item=Y&iblock_id=' + iblockID,
4974				$.proxy(function(data){
4975					getActualBasket(iblockID, 'Compare');
4976					arStatusBasketAspro = {};
4977					if($('#compare_fly').length){
4978						jsAjaxUtil.InsertDataToNode(arNextOptions['SITE_DIR'] + 'ajax/show_compare_preview_fly.php', 'compare_fly', false);
4979					}
4980				th.removeClass('clicked');
4981				})
4982			);
4983		}
4984
4985	});
4986
4987	$('.fancy').fancybox({
4988		openEffect  : 'fade',
4989		closeEffect : 'fade',
4990		nextEffect : 'fade',
4991		prevEffect : 'fade',
4992		tpl:{
4993			closeBtn : '<a title="'+BX.message('FANCY_CLOSE')+'" class="fancybox-item fancybox-close" href="javascript:;"></a>',
4994			next     : '<a title="'+BX.message('FANCY_NEXT')+'" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>',
4995			prev     : '<a title="'+BX.message('FANCY_PREV')+'" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>'
4996		},
4997	});
4998	$('.fancybox').fancybox();
4999
5000	$(".video_link").fancybox({
5001			type: "iframe",
5002            maxWidth    : 800,
5003            maxHeight   : 600,
5004            fitToView   : false,
5005            width       : '70%',
5006            height      : '70%',
5007            autoSize    : false,
5008            closeClick  : false,
5009        });
5010
5011	$('.tabs>li').on('click', function(){
5012		var parent = $(this).parent();
5013		if(!$(this).hasClass('active')){
5014			var sliderIndex = $(this).index(),
5015				curLiNav=$(this).closest('.top_blocks').find('.slider_navigation').find('>li:eq(' + sliderIndex + ')'),
5016				curLi=$(this).closest('.top_blocks').siblings('.tabs_content').find('>li:eq(' + sliderIndex + ')');
5017			$(this).addClass('active').addClass('cur').siblings().removeClass('active').removeClass('cur');
5018			curLi.addClass('cur').siblings().removeClass('cur');
5019			curLiNav.addClass('cur').siblings().removeClass('cur');
5020
5021			if(parent.hasClass('ajax')) // front tabs
5022			{
5023				if(!$(this).hasClass('clicked'))
5024				{
5025					$.ajax({
5026						url: arNextOptions['SITE_DIR'] + 'include/mainpage/comp_catalog_ajax_custom.php',
5027						type: 'POST',
5028						data: {AJAX_POST: 'Y', FILTER_HIT_PROP: $(this).data('code'), AJAX_PARAMS: $(this).closest('.tab_slider_wrapp').find('.request-data').data('value'), GLOBAL_FILTER: curLi.data('filter')},
5029					}).success(function(html){
5030						curLi.find('.tabs_slider').html(html);
5031						setTimeout(function(){
5032							curLi.addClass('opacity1');
5033						}, 100);
5034
5035						/*equal height*/
5036						curLi.find('.catalog_block .catalog_item_wrapp .catalog_item .item_info:visible .item-title').sliceHeight({item:'.catalog_item:visible', mobile: true});
5037						curLi.find('.catalog_block .catalog_item_wrapp .catalog_item .item_info:visible').sliceHeight({item:'.catalog_item:visible', mobile: true});
5038						curLi.find('.catalog_block .catalog_item_wrapp .catalog_item:visible').sliceHeight({classNull: '.footer_button', item:'.catalog_item:visible', mobile: true});
5039
5040						initCountdown();
5041					})
5042					$(this).addClass('clicked');
5043				}
5044			}
5045		}
5046	})
5047
5048	/*search click*/
5049	$('.search_block .icon').on('click', function(){
5050		var th=$(this);
5051		if($(this).hasClass('open')){
5052			$(this).closest('.center_block').find('.search_middle_block').removeClass('active');
5053			$(this).removeClass('open');
5054			$(this).closest('.center_block').find('.search_middle_block').find('.noborder').hide();
5055		}else{
5056			setTimeout(function(){
5057				th.closest('.center_block').find('.search_middle_block').find('.noborder').show();
5058			},100);
5059			$(this).closest('.center_block').find('.search_middle_block').addClass('active');
5060			$(this).addClass('open');
5061		}
5062	})
5063	$(document).on('mouseenter', '.display_list .item_wrap', function(){
5064		$(this).prev().addClass('prev');
5065	});
5066	$(document).on('mouseleave', '.display_list .item_wrap', function(){
5067		$(this).prev().removeClass('prev');
5068	});
5069	/*$(document).on('mouseenter', '.catalog_block .item_wrap', function(){
5070		$(this).addClass('shadow_delay');
5071	});
5072	$(document).on('mouseleave', '.catalog_block .item_wrap', function(){
5073		$(this).removeClass('shadow_delay');
5074	});*/
5075	$(document).on('click', '.no_goods .button', function(){
5076		$('.bx_filter .smartfilter .bx_filter_search_reset').trigger('click');
5077	});
5078
5079	var currentPage = 1;
5080
5081	$(document).on('click', '.ajax_load_btn', function(){
5082		var url=$(this).closest('.container').find('.module-pagination .flex-direction-nav .flex-next').attr('href'),
5083			bTabsBlock = false,
5084			th=$(this).find('.more_text_ajax');
5085
5086		if (!th.hasClass('loading')) {
5087			th.addClass('loading');
5088			var objUrl = parseUrlQuery(),
5089				add_url = ''
5090			obGetData = {"ajax_get": "Y", "AJAX_REQUEST": "Y"};
5091
5092			if (th.closest('.goods-block.ajax_load')) {
5093				obGetData.bitrix_include_areas = 'N';
5094			}
5095
5096			/*hit on front*/
5097			if (th.closest('.tab_slider_wrapp.specials').length) {
5098				var curLi = $(this).closest('.tab');
5099				url = th.closest('.tabs_content').data('url');
5100
5101				bTabsBlock = true;
5102				obGetData.AJAX_POST = 'Y';
5103				obGetData.FILTER_HIT_PROP = curLi.data('code');
5104				obGetData.AJAX_PARAMS = $(this).closest('.tab_slider_wrapp').find('.request-data').data('value');
5105				obGetData.GLOBAL_FILTER = curLi.data('filter');
5106
5107				add_url = '?PAGEN_1=' + curLi.find('.nav-inner-wrapper').data('page');
5108			}
5109			/**/
5110
5111			if ('clear_cache' in objUrl) {
5112				if(objUrl.clear_cache == 'Y')
5113					add_url += (add_url.length ? '&' : '?') + 'clear_cache=Y';
5114			}
5115
5116			$.ajax({
5117				url: url+add_url,
5118				data: obGetData,
5119				type: (bTabsBlock ? 'POST' : 'GET'),
5120				success: function(html){
5121					if($('.ajax_load').length)
5122					{
5123						th.removeClass('loading');
5124
5125						/*hit on front*/
5126						if (th.closest('.tab_slider_wrapp.specials').length) {
5127							curLi.find('.catalog_block').append(html);
5128
5129							curLi.find('.catalog_block .catalog_item_wrapp .catalog_item .item_info:visible .item-title').sliceHeight({item:'.catalog_item:visible', mobile: true});
5130							curLi.find('.catalog_block .catalog_item_wrapp .catalog_item .item_info:visible').sliceHeight({item:'.catalog_item:visible', mobile: true});
5131							curLi.find('.catalog_block .catalog_item_wrapp:visible').sliceHeight({classNull: '.footer_button', item:'.catalog_item:visible', mobile: true});
5132
5133							curLi.find('.bottom_nav').html($(html).find('.bottom_nav').html());
5134
5135						} else {
5136							if($('.display_list').length){
5137								$('.display_list').append(html);
5138							}else if($('.block_list').length){
5139								$('.block_list').append(html);
5140								touchItemBlock('.catalog_item a');
5141							}else if($('.module_products_list').length){
5142								$('.module_products_list > tbody').append(html);
5143							}
5144
5145							$('.bottom_nav').html($(html).find('.bottom_nav').html());
5146						}
5147
5148						setStatusButton();
5149						initCountdown();
5150
5151						var eventdata = {action:'ajaxContentLoadedTab'};
5152						BX.onCustomEvent('onAjaxSuccess', [eventdata]);
5153					}
5154					else
5155					{
5156						if($('.banners-small.front').length)
5157						{
5158							$('.banners-small .items.row').append(html);
5159							$('.bottom_nav').html($('.banners-small .items.row .bottom_nav').html());
5160							$('.banners-small .items.row .bottom_nav').remove();
5161						}
5162						else
5163						{
5164							if(th.closest('.item-views').find('.items').length)
5165							{
5166								th.closest('.item-views').find('.items').append(html);
5167							}
5168							else
5169							{
5170								$(html).insertBefore($('.blog .bottom_nav'));
5171							}
5172
5173							$('.bottom_nav').html($('.bottom_nav:hidden').html());
5174							$('.bottom_nav:hidden').remove();
5175						}
5176
5177						var eventdata = {action:'ajaxContentLoaded', content: html};
5178						BX.onCustomEvent('onCompleteAction', [eventdata, th[0]]);
5179
5180						setTimeout(function(){
5181							$('.banners-small .item.normal-block').sliceHeight({resize: false});
5182							if($('.item.slice-item').length)
5183							{
5184								$('.item.slice-item .title').sliceHeight({resize: false});
5185								$('.item.slice-item').sliceHeight({resize: false});
5186							}
5187							th.removeClass('loading');
5188						}, 100);
5189					}
5190				}
5191			})
5192		}
5193	})
5194
5195	// gallery in list
5196	function initGallerySwitchers() {
5197		$(document).on("mouseenter", ".section-gallery-wrapper .section-gallery-wrapper__item", function () {
5198			const _this = $(this);
5199			const index = _this.index();
5200			const $nav_items = _this.closest(".image-list-wrapper").find(".section-gallery-nav .section-gallery-nav__item");
5201
5202			_this.siblings().removeClass("active");
5203			_this.addClass("active");
5204
5205			$nav_items.removeClass("active");
5206			$nav_items.eq(index).addClass("active");
5207		});
5208
5209		$(document).on("mouseleave", ".section-gallery-wrapper", function () {
5210			console.log("mouseleave from gallery");
5211			const _this = $(this);
5212			const $elements = _this.find('.section-gallery-wrapper__item');
5213			const $nav_items = _this.closest(".image-list-wrapper").find(".section-gallery-nav .section-gallery-nav__item");
5214
5215			if ($elements.length) {
5216				$elements.removeClass('active');
5217				$($elements[0]).addClass('active');
5218				$nav_items.removeClass('active');
5219				$($nav_items[0]).addClass('active');
5220			}
5221		});
5222
5223		$(document).on("click", ".section-gallery-nav__item", function () {
5224			console.log("click nav item");
5225			const $this = $(this);
5226			const index = $this.index();
5227			const $wrapper = $this.closest(".image-list-wrapper");
5228			const $galleryItems = $wrapper.find(".section-gallery-wrapper__item");
5229			const $navItems = $wrapper.find(".section-gallery-nav__item");
5230
5231			$galleryItems.removeClass("active");
5232			$($galleryItems[index]).addClass("active");
5233
5234			$navItems.removeClass("active");
5235			$this.addClass("active");
5236		});
5237	}
5238
5239	// Ждём, пока jQuery загрузится
5240	function waitForjQueryAndInit(retries = 10) {
5241		if (typeof jQuery !== "undefined") {
5242			$(document).ready(function () {
5243				initGallerySwitchers();
5244			});
5245		} else if (retries > 0) {
5246			setTimeout(() => waitForjQueryAndInit(retries - 1), 200);
5247		} else {
5248			console.error("jQuery not loaded after waiting");
5249		}
5250	}
5251
5252	waitForjQueryAndInit();
5253
5254	//set cookie for basket link click
5255	$(document).on('click', '.bx_ordercart_order_table_container .control > a, .basket-item-actions-remove, a[data-entity=basket-item-remove-delayed]', function(e){
5256		$.removeCookie('click_basket', {path: '/'});
5257		$.cookie('click_basket', 'Y', {path: '/'});
5258	})
5259
5260	$(document).on('click', '.bx_compare .tabs-head li', function(){
5261		var url=$(this).find('.sortbutton').data('href');
5262		BX.showWait(BX("bx_catalog_compare_block"));
5263		$.ajax({
5264			url: url,
5265			data: {'ajax_action': 'Y'},
5266			success: function(html){
5267				history.pushState(null, null, url);
5268				$('#bx_catalog_compare_block').html(html);
5269				BX.closeWait();
5270			}
5271		})
5272	})
5273	var hoveredTrs;
5274	$(document).on({
5275		mouseover: function(e){
5276			var _ = $(this);
5277			var tbodyIndex = _.closest('tbody').index()+1; //+1 for nth-child
5278			var trIndex = _.index()+1; // +1 for nth-child
5279			hoveredTrs = $(e.delegateTarget).find('.data_table_props')
5280				.children(':nth-child('+tbodyIndex+')')
5281				.children(':nth-child('+trIndex+')').addClass('hovered');
5282		},
5283		mouseleave: function(e){
5284			if(hoveredTrs)
5285				hoveredTrs.removeClass('hovered');
5286		}
5287	}, '.bx_compare .data_table_props tbody>tr');
5288	$(document).on('click', '.fancy_offer', function(e){
5289		e.preventDefault();
5290		var arPict=[], index = 0;
5291		$(this).closest('.item_slider').find('.sliders .slides_block li').each(function(){
5292			var obImg = {};
5293			obImg = {
5294				'title': $(this).find('img').attr('alt'),
5295				'href': $(this).data('big')
5296			}
5297			if($(this).hasClass('current')){
5298				index = $(this).index();
5299			}
5300			arPict.push(obImg);
5301		})
5302		$.fancybox(arPict, {
5303			index: index,
5304			openEffect  : 'fade',
5305			closeEffect : 'fade',
5306			nextEffect : 'fade',
5307			prevEffect : 'fade',
5308			type : 'image',
5309			tpl:{
5310				closeBtn : '<a title="'+BX.message('FANCY_CLOSE')+'" class="fancybox-item fancybox-close" href="javascript:;"></a>',
5311				next     : '<a title="'+BX.message('FANCY_NEXT')+'" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>',
5312				prev     : '<a title="'+BX.message('FANCY_PREV')+'" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>'
5313			},
5314		});
5315	})
5316
5317	/*tabs*/
5318	$(".tabs_section .tabs-head li").on("click", function(){
5319		if(!$(this).is(".current")){
5320			$(".tabs_section .tabs-head li").removeClass("current");
5321			$(this).addClass("current");
5322			$(".tabs_section ul.tabs_content li").removeClass("current");
5323			if($(this).attr("id") == "product_reviews_tab"){
5324				$(".shadow.common").hide(); $("#reviews_content").show();
5325			}
5326			else{
5327				$(".shadow.common").show();
5328				$("#reviews_content").hide();
5329				$(".tabs_section ul.tabs_content > li:eq("+$(this).index()+")").addClass("current");
5330			}
5331		}
5332	});
5333
5334	/*open first section slide*/
5335	setTimeout(function() {
5336		$('.jobs_wrapp .item:first .name tr').trigger('click');
5337	}, 300);
5338
5339	$('.choise').on('click', function(){
5340		var _this = $(this);
5341		if(typeof(_this.data('block')) != 'undefined')
5342		{
5343			scrollToBlock(_this.data('block'));
5344		}
5345	})
5346
5347	$(document).on('click', '.buy_block .slide_offer', function(){
5348		scroll_block($('.tabs_section'));
5349	});
5350	$('.share  > .share_wrapp .text').on('click', function(){
5351		var block = $(this).parent().find('.shares');
5352		if(!block.is(':visible') && !$(this).closest('.share.top').length)
5353			$('#content').css('z-index',3);
5354		block.fadeToggle(100,function(){
5355			if(!block.is(':visible'))
5356				$('#content').css('z-index',2);
5357		});
5358	})
5359	$('html, body').on('mousedown', function(e) {
5360		if(typeof e.target.className == 'string' && e.target.className.indexOf('adm') < 0)
5361		{
5362			e.stopPropagation();
5363			$('div.shares').fadeOut(100, function(){
5364				$('#content').css('z-index',2);
5365				$('.price_txt .share_wrapp').removeClass('opened');
5366			});
5367			$('.search_middle_block').removeClass('active_wide');
5368		}
5369	})
5370	$('.share_wrapp').find('*').on('mousedown', function(e) {
5371		e.stopPropagation();
5372	});
5373
5374	$('.price_txt .share_wrapp .text').click(function(){
5375		$(this).parent().toggleClass('opened');
5376		$(this).parent().find('.shares').fadeToggle();
5377	})
5378
5379	$(document).on('click', '.reviews-collapse-link', function(){
5380		$('.reviews-reply-form').slideToggle();
5381	})
5382
5383	/* accordion action*/
5384	$('.panel-collapse').on('hidden.bs.collapse', function(){
5385		$(this).parent().toggleClass('opened');
5386	})
5387	$('.panel-collapse').on('show.bs.collapse', function(){
5388		$(this).parent().toggleClass('opened');
5389	})
5390
5391	/* accordion */
5392	$('.accordion-head').on('click', function(e){
5393		e.preventDefault();
5394		if(!$(this).next().hasClass('collapsing')){
5395			$(this).toggleClass('accordion-open');
5396			$(this).toggleClass('accordion-close');
5397		}
5398	});
5399
5400	/* progress bar */
5401	$('[data-appear-progress-animation]').each(function(){
5402		var $this = $(this);
5403		$this.appear(function(){
5404			var delay = ($this.attr('data-appear-animation-delay') ? $this.attr('data-appear-animation-delay') : 1);
5405			if( delay > 1 )
5406				$this.css('animation-delay', delay + 'ms');
5407			$this.addClass($this.attr('data-appear-animation'));
5408
5409			setTimeout(function(){
5410				$this.animate({
5411					width: $this.attr('data-appear-progress-animation')
5412				}, 1500, 'easeOutQuad', function() {
5413					$this.find('.progress-bar-tooltip').animate({
5414						opacity: 1
5415					}, 500, 'easeOutQuad');
5416				});
5417			}, delay);
5418		}, {accX: 0, accY: -50});
5419	});
5420
5421	initCountdown();
5422
5423	/* portfolio item */
5424	if($('.item.animated-block').length)
5425	{
5426		$('.item.animated-block').appear(function(){
5427			var $this = $(this);
5428
5429			$this.addClass($this.data('animation')).addClass('visible');
5430
5431		}, {accX: 0, accY: 150})
5432	}
5433
5434	/*adaptive menu start*/
5435	$('.menu.adaptive').on('click', function(){
5436		$(this).toggleClass('opened');
5437		if($(this).hasClass('opened')){
5438			$('.mobile_menu').toggleClass('opened').slideDown();
5439		}else{
5440			$('.mobile_menu').toggleClass('opened').slideUp();
5441		}
5442	});
5443	$('.mobile_menu .has-child >a').on('click', function(e){
5444		var parentLi=$(this).parent();
5445		e.preventDefault();
5446		parentLi.toggleClass('opened');
5447		parentLi.find('.dropdown').slideToggle();
5448	})
5449
5450	$('.mobile_menu .search-input-div input').on('keyup', function(e) {
5451		var inputValue = $(this).val();
5452		$('.center_block .stitle_form input').val(inputValue);
5453		if(e.keyCode == 13){
5454			$('.center_block .stitle_form form').submit();
5455		}
5456	});
5457
5458	$('.center_block .stitle_form input').on('keyup', function(e) {
5459		var inputValue = $(this).val();
5460		$('.mobile_menu .search-input-div input').val(inputValue);
5461		if(e.keyCode == 13){
5462			$('.center_block .stitle_form form').submit();
5463		}
5464	});
5465
5466	$('.mobile_menu .search-button-div button').on('click', function(e) {
5467		e.preventDefault();
5468		var inputValue = $(this).parents().find('input').val();
5469		$('.center_block .stitle_form input').val(inputValue);
5470		$('.center_block .stitle_form form').submit();
5471	});
5472	/*adaptive menu end*/
5473
5474	$(document).on('click', '.mega-menu .dropdown-menu', function(e){
5475		e.stopPropagation()
5476	});
5477
5478	$(document).on('click', '.mega-menu .dropdown-toggle.more-items', function(e){
5479		e.preventDefault();
5480	});
5481
5482	$('.table-menu .dropdown,.table-menu .dropdown-submenu,.table-menu .dropdown-toggle').on('mouseenter', function() {
5483		CheckTopVisibleMenu();
5484	});
5485	$(document).on('mouseenter', '#headerfixed .table-menu .dropdown-menu .dropdown-submenu', function() {
5486		CheckTopVisibleMenu();
5487	});
5488
5489	$('.mega-menu .search-item .search-icon, .menu-row #title-search .fa-close').on('click', function(e) {
5490		e.preventDefault();
5491		$('.menu-row #title-search').toggleClass('hide');
5492	});
5493
5494	$('.mega-menu ul.nav .search input').on('keyup', function(e) {
5495		var inputValue = $(this).val();
5496		$('.menu-row > .search input').val(inputValue);
5497		if(e.keyCode == 13){
5498			$('.menu-row > .search form').submit();
5499		}
5500	});
5501
5502	$('.menu-row > .search input').on('keyup', function(e) {
5503		var inputValue = $(this).val();
5504		$('.mega-menu ul.nav .search input').val(inputValue);
5505		if(e.keyCode == 13){
5506			$('.menu-row > .search form').submit();
5507		}
5508	});
5509
5510	$('.mega-menu ul.nav .search button').on('click', function(e) {
5511		e.preventDefault();
5512		var inputValue = $(this).parents('.search').find('input').val();
5513		$('.menu-and-search .search input').val(inputValue);
5514		$('.menu-row > .search form').submit();
5515	});
5516
5517	$('.btn.btn-add').on('click', function(){
5518		$.ajax({
5519			type:"GET",
5520			url:arNextOptions['SITE_DIR']+"ajax/clearBasket.php",
5521			success: function(data){
5522			}
5523		});
5524	})
5525
5526	$('.sort_display a').on('click', function(){
5527		$(this).siblings().removeClass('current');
5528		$(this).addClass('current');
5529	})
5530
5531	/*detail order show payments*/
5532	$('.sale-order-detail-payment-options-methods-info-change-link').on('click', function(){
5533		$(this).closest('.sale-order-detail-payment-options-methods-info').addClass('opened').siblings().addClass('opened');
5534	})
5535
5536	/*expand/hide filter values*/
5537	$(document).on('click', '.expand_block', function(){
5538		togglePropBlock($(this));
5539	})
5540
5541	/*touch event*/
5542	document.addEventListener('touchend', function(event) {
5543		if(!$(event.target).closest('.menu-item').length && !$(event.target).hasClass('menu-item')){
5544			$('.menu-row .dropdown-menu').css({'display':'none','opacity':0});
5545			$('.menu-item').removeClass('hover');
5546			$('.bx-breadcrumb-item.drop').removeClass('hover');
5547		}
5548		if(!$(event.target).closest('.menu.topest').length){
5549			$('.menu.topest').css({'overflow': 'hidden'});
5550			$('.menu.topest > li').removeClass('hover');
5551		}
5552		if(!$(event.target).closest('.full.has-child').length){
5553			$('.menu_top_block.catalog_block li').removeClass('hover');
5554		}
5555		if(!$(event.target).closest('.basket_block').length){
5556			$('.basket_block .link').removeClass('hover');
5557			$('.basket_block .basket_popup_wrapp').slideUp();
5558		}
5559		if(!$(event.target).closest('.catalog_item').length){
5560			var tabsContentUnhoverHover = $('.tab:visible').attr('data-unhover') * 1;
5561			$('.tab:visible').stop().animate({'height': tabsContentUnhoverHover}, 100);
5562			$('.tab:visible').find('.catalog_item').removeClass('hover');
5563			$('.tab:visible').find('.catalog_item .buttons_block').stop().fadeOut(233);
5564			if($('.catalog_block').length){
5565				$('.catalog_block').find('.catalog_item_wrapp').removeClass('hover');
5566				$('.catalog_block').find('.catalog_item').removeClass('hover');
5567			}
5568		}
5569		//togglePropBlock($(event.target));
5570
5571	}, false);
5572
5573
5574	touchMenu('.menu-row .menu-item');
5575	touchTopMenu('.menu.topest li');
5576	touchLeftMenu('.menu_top_block li.full');
5577	touchBreadcrumbs('.bx-breadcrumb-item.drop');
5578
5579	$(document).on('keyup', '.coupon .input_coupon input', function(){
5580		if($(this).val().length){
5581			$(this).removeClass('error');
5582			$(this).closest('.input_coupon').find('.error').remove();
5583		}else{
5584			$(this).addClass('error');
5585			$("<label class='error'>"+BX.message("INPUT_COUPON")+"</label>").insertBefore($(this));
5586		}
5587	})
5588	showPhoneMask('input[autocomplete=tel]');
5589	BX.addCustomEvent(window, "onAjaxSuccessFilter", function(e){
5590		setBasketStatusBtn();
5591	});
5592
5593	BX.addCustomEvent(window, "onAjaxSuccess", function(e){
5594		if(e != 'OK')
5595		{
5596			initSelects(document);
5597			InitOrderCustom();
5598			showPhoneMask('input[autocomplete=tel]');
5599			if($('.catalog_detail').length && !$('.fast_view_frame').length)
5600			{
5601				$('.bx_filter').remove();
5602				InitFlexSlider();
5603			}
5604			if(arNextOptions["PAGES"]["CATALOG_PAGE"])
5605			{
5606				//setStatusButton();
5607				initCountdown();
5608			}
5609
5610			if(arNextOptions["PAGES"]["ORDER_PAGE"])
5611			{
5612				orderActions(e);
5613			}
5614			
5615			if (e && typeof e === 'object' && 'action' in e && e.action === 'ajaxContentLoadedTab') {
5616				//lazyLoadPagenBlock();
5617			}
5618		}
5619	});
5620
5621	//event for default basket quantity change
5622	BX.addCustomEvent(window, "OnBasketChange", function(e){
5623		if(arNextOptions["PAGES"]["BASKET_PAGE"])
5624		{
5625			var summ = 0,
5626				title = '';
5627
5628			if(typeof BX.Sale !== "undefined")
5629			{
5630				if(typeof BX.Sale.BasketComponent !== "undefined")
5631				{
5632					summ = BX.Sale.BasketComponent.result.allSum;
5633					title = BX.message('JS_BASKET_COUNT_TITLE').replace('SUMM', summ);
5634				}
5635			}
5636			else
5637			{
5638				summ = $('#allSum_FORMATED').html().replace(/&nbsp;/g, ' ');
5639				title = BX.message('JS_BASKET_COUNT_TITLE').replace('SUMM', summ);
5640			}
5641
5642			if($('.js-basket-block .wrap .prices').length)
5643				$('.js-basket-block .wrap .prices').html(summ);
5644			if($('a.basket-link.basket').length)
5645				$('a.basket-link.basket').attr('title', title);
5646			if($('.basket_fly .opener .basket_count').length)
5647				$('.basket_fly .opener .basket_count').attr('title', title);
5648
5649		}
5650	})
5651	BX.addCustomEvent(window, "onFrameDataRequestFail", function(response){
5652		console.log(response);
5653	});
5654
5655});
5656
5657if(!funcDefined('setBasketStatusBtn')){
5658	setBasketStatusBtn = function(){
5659		if(typeof(arBasketAspro) !== 'undefined')
5660		{
5661			if('BASKET_QUANTITY' in arBasketAspro) {
5662				if(arBasketAspro.BASKET_QUANTITY) {
5663					for(var i in arBasketAspro.BASKET_QUANTITY) {
5664						const item = $('.counter-value[data-product-id='+i+']')
5665						
5666						if(item.length) item.val(arBasketAspro.BASKET_QUANTITY[i])
5667					}
5668				}
5669			}
5670			if('BASKET' in arBasketAspro) // basket items
5671			{
5672				if(arBasketAspro.BASKET)
5673				{
5674					for(var i in arBasketAspro.BASKET)
5675					{
5676						const button = $('.to-cart[data-item='+i+']')
5677						const counter = $('.counter[data-item='+i+']')
5678						//по идее здесь скрывать кнопку + добавить ей класс in-cart купить и показывать счетчик
5679						button.addClass("in-basket")
5680						counter.css('display', 'flex')
5681
5682						// $('.to-cart[data-item='+i+']').hide();
5683						$('.counter_block[data-item='+i+']').hide();
5684						$('.in-cart[data-item='+i+']').show();
5685						$('.in-cart[data-item='+i+']').closest('.button_block').addClass('wide');
5686					}
5687				}
5688			}
5689
5690			if('DELAY' in arBasketAspro) // delay items
5691			{
5692				if(arBasketAspro.DELAY)
5693				{
5694					for(var i in arBasketAspro.DELAY)
5695					{
5696						$('.wish_item.to[data-item='+i+']').hide();
5697						$('.wish_item.in[data-item='+i+']').show();
5698						if ($('.wish_item[data-item='+i+']').find(".value.added").length)
5699						{
5700							$('.wish_item[data-item='+i+']').addClass("added");
5701							$('.wish_item[data-item='+i+']').find(".value").hide();
5702							$('.wish_item[data-item='+i+']').find(".value.added").css('display','block');
5703						}
5704					}
5705				}
5706			}
5707
5708			if('SUBSCRIBE' in arBasketAspro) // subscribe items
5709			{
5710				if(arBasketAspro.SUBSCRIBE)
5711				{
5712					for(var i in arBasketAspro.SUBSCRIBE)
5713					{
5714						$('.to-subscribe[data-item='+i+']').hide();
5715						$('.in-subscribe[data-item='+i+']').show();
5716					}
5717				}
5718			}
5719
5720			if('COMPARE' in arBasketAspro) // compare items
5721			{
5722				if(arBasketAspro.COMPARE)
5723				{
5724					for(var i in arBasketAspro.COMPARE)
5725					{
5726						$('.compare_item.to[data-item='+i+']').hide();
5727						$('.compare_item.in[data-item='+i+']').show();
5728						if ($('.compare_item[data-item='+i+']').find(".value.added").length)
5729						{
5730							$('.compare_item[data-item='+i+']').addClass("added");
5731							$('.compare_item[data-item='+i+']').find(".value").hide();
5732							$('.compare_item[data-item='+i+']').find(".value.added").css('display','block');
5733						}
5734					}
5735				}
5736			}
5737		}
5738	}
5739}
5740
5741if(!funcDefined('togglePropBlock')){
5742	togglePropBlock=function(className){
5743		var all_props_block = className.closest('.bx_filter_parameters_box_container').find('.hidden_values');
5744		if(all_props_block.length && (className.hasClass('inner_text') || className.hasClass('expand_block')))
5745		{
5746			if(all_props_block.is(':visible'))
5747			{
5748				className.text(BX.message('FILTER_EXPAND_VALUES'));
5749				all_props_block.hide();
5750			}
5751			else
5752			{
5753				className.text(BX.message('FILTER_HIDE_VALUES'));
5754				all_props_block.show();
5755			}
5756		}
5757	}
5758}
5759
5760if(!funcDefined('showPhoneMask')){
5761	showPhoneMask=function(className){
5762		$(className).inputmask('mask', {'mask': arNextOptions['THEME']['PHONE_MASK'], 'showMaskOnHover':false });
5763	}
5764}
5765
5766if(!funcDefined('parseUrlQuery')){
5767	parseUrlQuery=function() {
5768	    var data = {};
5769	    if(location.search) {
5770	        var pair = (location.search.substr(1)).split('&');
5771	        for(var i = 0; i < pair.length; i ++) {
5772	            var param = pair[i].split('=');
5773	            data[param[0]] = param[1];
5774	        }
5775	    }
5776	    return data;
5777	}
5778}
5779
5780if(!funcDefined('getActualBasket')){
5781	getActualBasket=function(iblockID, type){
5782		var data='';
5783		if(typeof iblockID !=="undefined"){
5784			data={"iblockID":iblockID}
5785		}
5786		$.ajax({
5787			type:"GET",
5788			url:arNextOptions['SITE_DIR']+"ajax/actualBasket.php",
5789			data:data,
5790			success: function(data){
5791				if(!$('.js_ajax').length)
5792					$('body').append('<div class="js_ajax"></div>');
5793				$('.js_ajax').html(data);
5794
5795				if(typeof(type) !== undefined)
5796				{
5797					var eventdata = {action:'loadActualBasket'+type};
5798					BX.onCustomEvent('onCompleteAction', [eventdata]);
5799				}
5800			}
5801		});
5802	}
5803}
5804
5805function touchMenu(selector){
5806	if(isMobile){
5807		if($(selector).length)
5808		{
5809			$(selector).each(function(){
5810				var th=$(this);
5811				th.on('touchend', function(e) {
5812					var _th = $(e.target).closest('.menu-item');
5813
5814					$('.menu.topest > li').removeClass('hover');
5815					$('.menu_top_block.catalog_block li').removeClass('hover');
5816					$('.bx-breadcrumb-item.drop').removeClass('hover');
5817
5818					if (_th.find('.dropdown-menu').length && !_th.hasClass('hover')) {
5819						e.preventDefault();
5820						e.stopPropagation();
5821						_th.siblings().removeClass('hover');
5822						_th.addClass('hover');
5823						$('.menu-row .dropdown-menu').css({'display':'none', 'opacity':0});
5824						if(_th.hasClass('menu-item'))
5825						{
5826							_th.closest('.dropdown-menu').css({'display':'block', 'opacity':1});
5827						}
5828						if(_th.find('> .wrap > .dropdown-menu'))
5829						{
5830							_th.find('> .wrap > .dropdown-menu').css({'display':'block', 'opacity':1});
5831						}
5832						else if(_th.find('> .dropdown-menu'))
5833						{
5834							_th.find('> .dropdown-menu').css({'display':'block', 'opacity':1});
5835						}
5836						CheckTopVisibleMenu();
5837					}
5838					else
5839					{
5840						var href = ($(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'))
5841						if(href && href !== 'undefined')
5842							location.href = href;
5843					}
5844				})
5845			})
5846		}
5847	}else{
5848		$(selector).off();
5849	}
5850}
5851
5852function touchTopMenu(selector){
5853	if(isMobile){
5854		if($(selector).length)
5855		{
5856			$(selector).each(function(){
5857				var th=$(this);
5858				th.on('touchend', function(e) {
5859					var _th = $(e.target).closest('li');
5860
5861					$('.menu-item').removeClass('hover');
5862					$('.menu_top_block.catalog_block li').removeClass('hover');
5863					$('.bx-breadcrumb-item.drop').removeClass('hover');
5864
5865					if (_th.hasClass('more') && !_th.hasClass('hover')) {
5866						e.preventDefault();
5867						e.stopPropagation();
5868						_th.siblings().removeClass('hover');
5869						_th.addClass('hover');
5870						$('.menu.topest').css({'overflow': 'visible'});
5871					}
5872					else
5873					{
5874						var href = ($(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'))
5875						if(href && href !== 'undefined')
5876							location.href = href;
5877					}
5878				})
5879			})
5880		}
5881	}else{
5882		$(selector).off();
5883	}
5884}
5885
5886function touchLeftMenu(selector){
5887	if(isMobile){
5888		if($(selector).length)
5889		{
5890			$(selector).each(function(){
5891				var th=$(this);
5892				th.on('touchend', function(e) {
5893					var _th = $(e.target).closest('li');
5894
5895					$('.menu-item').removeClass('hover');
5896					$('.bx-breadcrumb-item.drop').removeClass('hover');
5897					$('.menu.topest > li').removeClass('hover');
5898
5899					if (_th.hasClass('has-child') && !_th.hasClass('hover')) {
5900						e.preventDefault();
5901						e.stopPropagation();
5902						_th.siblings().removeClass('hover');
5903						_th.addClass('hover');
5904					}
5905					else
5906					{
5907						var href = ($(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'))
5908						if(href && href !== 'undefined')
5909							location.href = href;
5910					}
5911				})
5912			})
5913		}
5914	}else{
5915		$(selector).off();
5916	}
5917}
5918
5919function touchBreadcrumbs(selector){
5920	if(isMobile){
5921		if($(selector).length)
5922		{
5923			$(selector).each(function(){
5924				var th=$(this);
5925				th.on('touchend', function(e) {
5926					var _th = $(e.target).closest('.bx-breadcrumb-item');
5927
5928					$('.menu-item').removeClass('hover');
5929					$('.menu.topest > li').removeClass('hover');
5930					$('.menu_top_block.catalog_block li').removeClass('hover');
5931
5932					if(!_th.hasClass('hover')) {
5933						e.preventDefault();
5934						e.stopPropagation();
5935						_th.siblings().removeClass('hover');
5936						_th.addClass('hover');
5937					}
5938					else
5939					{
5940						_th.removeClass('hover');
5941						var href = ($(e.target).attr('href') ? $(e.target).attr('href') : $(e.target).closest('a').attr('href'));
5942						if(href && href !== 'undefined')
5943							location.href = href;
5944					}
5945				})
5946			})
5947		}
5948	}else{
5949		$(selector).off();
5950	}
5951}
5952
5953function touchItemBlock(selector){
5954	/*if(isMobile){
5955		if($(selector).length)
5956		{
5957			$(selector).each(function(){
5958				var th=$(this),
5959					item=th.closest('.catalog_item');
5960				th.on('touchend', function(e) {
5961					if (!item.hasClass('hover')) {
5962						e.preventDefault();
5963						// e.stopPropagation();
5964						item.siblings().removeClass('hover');
5965						item.siblings().blur();
5966						item.closest('.catalog_block').find('.catalog_item').removeClass('hover');
5967						item.addClass('hover');
5968						item.addClass('touch');
5969
5970						var tabsContentHover = th.closest('.tab').attr('data-hover') * 1,
5971							tabsContentUnhoverHover = th.closest('.tab').attr('data-unhover') * 1;
5972
5973						th.closest('.tab').stop().animate({'height': tabsContentUnhoverHover}, 100);
5974						th.closest('.catalog_item').siblings().find('.buttons_block').stop().fadeOut(233)
5975
5976						th.closest('.tab').fadeTo(100, 1);
5977						th.closest('.tab').stop().css({'height': tabsContentHover});
5978						th.closest('.catalog_item').find('.buttons_block').fadeIn(450, 'easeOutCirc');
5979					}
5980				})
5981			})
5982		}
5983	}else{
5984		$(selector).off();
5985	}*/
5986}
5987function touchBasket(selector){
5988	if(arNextOptions['THEME']['SHOW_BASKET_ONADDTOCART'] !== 'N'){
5989		if($(window).outerWidth()>600){
5990			$(document).find(selector).on('touchend', function(e) {
5991				if ($(this).parent().find('.basket_popup_wrapp').length && !$(this).hasClass('hover')) {
5992					e.preventDefault();
5993					e.stopPropagation();
5994					$(this).addClass('hover');
5995					$(this).parent().find('.basket_popup_wrapp').slideDown();
5996				}
5997			})
5998		}else{
5999			$(selector).off();
6000		}
6001	}
6002}
6003
6004function showTotalSummItem(popup){
6005	//show total summ
6006	if(arNextOptions["THEME"]["SHOW_TOTAL_SUMM_TYPE"] == "ALWAYS" && arNextOptions["THEME"]["SHOW_TOTAL_SUMM"] == "Y")
6007	{
6008		var parent = 'body ';
6009		if(typeof popup  === 'string' && popup == 'Y')
6010			parent = '.popup ';
6011		$(parent+'.counter_wrapp .counter_block input.text').each(function(){
6012			var _th = $(this);
6013			if(_th.data('product'))
6014			{
6015				var obProduct = _th.data('product');
6016				if(typeof window[obProduct] == 'object')
6017					window[obProduct].setPriceAction('Y');
6018				else
6019					setPriceItem(_th.closest('.main_item_wrapper'), _th.val());
6020			}
6021			else
6022				setPriceItem(_th.closest('.main_item_wrapper'), _th.val());
6023		})
6024	}
6025}
6026
6027function initFull(){
6028	initSelects(document);
6029	initHoverBlock(document);
6030	touchItemBlock('.catalog_item a');
6031	InitOrderCustom();
6032	showTotalSummItem();
6033	basketActions();
6034	orderActions();
6035
6036	checkMobileRegion();
6037}
6038
6039checkMobileRegion = function(){
6040	if($('.confirm_region').length)
6041	{
6042		if(!$('.top_mobile_region').length)
6043			$('<div class="top_mobile_region"><div class="confirm_wrapper"><div class="confirm_region"></div><div class="close_popup"></div></div></div>').insertBefore($('#mobileheader'));
6044		$('.top_mobile_region .confirm_region').html($('.confirm_region').html());
6045
6046		$('.top_mobile_region .close_popup').click(function(){
6047			$(this).remove();
6048			$('.confirm_region').remove();
6049		})
6050	}
6051}
6052if(!funcDefined('orderActions')){
6053	orderActions = function(e){
6054		if(arNextOptions["PAGES"]["ORDER_PAGE"]){
6055			//phone
6056			if($('#bx-soa-order input[autocomplete=tel]').length){
6057				// get property phone
6058				for(var i = 0;i<BX.Sale.OrderAjaxComponent.result.ORDER_PROP.properties.length;++i){
6059					if(BX.Sale.OrderAjaxComponent.result.ORDER_PROP.properties[i].IS_PHONE == 'Y'){
6060						var arPropertyPhone = BX.Sale.OrderAjaxComponent.result.ORDER_PROP.properties[i];
6061					}
6062				}
6063
6064				// validate input type=tel
6065				if(typeof(BX.Sale.OrderAjaxComponent) !== 'undefined' && typeof(BX.Sale.OrderAjaxComponent) === 'object' && typeof(arPropertyPhone) == 'object' && arPropertyPhone){
6066					BX.Sale.OrderAjaxComponent.validatePhone = function(input, arProperty, fieldName)
6067					{
6068						if (!input || !arProperty)
6069							return [];
6070
6071						var value = input.value,
6072							errors = [],
6073							name = BX.util.htmlspecialchars(arProperty.NAME),
6074							field = BX.message('SOA_FIELD') + ' "' + name + '"',
6075							re;
6076
6077						if (arProperty.REQUIRED == 'Y' && value.length == 0){
6078							errors.push(field + ' ' + BX.message('SOA_REQUIRED'));
6079						}
6080
6081						if(arProperty.IS_PHONE == 'Y' && value.length > 0){
6082							function regexpPhone(value, element, regexp){
6083								var re = new RegExp( regexp );
6084								return re.test(value);
6085							}
6086
6087							var validPhone = regexpPhone($(input).val(), $(input), arNextOptions['THEME']['VALIDATE_PHONE_MASK']);
6088
6089							if(!validPhone){
6090								errors.push(field + ' ' +BX.message('JS_FORMAT_ORDER'));
6091							}
6092						}
6093
6094						return errors;
6095					}
6096
6097					BX.Sale.OrderAjaxComponent.getValidationDataPhone = function(arProperty, propContainer){
6098						var data = {}, inputs;
6099						switch (arProperty.TYPE)
6100						{
6101							case 'STRING':
6102								data.action = 'blur';
6103								data.func = BX.delegate(function(input, fieldName){
6104									return this.validatePhone(input, arProperty, fieldName);
6105								}, this);
6106
6107								inputs = propContainer.querySelectorAll('input[type=tel]');
6108								if ($(inputs).length)
6109								{
6110									data.inputs = inputs;
6111									break;
6112								}
6113						}
6114
6115						return data;
6116					};
6117
6118					BX.Sale.OrderAjaxComponent.bindValidationPhone = function(id, propContainer)
6119					{
6120						if (!this.validation.properties || !this.validation.properties[id])
6121							return;
6122
6123						var arProperty = this.validation.properties[id],
6124							data = this.getValidationDataPhone(arProperty, propContainer),
6125							i, k;
6126
6127						if (data && data.inputs && data.action)
6128						{
6129							for (i = 0; i < $(data.inputs).length; i++)
6130							{
6131								if (BX.type.isElementNode(data.inputs[i])){
6132									BX.bind(data.inputs[i], data.action, BX.delegate(function(){
6133										this.isValidProperty(data);
6134									}, this));
6135								}
6136								else{
6137									for (k = 0; k < $(data.inputs[i]).length; k++)
6138										BX.bind(data.inputs[i][k], data.action, BX.delegate(function(){
6139											this.isValidProperty(data);
6140										}, this));
6141								}
6142							}
6143						}
6144					};
6145
6146					BX.Sale.OrderAjaxComponent.isValidPropertiesBlock = function(excludeLocation)
6147					{
6148						if (!this.options.propertyValidation)
6149							return [];
6150
6151						var props = this.orderBlockNode.querySelectorAll('.bx-soa-customer-field[data-property-id-row]'),
6152							propsErrors = [],
6153							id, propContainer, arProperty, data, i;
6154
6155						for (i = 0; i < props.length; i++)
6156						{
6157							id = props[i].getAttribute('data-property-id-row');
6158
6159							if (!!excludeLocation && this.locations[id])
6160								continue;
6161
6162							propContainer = props[i].querySelector('.soa-property-container');
6163							if (propContainer)
6164							{
6165								arProperty = this.validation.properties[id];
6166								data = this.getValidationData(arProperty, propContainer);
6167								dataPhone = this.getValidationDataPhone(arProperty, propContainer);
6168								data = $.extend({}, data, dataPhone);
6169
6170								propsErrors = propsErrors.concat(this.isValidProperty(data, true));
6171							}
6172						}
6173
6174						return propsErrors;
6175					};
6176
6177
6178					// create input type=tel
6179					var input = $('input[autocomplete=tel]'),
6180						inputHTML = input[0].outerHTML,
6181						value = input.val(),
6182						newInput = input[0].outerHTML.replace('type="text"', 'type="tel" value="'+value+'"');
6183
6184					if($(input).length < 2)
6185					{
6186						input.hide();
6187						$(newInput).insertAfter(input);
6188					}
6189					showPhoneMask('input[autocomplete=tel][type=tel]');
6190
6191					// change value input type=text when change input type=tel
6192					$('input[autocomplete=tel][type=tel]').on('keyup', function(){
6193						var $this = $(this);
6194
6195						setTimeout(function(){
6196							var value = $this.val();
6197							$this.parent().find('input[autocomplete=tel][type=text]').val(value);
6198						}, 50);
6199
6200					});
6201
6202					BX.Sale.OrderAjaxComponent.bindValidationPhone(arPropertyPhone.ID, $('input[autocomplete=tel]').parent()[0]);
6203				}
6204			}
6205
6206			if($('.bx-soa-cart-total').length){
6207				if(!$('.change_basket').length)
6208					$('.bx-soa-cart-total').prepend('<div class="change_basket">'+BX.message("BASKET_CHANGE_TITLE")+'<a href="'+arNextOptions["SITE_DIR"]+'basket/" class="change_link">'+BX.message("BASKET_CHANGE_LINK")+'</a></div>');
6209
6210				if(typeof (BX.Sale.OrderAjaxComponent) == "object"){
6211					if(arNextOptions['COUNTERS']['USE_FULLORDER_GOALS'] !== 'N'){
6212						if(typeof BX.Sale.OrderAjaxComponent.reachgoalbegin === 'undefined'){
6213							BX.Sale.OrderAjaxComponent.reachgoalbegin = true;
6214							var eventdata = {goal: 'goal_order_begin'};
6215							BX.onCustomEvent('onCounterGoals', [eventdata])
6216						}
6217					}
6218
6219					if(BX.Sale.OrderAjaxComponent.hasOwnProperty("params")){
6220						$('.bx-soa-cart-total .change_link').attr('href', BX.Sale.OrderAjaxComponent.params.PATH_TO_BASKET);
6221						if(arNextOptions["PRICES"]["MIN_PRICE"]){
6222							if(arNextOptions["PRICES"]["MIN_PRICE"]>Number(BX.Sale.OrderAjaxComponent.result.TOTAL.ORDER_PRICE)){
6223								$('<div class="fademask_ext"></div>').appendTo($('body'));
6224								location.href=BX.Sale.OrderAjaxComponent.params.PATH_TO_BASKET;
6225							}
6226						}
6227					}
6228
6229					if($('.bx-soa-cart-total-line-total').length && arNextOptions["THEME"]["SHOW_LICENCE"] == "Y"){
6230						if(typeof(e) === 'undefined')
6231							BX.Sale.OrderAjaxComponent.state_licence = (arNextOptions['THEME']['LICENCE_CHECKED'] == 'Y' ? 'checked' : '');
6232
6233						if(!$('.licence_block.filter').length){
6234							$('<div class="form"><div class="licence_block filter label_block"><label data-for="licenses_order" class="hidden error">'+BX.message('JS_REQUIRED_LICENSES')+'</label><input type="checkbox" name="licenses_order" required '+BX.Sale.OrderAjaxComponent.state_licence+' value="Y"><div class="license">Нажимая кнопку "Оформить заказ" я даю согласие на&nbsp;<a href="/include/licenses_detail.php">обработку персональных данных</a>.</div></div></div>').insertBefore($('#bx-soa-orderSave'));
6235
6236							$(document).on('click', '.bx-soa .licence_block label.license', function(){
6237								var id = $(this).data('for');
6238								$('.bx-soa .licence_block label.error').addClass('hidden');
6239								if(!$('input[name='+id+']').prop('checked')){
6240									$('input[name='+id+']').prop('checked', 'checked');
6241									BX.Sale.OrderAjaxComponent.state_licence = 'checked';
6242								}
6243								else{
6244									$('input[name='+id+']').prop('checked', '');
6245									BX.Sale.OrderAjaxComponent.state_licence = '';
6246								}
6247							})
6248
6249							$(document).on('click', '.lic_condition a', function(){
6250								if(BX.hasClass(BX('bx-soa-order'), 'orderform--v1')){
6251									if(BX.Sale.OrderAjaxComponent.isValidForm())
6252									{
6253										BX.Sale.OrderAjaxComponent.animateScrollTo($('.licence_block')[0], 800, 50);
6254									}
6255								}
6256								else{
6257									var iCountErrors = BX.Sale.OrderAjaxComponent.isValidPropertiesBlock().length;
6258									if(!BX.Sale.OrderAjaxComponent.activeSectionId || !iCountErrors)
6259									{
6260										BX.Sale.OrderAjaxComponent.animateScrollTo($('.licence_block')[0], 800, 50);
6261									}
6262								}
6263							})
6264						}
6265
6266						$('#bx-soa-orderSave, .bx-soa-cart-total-button-container').addClass('lic_condition');
6267
6268						if(typeof (BX.Sale.OrderAjaxComponent.oldClickOrderSaveAction) === "undefined" && typeof (BX.Sale.OrderAjaxComponent.clickOrderSaveAction) !== 'undefined'){
6269							BX.Sale.OrderAjaxComponent.oldClickOrderSaveAction = BX.Sale.OrderAjaxComponent.clickOrderSaveAction;
6270							BX.Sale.OrderAjaxComponent.clickOrderSaveAction = function(event){
6271								if($('input[name="licenses_order"]').prop('checked')){
6272									$('.bx-soa .licence_block label.error').addClass('hidden');
6273
6274									if (BX.Sale.OrderAjaxComponent.isValidForm())
6275									{
6276										if(typeof BX.Sale.OrderAjaxComponent.allowOrderSave == 'function')
6277											BX.Sale.OrderAjaxComponent.allowOrderSave();
6278										if(typeof BX.Sale.OrderAjaxComponent.doSaveAction == 'function')
6279											BX.Sale.OrderAjaxComponent.doSaveAction();
6280										else
6281											BX.Sale.OrderAjaxComponent.oldClickOrderSaveAction(event);
6282									}
6283								}
6284								else{
6285									$('.bx-soa .licence_block label.error').removeClass('hidden');
6286								}
6287							}
6288							if(BX.Sale.OrderAjaxComponent.orderSaveBlockNode.querySelector('.checkbox'))
6289							{
6290								if(typeof browser == 'object')
6291								{
6292									if('msie' in browser && browser.msie)
6293										$(BX.Sale.OrderAjaxComponent.orderSaveBlockNode.querySelector('.checkbox')).remove();
6294									else
6295										BX.Sale.OrderAjaxComponent.orderSaveBlockNode.querySelector('.checkbox').remove();
6296								}
6297							}
6298							BX.unbindAll(BX.Sale.OrderAjaxComponent.totalInfoBlockNode.querySelector('a.btn-order-save'));
6299							BX.unbindAll(BX.Sale.OrderAjaxComponent.mobileTotalBlockNode.querySelector('a.btn-order-save'));
6300							BX.unbindAll(BX.Sale.OrderAjaxComponent.orderSaveBlockNode.querySelector('a'));
6301							BX.bind(BX.Sale.OrderAjaxComponent.totalInfoBlockNode.querySelector('a.btn-order-save'), 'click', BX.proxy(BX.Sale.OrderAjaxComponent.clickOrderSaveAction, BX.Sale.OrderAjaxComponent));
6302							BX.bind(BX.Sale.OrderAjaxComponent.mobileTotalBlockNode.querySelector('a.btn-order-save'), 'click', BX.proxy(BX.Sale.OrderAjaxComponent.clickOrderSaveAction, BX.Sale.OrderAjaxComponent));
6303							BX.bind(BX.Sale.OrderAjaxComponent.orderSaveBlockNode.querySelector('a'), 'click', BX.proxy(BX.Sale.OrderAjaxComponent.clickOrderSaveAction, BX.Sale.OrderAjaxComponent));
6304						}
6305					}
6306
6307					// fix hide total block
6308					$(window).scroll();
6309
6310					if(checkCounters() && typeof (BX.Sale.OrderAjaxComponent.oldSaveOrder) === "undefined" && typeof (BX.Sale.OrderAjaxComponent.saveOrder) !== 'undefined'){
6311						BX.Sale.OrderAjaxComponent.oldSaveOrder = BX.Sale.OrderAjaxComponent.saveOrder;
6312						BX.Sale.OrderAjaxComponent.saveOrder = function(result){
6313							var res = BX.parseJSON(result);
6314							if (res && res.order){
6315								if (!res.order.SHOW_AUTH){
6316									if (res.order.REDIRECT_URL && res.order.REDIRECT_URL.length && (!res.order.ERROR || BX.util.object_keys(res.order.ERROR).length < 1)){
6317										if((arMatch = res.order.REDIRECT_URL.match(/ORDER_ID\=[^&=]*/g)) && arMatch.length && (_id = arMatch[0].replace(/ORDER_ID\=/g, '', arMatch[0]))){
6318											$.ajax({
6319												url:arNextOptions['SITE_DIR']+"ajax/check_order.php",
6320												dataType: "json",
6321												type: "POST",
6322												data: { "ID": _id },
6323												success: function(id){
6324													if(parseInt(id)){
6325														purchaseCounter(parseInt(id), BX.message('FULL_ORDER'), function(d){
6326															if(typeof BX.localStorage !== 'undefined'){
6327																BX.localStorage.set('gtm_e_' + _id, d, 60);
6328															}
6329															BX.Sale.OrderAjaxComponent.oldSaveOrder(result);
6330														});
6331													}
6332												},
6333												error: function(){
6334													BX.Sale.OrderAjaxComponent.oldSaveOrder(result);
6335												}
6336											})
6337										}
6338										else{
6339											BX.Sale.OrderAjaxComponent.oldSaveOrder(result);
6340										}
6341									}
6342									else{
6343										BX.Sale.OrderAjaxComponent.oldSaveOrder(result);
6344									}
6345								}
6346								else{
6347									BX.Sale.OrderAjaxComponent.oldSaveOrder(result);
6348								}
6349							}
6350							else{
6351								BX.Sale.OrderAjaxComponent.oldSaveOrder(result);
6352							}
6353						}
6354					}
6355				}
6356				$('.bx-ui-sls-quick-locations.quick-locations').on('click', function(){
6357					$(this).siblings().removeClass('active');
6358					$(this).addClass('active');
6359				})
6360			}
6361		}
6362	}
6363}
6364
6365if(!funcDefined('basketActions')){
6366	basketActions = function(){
6367		if(arNextOptions["PAGES"]["BASKET_PAGE"]){
6368			checkMinPrice();
6369
6370			//remove4Cart
6371			if(typeof(BX.Sale) !== 'undefined' && typeof(BX.Sale) === 'object')
6372			{
6373				if(typeof(BX.Sale.BasketComponent) !== 'undefined' && typeof(BX.Sale.BasketComponent) === 'object')
6374				{
6375					$(document).on('click', '.basket-item-actions-remove', function(){
6376						var basketID = $(this).closest('.basket-items-list-item-container').data('id');
6377						delFromBasketCounter(BX.Sale.BasketComponent.items[basketID].PRODUCT_ID);
6378					})
6379				}
6380			}
6381
6382			if(location.hash)
6383			{
6384				var hash = location.hash.substring(1);
6385				if($('#basket_toolbar_button_'+hash).length)
6386					$('#basket_toolbar_button_'+hash).trigger('click');
6387
6388				if($('.basket-items-list-header-filter a[data-filter="'+hash+'"]').length)
6389					$('.basket-items-list-header-filter a[data-filter="'+hash+'"]')[0].click();
6390			}
6391
6392			$('.bx_sort_container').append('<div class="top_control basket_sort"><span style="opacity:0;" class="delete_all remove_all_basket">'+BX.message("BASKET_CLEAR_ALL_BUTTON")+'</span></div>');
6393			if($('.basket-items-list-header-filter').length)
6394			{
6395				$('.basket-items-list-header-filter').append('<div class="top_control basket_sort"><span style="opacity:1;" class="delete_all remove_all_basket">'+BX.message("BASKET_CLEAR_ALL_BUTTON")+'</span></div>');
6396
6397				var cur_index = $('.basket-items-list-header-filter > a.active').index();
6398				//fix delayed
6399				if(cur_index == 3)
6400					cur_index = 2;
6401
6402				if($('.basket-items-list-header-filter > a.active').data('filter') == 'all')
6403					cur_index = 'all';
6404
6405				$('.basket-items-list-header-filter .top_control .delete_all').data("type",cur_index);
6406
6407				$('.basket-items-list-header-filter > a').on('click', function() {
6408					var index = $(this).index();
6409
6410					//fix delayed
6411					if(index == 3)
6412						index = 2;
6413
6414					if($(this).data('filter') == 'all')
6415						index = 'all';
6416
6417					$('.basket-items-list-header-filter .top_control .delete_all').data("type", index);
6418				});
6419			}
6420			else
6421			{
6422				var cur_index = $('.bx_sort_container a.current').index();
6423				$('.bx_sort_container .top_control .delete_all').data("type",cur_index);
6424				if($('.bx_ordercart > div:eq('+cur_index+') table tbody tr td.item').length)
6425					$('.bx_sort_container .top_control .delete_all').css('opacity',1);
6426
6427				$('.bx_ordercart .bx_ordercart_coupon #coupon').wrap('<div class="input"></div>');
6428
6429				$('.bx_sort_container > a').on('click', function() {
6430					var index = $(this).index();
6431					$('.bx_sort_container .top_control .delete_all').data("type", index);
6432
6433					if($('.bx_ordercart > div:eq('+index+') table tbody tr td.item').length)
6434						$('.bx_sort_container .top_control .delete_all').css('opacity',1);
6435					else
6436						$('.bx_sort_container .top_control .delete_all').css('opacity',0);
6437				});
6438			}
6439
6440
6441			$('.basket_print').on('click', function() {
6442				 // window.open(location.pathname+"?print=Y",'_blank');
6443				 window.print();
6444			});
6445
6446			$('.delete_all').on('click', function() {
6447				if(arNextOptions['COUNTERS']['USE_BASKET_GOALS'] !== 'N'){
6448					var eventdata = {goal: 'goal_basket_clear', params: {type: $(this).data('type')}};
6449					BX.onCustomEvent('onCounterGoals', [eventdata]);
6450				}
6451				$.post( arNextOptions['SITE_DIR']+"ajax/action_basket.php", "TYPE="+$(this).data('type')+"&CLEAR_ALL=Y", $.proxy(function( data ) {
6452					location.reload();
6453				}));
6454			});
6455
6456			$('.bx_item_list_section .bx_catalog_item').sliceHeight({row:'.bx_item_list_slide', item:'.bx_catalog_item'});
6457
6458			BX.addCustomEvent('onAjaxSuccess', function() {
6459				checkMinPrice();
6460
6461				var errorText = $.trim($('#warning_message').text());
6462				$('#basket_items_list .error_text').detach();
6463				if (errorText != '') {
6464					$('#warning_message').hide().text('');
6465					$('#basket_items_list').prepend('<div class="error_text">' +errorText+ '</div>');
6466				}
6467			});
6468			$(document).on('click', '.bx_ordercart_order_pay_center .checkout, .basket-checkout-section-inner .basket-btn-checkout', function(){
6469				if(checkCounters('google')){
6470					checkoutCounter(1, 'start order');
6471				}
6472			})
6473		}
6474	}
6475}
6476
6477if(!funcDefined('checkMinPrice')){
6478	checkMinPrice = function(){
6479		if(arNextOptions["PAGES"]["BASKET_PAGE"]){
6480			var summ_raw=0,
6481				summ=0;
6482			if($('#allSum_FORMATED').length)
6483			{
6484				summ_raw=$('#allSum_FORMATED').text().replace(/[^0-9\.,]/g,'');
6485				summ=parseFloat(summ_raw);
6486				if($('#basket_items').length)
6487				{
6488					var summ = 0;
6489					$('#basket_items tr').each(function(){
6490						if(typeof ($(this).data('item-price')) !== 'undefined' && $(this).data('item-price'))
6491							summ += $(this).data('item-price')*$(this).find('#QUANTITY_INPUT_'+$(this).attr('id')).val();
6492					})
6493				}
6494				if(!$('.catalog_back').length)
6495					$('.bx_ordercart_order_pay_center').prepend('<a href="'+arNextOptions["PAGES"]["CATALOG_PAGE_URL"]+'" class="catalog_back btn btn-default btn-lg white grey">'+BX.message("BASKET_CONTINUE_BUTTON")+'</a>');
6496			}
6497
6498			if(arNextOptions["THEME"]["SHOW_ONECLICKBUY_ON_BASKET_PAGE"] == "Y")
6499				$('.basket-coupon-section').addClass('smallest');
6500
6501			if(typeof BX.Sale !== "undefined")
6502			{
6503				if(typeof BX.Sale.BasketComponent !== "undefined" && typeof BX.Sale.BasketComponent.result !== "undefined")
6504					summ = BX.Sale.BasketComponent.result.allSum;
6505			}
6506
6507			if(arNextOptions["PRICES"]["MIN_PRICE"]){
6508				if(arNextOptions["PRICES"]["MIN_PRICE"]>summ){
6509
6510					if($('.oneclickbuy.fast_order').length)
6511						$('.oneclickbuy.fast_order').remove();
6512
6513					if($('.basket-checkout-container').length)
6514					{
6515						if(!$('.icon_error_wrapper').length){
6516							$('.basket-checkout-block.basket-checkout-block-btn').html('<div class="icon_error_wrapper"><div class="icon_error_block">'+BX.message("MIN_ORDER_PRICE_TEXT").replace("#PRICE#", jsPriceFormat(arNextOptions["PRICES"]["MIN_PRICE"]))+'</div></div>');
6517						}
6518					}
6519					else
6520					{
6521						if(!$('.icon_error_wrapper').length  && typeof jsPriceFormat !== 'undefined'){
6522							$('.bx_ordercart_order_pay_center').prepend('<div class="icon_error_wrapper"><div class="icon_error_block">'+BX.message("MIN_ORDER_PRICE_TEXT").replace("#PRICE#", jsPriceFormat(arNextOptions["PRICES"]["MIN_PRICE"]))+'</div></div>');
6523						}
6524						if($('.bx_ordercart_order_pay .checkout').length)
6525							$('.bx_ordercart_order_pay .checkout').remove();
6526					}
6527				}else{
6528					if($('.icon_error_wrapper').length)
6529						$('.icon_error_wrapper').remove();
6530
6531					if($('.basket-checkout-container').length)
6532					{
6533						if(!$('.oneclickbuy.fast_order').length && arNextOptions["THEME"]["SHOW_ONECLICKBUY_ON_BASKET_PAGE"] == "Y" && !$('.basket-btn-checkout.disabled').length)
6534							$('.basket-checkout-block-btn').append('<div class="fastorder"><span class="oneclickbuy btn btn-default btn-lg fast_order" onclick="oneClickBuyBasket()">'+BX.message("BASKET_QUICK_ORDER_BUTTON")+'</span></div>');
6535					}
6536					else
6537					{
6538						if($('.bx_ordercart_order_pay .checkout').length)
6539							$('.bx_ordercart .bx_ordercart_order_pay .checkout').css('opacity','1');
6540						else
6541							$('.bx_ordercart_order_pay_center').append('<a href="javascript:void(0)" onclick="checkOut();" class="checkout" style="opacity: 1;">'+BX.message("BASKET_ORDER_BUTTON")+'</a>');
6542						if(!$('.oneclickbuy.fast_order').length && arNextOptions["THEME"]["SHOW_ONECLICKBUY_ON_BASKET_PAGE"] == "Y")
6543							$('.bx_ordercart_order_pay_center').append('<span class="oneclickbuy btn btn-default btn-lg fast_order" onclick="oneClickBuyBasket()">'+BX.message("BASKET_QUICK_ORDER_BUTTON")+'</span>');
6544					}
6545				}
6546			}else{
6547				if($('.basket-checkout-container').length)
6548				{
6549					if(!$('.oneclickbuy.fast_order').length && arNextOptions["THEME"]["SHOW_ONECLICKBUY_ON_BASKET_PAGE"] == "Y" && !$('.basket-btn-checkout.disabled').length)
6550						$('.basket-checkout-block-btn').append('<div class="fastorder"><span class="oneclickbuy btn btn-default btn-lg fast_order" onclick="oneClickBuyBasket()">'+BX.message("BASKET_QUICK_ORDER_BUTTON")+'</span></div>');
6551				}
6552				else
6553				{
6554					$('.bx_ordercart .bx_ordercart_order_pay .checkout').css('opacity','1');
6555					if(!$('.oneclickbuy.fast_order').length && arNextOptions["THEME"]["SHOW_ONECLICKBUY_ON_BASKET_PAGE"] == "Y")
6556						$('.bx_ordercart_order_pay_center').append('<span class="oneclickbuy btn btn-default btn-lg fast_order" onclick="oneClickBuyBasket()">'+BX.message("BASKET_QUICK_ORDER_BUTTON")+'</span>');
6557				}
6558			}
6559
6560			$('#basket-root .basket-checkout-container .basket-checkout-section .basket-checkout-block .basket-btn-checkout').addClass('white');
6561			$('#basket-root .basket-checkout-container').addClass('visible');
6562		}
6563	}
6564}
6565
6566var isFrameDataReceived = false;
6567if (typeof window.frameCacheVars !== "undefined"){
6568	BX.addCustomEvent("onFrameDataReceived", function (json){
6569		initFull();
6570
6571		CheckTopMenuPadding();
6572		CheckTopMenuOncePadding();
6573		CheckTopMenuDotted();
6574
6575		CheckSearchWidth();
6576
6577		if($('.logo-row.v2').length)
6578		{
6579			$(window).resize(); // need to check resize flexslider & menu
6580			setTimeout(function(){
6581				CheckTopMenuDotted();
6582			}, 100);
6583		}
6584
6585		isFrameDataReceived = true;
6586	});
6587}else{
6588	$( document ).ready(initFull);
6589}
6590
6591if(!funcDefined('setHeightBlockSlider')){
6592	setHeightBlockSlider = function(){
6593		$(document).find('.specials.tab_slider_wrapp .tabs_content > li.cur').equalize({children: '.item-title'});
6594		$(document).find('.specials.tab_slider_wrapp .tabs_content > li.cur').equalize({children: '.item_info'});
6595		$(document).find('.specials.tab_slider_wrapp .tabs_content > li.cur').equalize({children: '.catalog_item'});
6596
6597		var sliderWidth = $(document).find('.specials.tab_slider_wrapp').outerWidth();
6598
6599		var iCountTabs = $(document).find('.specials.tab_slider_wrapp .tabs_content > li.cur').length;
6600
6601		if(iCountTabs <= 1)
6602		{
6603			$(document).find('.specials.tab_slider_wrapp .tabs_content > li.cur').css('height', '');
6604
6605			var itemsButtonsHeight = 0;
6606			if($(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button').length)
6607			{
6608				$(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button').css('height', 'auto');
6609				itemsButtonsHeight = $(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button').height();
6610				$(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur .tabs_slider li .footer_button').css('height', '');
6611			}
6612			var tabsContentUnhover = $(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur').height() * 1;
6613			var tabsContentHover = tabsContentUnhover + itemsButtonsHeight+50;
6614			$(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur').attr('data-unhover', tabsContentUnhover);
6615			$(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur').attr('data-hover', tabsContentHover);
6616			$(document).find('.specials.tab_slider_wrapp .tabs_content').height(tabsContentUnhover);
6617			$(document).find('.specials.tab_slider_wrapp .tabs_content .tab.cur .flex-viewport').height(tabsContentUnhover);
6618		}
6619		else
6620		{
6621			$(document).find('.specials.tab_slider_wrapp .tabs_content > li.cur').each(function(){
6622				var _th = $(this);
6623				_th.css('height', '');
6624
6625				var itemsButtonsHeight = 0;
6626				if(_th.find('.tabs_slider li .footer_button').length)
6627				{
6628					_th.find('.tabs_slider li .footer_button').css('height', 'auto');
6629					itemsButtonsHeight = _th.find('.tabs_slider li .footer_button').height();
6630					_th.find('.tabs_slider li .footer_button').css('height', '');
6631				}
6632
6633				var tabsContentUnhover = _th.height() * 1;
6634				var tabsContentHover = tabsContentUnhover + itemsButtonsHeight+50;
6635				_th.attr('data-unhover', tabsContentUnhover);
6636				_th.attr('data-hover', tabsContentHover);
6637				_th.parent().height(tabsContentUnhover);
6638				_th.find('.flex-viewport').height(tabsContentUnhover);
6639
6640			})
6641		}
6642	}
6643}
6644
6645if(!funcDefined('checkTopFilter')){
6646	checkTopFilter = function() {
6647		if(window.matchMedia('(max-width: 991px)').matches){
6648			//if($('.group_description_block.top').length){
6649				var top_pos=$('.adaptive_filter').position().top;
6650				$('.bx_filter.bx_filter_vertical').css({'top':top_pos+43});
6651			//}
6652		}
6653	}
6654}
6655
6656if(!funcDefined('checkStickyFooter')){
6657	checkStickyFooter = function() {
6658		try{
6659			ignoreResize.push(true);
6660			$('#content').css('min-height', '');
6661			var contentTop = $('#content').offset().top;
6662			var contentBottom = contentTop + $('#content').outerHeight();
6663			var footerTop = 0;
6664			if($('footer').length)
6665				footerOffset = $('footer').offset().top;
6666
6667			$('#content').css('min-height', $(window).height() - contentTop - (footerTop - contentBottom) - $('footer').outerHeight() + 'px');
6668			ignoreResize.pop();
6669		}
6670		catch(e){console.error(e);}
6671	}
6672}
6673
6674/* EVENTS */
6675var timerResize = false, ignoreResize = [];
6676$(window).resize(function(){
6677	CheckPopupTop();
6678	/*if(!$('html.print').length)
6679		checkStickyFooter();*/
6680
6681	// here immediate functions
6682	if(!ignoreResize.length){
6683		if(timerResize){
6684			clearTimeout(timerResize);
6685			timerResize = false;
6686		}
6687		timerResize = setTimeout(function(){
6688			// here delayed functions in event
6689			BX.onCustomEvent('onWindowResize', false);
6690		}, 50);
6691	}
6692});
6693
6694var timerScroll = false, ignoreScroll = [], documentScrollTopLast = $(document).scrollTop(), startScroll = 0;
6695$(window).scroll(function(){
6696	CheckPopupTop();
6697	// here immediate functions
6698	documentScrollTopLast = $(document).scrollTop();
6699	SetFixedAskBlock();
6700	/*if($('.wrapper1.mfixed_Y.mfixed_view_scroll_top #mobileheader').length && window.matchMedia('(max-width: 991px)').matches)
6701	{
6702		if(documentScrollTopLast > startScroll)
6703			$('.wrapper1.mfixed_Y.mfixed_view_scroll_top #mobileheader').removeClass('fixed');
6704		else
6705			$('.wrapper1.mfixed_Y.mfixed_view_scroll_top #mobileheader').addClass('fixed');
6706		startScroll = documentScrollTopLast;
6707	}*/
6708
6709	if(!ignoreScroll.length){
6710		if(timerScroll){
6711			clearTimeout(timerScroll);
6712			timerScroll = false;
6713		}
6714		timerScroll = setTimeout(function(){
6715			// here delayed functions in event
6716			BX.onCustomEvent('onWindowScroll', false);
6717		}, 50);
6718	}
6719});
6720
6721BX.addCustomEvent('onWindowResize', function(eventdata){
6722	try{
6723		ignoreResize.push(true);
6724
6725		CheckTopMenuPadding();
6726		CheckTopMenuOncePadding();
6727		CheckSearchWidth();
6728
6729		CheckTabActive();
6730		CheckTopMenuFullCatalogSubmenu();
6731		CheckHeaderFixedMenu();
6732
6733		CheckTopMenuDotted();
6734		if($('nav.mega-menu.sliced').length)
6735			$('nav.mega-menu.sliced').removeClass('initied');
6736
6737
6738		CheckTopVisibleMenu();
6739
6740		checkScrollToTop();
6741		CheckObjectsSizes();
6742
6743		CheckFlexSlider();
6744		initSly();
6745
6746		checkVerticalMobileFilter();
6747
6748		checkTopFilter();
6749
6750		if(window.matchMedia('(min-width: 767px)').matches)
6751			$('.wrapper_middle_menu.wrap_menu').removeClass('mobile');
6752
6753		if(window.matchMedia('(max-width: 767px)').matches)
6754			$('.wrapper_middle_menu.wrap_menu').addClass('mobile');
6755
6756
6757		if($("#basket_form").length && $(window).outerWidth()<=600){
6758			$("#basket_form .tabs_content.basket > li.cur td").each(function() { $(this).css("width","");});
6759		}
6760
6761		$(".bx_filter_section .bx_filter_select_container").each(function(){
6762			var prop_id=$(this).closest('.bx_filter_parameters_box').attr('property_id');
6763			if($('#smartFilterDropDown'+prop_id).length){
6764				$('#smartFilterDropDown'+prop_id).css("max-width", $(this).width());
6765			}
6766		})
6767	}
6768	catch(e){}
6769	finally{
6770		ignoreResize.pop();
6771	}
6772});
6773
6774BX.addCustomEvent('onWindowScroll', function(eventdata){
6775	try{
6776		ignoreScroll.push(true);
6777	}
6778	catch(e){}
6779	finally{
6780		ignoreScroll.pop();
6781	}
6782});
6783
6784BX.addCustomEvent('onSlideInit', function(eventdata) {
6785	try{
6786		ignoreResize.push(true);
6787		if(eventdata){
6788			var slider = eventdata.slider;
6789			if(slider){
6790				if(slider.hasClass('small-gallery'))
6791					$(window).resize();
6792				// add classes .curent & .shown to slide
6793				slider.find('.item').removeClass('current');
6794				var curSlide = slider.find('.item.flex-active-slide'),
6795					curSlideId = curSlide.attr('id'),
6796					nav = slider.find('.flex-direction-nav');
6797
6798				curSlide.addClass('current');
6799
6800				slider.find('.visible').css('opacity', '1');
6801
6802				if(curSlide.hasClass('shown')){
6803					slider.find('.item.clone[id=' + curSlideId + '_clone]').addClass('shown');
6804				}
6805
6806				curSlide.addClass('shown');
6807			}
6808		}
6809	}
6810	catch(e){}
6811	finally{
6812		ignoreResize.pop();
6813	}
6814});
6815
6816BX.addCustomEvent('onCounterGoals', function(eventdata){
6817	if(arNextOptions['THEME']['YA_GOALS'] == 'Y' && arNextOptions['THEME']['YA_COUNTER_ID'])
6818	{
6819		var idCounter = arNextOptions['THEME']['YA_COUNTER_ID'];
6820		idCounter = parseInt(idCounter);
6821
6822		if(typeof eventdata != 'object')
6823			eventdata = {goal: 'undefined'};
6824
6825		if(typeof eventdata.goal != 'string')
6826			eventdata.goal = 'undefined';
6827
6828		if(idCounter)
6829		{
6830			try
6831			{
6832				waitCounter(idCounter, 50, function(){
6833					var obCounter = window['yaCounter' + idCounter];
6834					if(typeof obCounter == 'object'){
6835						obCounter.reachGoal(eventdata.goal);
6836					}
6837				});
6838			}
6839			catch(e)
6840			{
6841				console.error(e)
6842			}
6843		}
6844		else
6845		{
6846			console.info('Bad counter id!', idCounter);
6847		}
6848	}
6849})
6850
6851var onCaptchaVerifyinvisible = function(response){
6852	$('.g-recaptcha:last').each(function(){
6853		var id = $(this).attr('data-widgetid');
6854		if(typeof(id) !== 'undefined' && response){
6855			if(!$(this).closest('form').find('.g-recaptcha-response').val())
6856				$(this).closest('form').find('.g-recaptcha-response').val(response)
6857			if($('iframe[src*=recaptcha]').length)
6858			{
6859				$('iframe[src*=recaptcha]').each(function(){
6860					var block = $(this).parent().parent();
6861					if(!block.hasClass('grecaptcha-badge'))
6862						block.css('width', '100%');
6863				})
6864			}
6865			$(this).closest('form').submit();
6866		}
6867	})
6868}
6869
6870var onCaptchaVerifynormal = function(response){
6871	$('.g-recaptcha').each(function(){
6872		var id = $(this).attr('data-widgetid');
6873		if(typeof(id) !== 'undefined'){
6874			if(grecaptcha.getResponse(id) != ''){
6875				$(this).closest('form').find('.recaptcha').valid();
6876			}
6877		}
6878	});
6879}
6880
6881BX.addCustomEvent('onSubmitForm', function(eventdata){
6882	try{
6883		if(!window.renderRecaptchaById || !window.asproRecaptcha || !window.asproRecaptcha.key)
6884		{
6885			eventdata.form.submit();
6886			$(eventdata.form).closest('.form').addClass('sending');
6887			return true;
6888		}
6889		if(window.asproRecaptcha.params.recaptchaSize == 'invisible' && typeof grecaptcha != 'undefined')
6890		{
6891			if($(eventdata.form).find('.g-recaptcha-response').val())
6892			{
6893				eventdata.form.submit();
6894				$(eventdata.form).closest('.form').addClass('sending');
6895			}
6896			else
6897			{
6898				grecaptcha.execute($(eventdata.form).find('.g-recaptcha').data('widgetid'));
6899				return false;
6900			}
6901		}
6902		else
6903		{
6904			eventdata.form.submit();
6905			$(eventdata.form).closest('.form').addClass('sending');
6906		}
6907
6908		return true;
6909	}catch (e){
6910		console.error(e);
6911		return true;
6912	}
6913})
6914
6915/*custom event for sku prices*/
6916
6917/*BX.addCustomEvent('onAsproSkuSetPrice', function(eventdata){
6918	console.log(eventdata);
6919})*/
6920
6921/*BX.addCustomEvent('onAsproSkuSetPriceMatrix', function(eventdata){
6922	console.log(eventdata);
6923})*/

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.