PageSourceSearch

https://tdvzvt.ru/bitrix/templates/aspro_next/js/main.js

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

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.