PageSourceSearch

https://victorymuseum.ru/local/templates/white2/js/scripts.js?178612643537155

js victorymuseum.ru collected 2026-10-02 03:35:52 UTC 37,155 bytes, 1,293 lines download raw bytes

1if ($(window).scrollTop() > 80){
2	$('.top-line').addClass('scrolled');
3}
4
5function getOffset(elem){
6	if(elem.length){
7		var offset=Math.round(elem.offset().top);
8		return offset;
9	}
10}
11// function scrollTo(elem,delta){
12// 	if(!delta) delta=0;
13// 	$("html:not(:animated),body:not(:animated)").animate({scrollTop: getOffset(elem)-delta}, 800);
14// 	return false;
15// }
16function validateMail(text) {
17	var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
18	return re.test(text);
19}
20function validateText(text) {
21	var re = /^[\s\n.,!?+:;()'"«»_a-zA-Z\-0-9а-яА-Я\/]{2,}$/;
22	return re.test(text);
23}
24function validateNum(text) {
25	var re = /^[0-9]{1,}$/;
26	return re.test(text);
27}
28function parallax(obj,multiplier) {
29	if(!multiplier) multiplier=1;
30	if (screen.width < 1024) {
31		return;
32	}
33	var $win = $(window);
34	$win.on('scroll', function() {
35		var windowYOffset = $win[0].pageYOffset;
36		obj.css({
37			'-webkit-transform':'translateY('+multiplier*windowYOffset+'px)',
38			'-moz-transform':'translateY('+multiplier*windowYOffset+'px)',
39			'-ms-transform':'translateY('+multiplier*windowYOffset+'px)',
40			'-o-transform':'translateY('+multiplier*windowYOffset+'px)',
41			'transform':'translateY('+multiplier*windowYOffset+'px)',
42		});
43	});
44}
45
46
47
48function scrollElem(elem,scrollTop,elem2){
49	var top=elem.data('top');
50	if((!elem.length)||(screen.width < 1024)||(screen.height < elem.height())||(scrollTop<top)){
51		elem.css('transform','translateY(0)');
52		//console.log('err');
53		var er=0;
54		if(!elem.length) er+=2;
55		if(screen.width < 1024) er+=4;
56		if(screen.height < elem.height()) er+=8;
57		if(scrollTop<top) er+=16;
58		//console.log(er);
59		//console.log(scrollTop);
60		//console.log(top);
61	}else{
62		var height=elem.height();
63		if(elem2.length)
64			var maxScroll=elem2.height();
65		else
66			var maxScroll=elem.parent().height();
67		if(maxScroll<(height+scrollTop-top+130)) return;
68		elem.css('transform','translateY('+(scrollTop-top+130)+'px)');
69	}
70}
71function resizeLikeWindow(obj,delta){
72	var winHeight=$(window).height();
73	var deltaHeight=delta.length?delta.height():0;
74	obj.height(winHeight-deltaHeight+'px');
75}
76function centerPopup(popupBox){
77	var popup=$('#popup');
78	var scrolledTop=$(document).scrollTop();
79	var winHeight=$(window).height();
80	var boxHeight=popupBox.children().height();
81	var top=scrolledTop+30;
82	if(boxHeight<winHeight) top=scrolledTop+(winHeight-boxHeight)/2;
83	popupBox.css({'top':top+'px'});
84
85	popup.css({'opacity':1,'visibility':'visible'});
86}
87
88
89$(document).ready(function () {
90
91	/*$("body").children().each(function() {
92			$(this).html($(this).html().replace("&#8232;"," "));
93	});*/
94
95	if($(window.location.hash).length){
96		$('html, body').animate({scrollTop: $(window.location.hash).offset().top-110}, 1000);
97	}
98	$('a[href^="#"]').click(function(){
99		var id=$(this).attr('href');
100		$('html, body').animate({scrollTop: $(id).offset().top-110}, 1000);
101		return false;
102	});
103
104	var scrolledTop=0;
105	var popup=$('#popup');
106	var popupBox=$('#popup .box');
107	var $header=$('#header');
108	var $topLine=$('#header .top-line');
109	var $bottomLine=$('.bottom-line');
110	var $header_search=$('#header .header__search');
111	var $firstSlide=$('.home-top .first-slide');
112	var $main=$('#main');
113	var $footer=$('#footer');
114	var $win = $(window);
115	var $body = $('body');
116	var $subscribeForm = $(".to-subscribe");
117	var $rightCol = $(".gray-oblique-box .right-col");
118	var $leftCol = $(".gray-oblique-box .left-col");
119	if($rightCol.length && $(".full_version").length) $rightCol.data('top',$rightCol.offset().top);
120
121	//popup
122	popup.on('click','.ok,.cross,.popup-shadow',function(){
123		popup.fadeOut(300,function(){
124			setTimeout(function(){popup.html();},500);
125		});
126	});
127
128	//menu
129	var f_menuScrolled = false;
130	$('.menu-icon').click(function(){
131		$('body').toggleClass('menu-active');
132	});
133	$('.top-menu .parent, .choosement, .works-hours').click(function(){
134		$(this).toggleClass('opened').next().slideToggle();
135		// $(this).toggleClass('opened');
136	});
137
138// fix menu
139	$(document).scroll(function () {
140		scrolledTop=$(document).scrollTop();
141		if (scrolledTop > 1 && !f_menuScrolled){
142			$topLine.addClass("scrolled");
143			$bottomLine.addClass("scrolled");
144			$header_search.addClass("scrolled");
145			$('#header').addClass("scrolled");
146			$body.addClass('page-scrolled');
147			f_menuScrolled = true;
148		}
149		if (scrolledTop <= 1 && f_menuScrolled) {
150			$topLine.removeClass("scrolled");
151			$bottomLine.removeClass("scrolled");
152			$header_search.removeClass("scrolled");
153			$body.removeClass('page-scrolled');
154      $('#header').removeClass("scrolled");
155			f_menuScrolled = false;
156		}
157		if($rightCol.length && $(".full_version").length && !$($rightCol).hasClass("nojs")) scrollElem($rightCol,scrolledTop,$leftCol);
158	});
159// end fix menu
160
161
162	$(window).resize(function(){
163		if($rightCol.length && $(".full_version").length && !$($rightCol).hasClass("nojs")) $rightCol.data('top',$rightCol.offset().top);
164	});
165
166	//bg parallax
167	// parallax($('.home-top .bg'),1/3);
168	// parallax($('.home-top .bg .text'),-1/3);
169
170	//subscribe
171	$subscribeForm.submit(function(event){
172		event.preventDefault();
173
174		$email = $('input[name=email]').val();
175		$.ajax({
176			url: "/include/subscribe.php",
177			method: "POST",
178			data: $(this).serialize(),
179			success: function(data){
180					$("#sub-response").fadeIn(300);
181					$("#sub-response").html(data);
182					setTimeout(function(){$("#sub-response").fadeOut(300)}, 2000);
183
184					if(data.indexOf('Ошибка') == '-1') {
185						$(".may9subscribe .text-before").addClass('none');
186						$(".may9subscribe .text-after").removeClass('none');
187					}
188
189				}
190		});
191
192		return false;
193	});
194
195	//search-line
196	$('.search-line .open').click(function(){
197		$(this).parents('.search-line').addClass('focus');
198	});
199	$('.search-line .close').click(function(){
200		$(this).parents('.search-line').removeClass('focus');
201	});
202
203
204	$('.top-info .title').click(function(){
205		var parent=$(this).parents('.top-info-item');
206		if(parent.hasClass('opened')) return;
207		parent.addClass('opened');
208	});
209
210	$('.top-info .more').click(function(){
211		var parent=$(this).parents('.top-info-item');
212		parent.toggleClass('opened');
213	});
214
215	$('.news-nav').on('click','.sect',function(e){
216		if($(this).hasClass('active')) return false;
217		var navBox=$(e.delegateTarget);
218		var index=$('.sect',navBox).index($(this));
219		var newSection=$('.news-section').eq(index);
220		var oldSection=$('.news-section.active');
221		$('.active',navBox).removeClass('active');
222		oldSection.removeClass('active');
223		$(this).addClass('active');
224		newSection.addClass('active');
225		triggerMasonry($('.oblique-items',newSection));
226		setTimeout(function(){//fix
227			triggerMasonry($('.oblique-items',newSection));
228		},1000);
229		return false;
230	});
231
232	//masonry
233	if($(".full_version").length){
234		//console.log("full is here");
235		$masonryBox = $(".oblique-items___");
236		$masonryBox.each(function(){
237			var $masonryBoxItem=$(this);
238			$masonryBoxItem.masonry({
239				itemSelector: '.item',
240				columnWidth: '.grid-sizer',
241				horizontalOrder: true,
242				percentPosition: true
243			});
244			var loadButton=$masonryBoxItem.next($('.load-masonry-more'));
245			if(loadButton.length){
246				loadButton.click(function(e){
247					var href=$(this).data('href');
248					var cur_page=$(this).data('cur_page');
249					var end_page=$(this).data('end_page');
250					if(end_page>cur_page){
251						cur_page=cur_page-0+1;
252						loadButton.data('cur_page',cur_page);
253						$.ajax({
254							url: href+'&PAGEN_1='+cur_page,
255							success: function(data){
256								//console.log(data);
257								// console.log('loaded');
258								// console.log(cur_page);
259								// console.log(loadButton.data('end_page'));
260								var $newItems = $(data).filter('.item');
261								$masonryBoxItem.append($newItems).masonry('appended',$newItems);
262								setTimeout(function(){triggerMasonry($masonryBoxItem);},500);
263								setTimeout(function(){triggerMasonry($masonryBoxItem);},1000);
264								if(loadButton.data('end_page')<=cur_page) loadButton.fadeOut(300);
265							}
266						});
267					}
268				});
269			}
270		});
271		function triggerMasonry(box) {
272			box.each(function(){
273				$(this).masonry('layout');
274			});
275		}
276		$masonryBox.imagesLoaded( function() {
277			triggerMasonry($masonryBox);
278		});
279
280		var masonryTimeout;
281		$win.resize(function(){
282			clearTimeout(masonryTimeout);
283			masonryTimeout=setTimeout(function(){//fix
284				triggerMasonry($masonryBox);
285			},1000);
286			if($firstSlide.length) resizeLikeWindow($('.img-box',$firstSlide),$('.text-box',$firstSlide));
287		});
288		if($firstSlide.length) resizeLikeWindow($('.img-box',$firstSlide),$('.text-box',$firstSlide));
289
290		$('.news-filter .type .name,.tickets-filter .type .name').click(function(){
291			var btn=$(this);
292			var type=$(this).parents('.type');
293			if(btn.hasClass('active')){
294				btn.removeClass('active');
295				$(document).off('click');
296			}else{
297				$('.news-filter .type .name').removeClass('active');
298				$(document).off('click');
299				btn.addClass('active');
300				$(document).on('click',function(event) {
301					var target=$(event.target);
302					if (target.closest(type).length) return;
303					btn.removeClass('active');
304					$(document).off('click');
305				});
306			}
307		});
308	}
309
310
311
312	$('.check-phone').mask("+9 (999) 999-99-99");
313
314/*BASKET*/
315	function updateMiniBasket(miniBasket){
316		// console.log('mini basket updating')
317		$.ajax({
318			url: "/include/ajax_mini_basket.php",
319			dataType: 'json',
320			success: function(result){
321				$('.mini-basket').html(result.line);
322			}
323		});
324	}
325	if($('.mini-basket').length) updateMiniBasket();
326
327	function changeBasket(data,f_showResults,f_update_busket){
328		$.ajax({
329			url: "/include/ajax_basket.php",
330			type: "post",
331			data: data,
332			success: function(result){
333				if(result){
334					if(f_showResults){
335						popupBox.html(result);
336						popup.fadeIn(300);
337						centerPopup(popupBox);
338						$('.message',popupBox).css({top:$('body').scrollTop()+'px'});
339					}else if(f_update_busket){
340						$.ajax({
341							url: "/include/basket_update.php",
342							type: "post",
343							data: data,
344							success: function(result){
345								$('#basket').html($(result).filter('#basket').html());
346							}
347						});
348					}
349					updateMiniBasket();
350				}else {
351					alert ('Ajax load error!'); //немного паранойи
352				}
353				$(".continue").click(function(){
354					popup.fadeOut(300);
355					return false;
356				});
357			}
358		});
359	}
360	$('.add-to-basket').click(function(){
361		var data=new Object();
362		/*var parent=$(this).parent();
363		if(!parent.hasClass('prod-detail')) parent=parent.parent();
364		var numBox=$('.num',parent);
365		data.quantity=numBox.text();
366		numBox.data('max',(numBox.data('max')-numBox.text()));*/
367		data.quantity=$(this).data('quantity');
368		data.product_id=$(this).data('id');
369		data.name=$(this).data('name');
370		data.article=$(this).data('article');
371		data.section_id=$(this).data('section_id');
372		data.section_name=$(this).data('section_name');
373		data.section_url=$(this).data('section_url');
374		data.max_quantity=$(this).data('max');
375		data.show_request='Y';
376		changeBasket(data,true);
377	});
378	$('#basket').on('click','.set-num .minus',function(e){
379		var data=new Object();
380		data.product_id=$(this).parents('.set-num').data('id');
381		data.max_quantity=$(this).parents('.set-num').data('max');
382		data.quantity=-1;
383		var update_busket=false;
384		/*if(e.delegateTarget.id=='basket')
385			update_busket=true;
386		changeBasket(data,false,update_busket);*/
387		changeBasket(data,false,true);
388	});
389	$('#basket').on('click','.set-num .plus',function(e){
390		var data=new Object();
391		data.product_id=$(this).parents('.set-num').data('id');
392		data.max_quantity=$(this).parents('.set-num').data('max');
393		data.quantity=1;
394		var update_busket=false;
395		changeBasket(data,false,true);
396	});
397	$('#basket').on('change','.set-num .num',function(e){
398		var data=new Object();
399		data.product_id=$(this).parents('.set-num').data('id');
400		data.quantity=$(this).val();
401		data.set_quantity='Y';
402		var update_busket=false;
403		changeBasket(data,false,true);
404	});
405	$('#basket').on('click','.del',function(){
406		var data=new Object();
407		data.product_id=$(this).data('id');
408		data.del='Y';
409		changeBasket(data,false,true);
410	});
411	$('.del-all').click(function(){
412		var data=new Object();
413		data.del_all='Y';
414		changeBasket(data,false,true);
415	});
416/*END BASKET*/
417
418
419
420/*TICKETS*/
421	var blockOrderForm=false;
422	function buyTicket(data){
423		$.ajax({
424			url: "/include/buy_ticket.php",
425			type: "post",
426			data: data,
427			success: function(result){
428				if(result){
429					popupBox.html(result);
430					popup.fadeIn(300);
431					centerPopup(popupBox);
432					initTicketForm();
433				}else {
434					alert ('Ajax load error!');
435				}
436			}
437		});
438	}
439
440
441	function loadForm(data){
442		$.ajax({
443			url: "/include/loadform.php",
444			type: "post",
445			data: data,
446			success: function(result){
447				// console.log(result);
448				if(result){
449					popupBox.html(result);
450					popup.fadeIn(300);
451					centerPopup(popupBox);
452					var form = $(".popup .form");
453				}else {
454					alert ('Ajax load error!');
455				}
456			}
457		});
458	}
459	$(".loadform").click(function(){
460		var data = new Object();
461		data.id = $(this).data("formid");
462		data.name = $(this).data("name");
463		loadForm(data);
464	});
465
466
467
468
469	const swiper_main = new Swiper('.js-main-slider .swiper-container', {
470		spaceBetween: 30,
471		speed: 700,
472		loop: true,
473		slidesPerView: 'auto',
474		centeredSlides: false,
475		allowTouchMove: true, // mouse dr
476		autoplay: {
477			delay: 7000,
478			disableOnInteraction: false
479		},
480		navigation: {
481			nextEl: '.js-main-slider .swiper-main-next',
482			prevEl: '.js-main-slider .swiper-main-prev',
483		},
484		pagination: {
485			el: '.js-main-slider .swiper-pagination',
486			type: 'bullets',
487			clickable: true,
488		},
489		breakpoints: {
490			320: {
491				slidesPerView: 1,
492				centeredSlides: false,
493			},
494			1199: {
495				slidesPerView: 'auto',
496				centeredSlides: true,
497			}
498		}
499	});
500	// $('body').on('click', '.swiper-main-next.swiper-button-disabled', function(){
501	// 	console.log(111);
502	// 	// swiper_main.slideTo(0);
503	// });
504
505	const productGalleryContainer = document.querySelector('.js-product-gallery .swiper-container');
506	if (productGalleryContainer) {
507		const swiper_product_gallery = new Swiper('.js-product-gallery .swiper-container', {
508		spaceBetween: 30,
509		speed: 700,
510		loop: true,
511		slidesPerView: 1,
512		centeredSlides: false,
513		allowTouchMove: true,
514		navigation: {
515			nextEl: '.js-product-gallery .swiper-product-next',
516			prevEl: '.js-product-gallery .swiper-product-prev',
517		},
518		pagination: {
519			el: '.js-product-gallery .swiper-pagination',
520			type: 'bullets',
521			clickable: true,
522		},
523	});
524	}
525
526	const swiper_oblique_video = new Swiper('.section__videotranslation .js-oblique-slider', {
527		spaceBetween: 30,
528		centeredSlides: false,
529		loop: true,
530		autoplay: false,
531		delay: 8000,
532		watchSlidesVisibility: true,
533		navigation: {
534			nextEl: '.section__videotranslation .oblique-next',
535			prevEl: '.section__videotranslation .oblique-prev',
536		},
537		breakpoints: {
538			320: {
539				slidesPerView: 1.14,
540				spaceBetween: 20,
541			},
542			768: {
543				slidesPerView: 3,
544				slidesPerGroup: 3,
545				spaceBetween: 30,
546			}
547		}
548	});
549
550	const swiper_projects = new Swiper('.section__projects .js-oblique-slider', {
551		spaceBetween: 30,
552		loop: true,
553		autoplay: false,
554		delay: 8000,
555		watchSlidesVisibility: true,
556		navigation: {
557			nextEl: '.section__projects .oblique-next',
558			prevEl: '.section__projects .oblique-prev',
559		},
560		breakpoints: {
561			320: {
562				slidesPerView: 1.14,
563				spaceBetween: 20,
564			},
565			768: {
566				slidesPerView: 5,
567				// slidesPerGroup: 3,
568				spaceBetween: 30,
569			}
570		}
571	});
572
573	const swiper_oblique_ria = new Swiper('.ria-news .js-oblique-slider', {
574		spaceBetween: 30,
575		centeredSlides: false,
576		loop: false,
577		autoplay: false,
578		delay: 8000,
579		watchSlidesVisibility: true,
580		navigation: {
581			nextEl: '.ria-news .oblique-next',
582			prevEl: '.ria-news .oblique-prev',
583		},
584		breakpoints: {
585			320: {
586				slidesPerView: 1.14,
587				spaceBetween: 20,
588			},
589			768: {
590				slidesPerView: 3
591			},
592			1199: {
593				slidesPerView: 5,
594				// slidesPerGroup: 3
595			}
596		}
597	});
598
599	const swiper_podvig = new Swiper('.js-podvig-slider', {
600		slidesPerView: 'auto',
601		centeredSlides: true,
602		spaceBetween: 0,
603		loop: true,
604		autoplay: {
605			delay: 4000,
606		},
607		autoHeight: true,
608		navigation: {
609			nextEl: '.js-standart-slider .swiper-button-next',
610			prevEl: '.js-standart-slider .swiper-button-prev',
611		},
612	});
613
614	const swiper_standart = new Swiper('.js-standart-slider', {
615		slidesPerView: 1,
616		spaceBetween: 0,
617		loop: true,
618		autoplay: {
619			delay: 4000,
620		},
621		autoHeight: true,
622		navigation: {
623			nextEl: '.js-standart-slider .swiper-button-next',
624			prevEl: '.js-standart-slider .swiper-button-prev',
625		},
626	});
627
628	const swiper_video = new Swiper('.js-video-slider', {
629		slidesPerView: 1,
630		spaceBetween: 0,
631		loop: true,
632		autoplay: false,
633		autoHeight: true,
634		navigation: {
635			nextEl: '.js-video-slider .swiper-button-next',
636			prevEl: '.js-video-slider .swiper-button-prev',
637		},
638	});
639	swiper_video.on('slideChange', function () {
640		$('.js-video-slider .swiper-slide').each(function(){
641			let el = $(this).find('video');
642			el[0].pause();
643		});
644	});
645
646	const swiper_foreigner = new Swiper('.js-foreigner-slider', {
647		slidesPerView: 1,
648		spaceBetween: 0,
649		loop: true,
650		preloadImages: false,
651		lazy: {
652			loadPrevNext: true,
653		},
654		effect: 'fade',
655		autoplay: {
656			delay: 4000,
657		},
658		autoHeight: true,
659		navigation: {
660			nextEl: '.js-foreigner-slider .swiper-button-next',
661			prevEl: '.js-foreigner-slider .swiper-button-prev',
662		},
663	});
664
665
666	// mobile swiper add/crash
667	var catalogSlider = null;
668	var mediaQuerySize = 767;
669
670
671	function catalogSliderInit () {
672		if (!catalogSlider) {
673			catalogSlider = new Swiper('.js-maybe-slider .swiper-container', {
674				slidesPerView: 1.14,
675				spaceBetween: 20,
676				centeredSlides: false,
677				loop: true,
678				autoplay: false,
679				delay: 8000,
680				watchSlidesVisibility: true,
681			});
682		}
683	}
684
685	function catalogSliderDestroy () {
686		if (catalogSlider) {
687			catalogSlider.destroy();
688			catalogSlider = null;
689		}
690	}
691
692	$(window).on('load resize', function () {
693		// Берём текущую ширину экрана
694		var windowWidth = $(this).innerWidth();
695
696		// Если ширина экрана меньше или равна mediaQuerySize
697		if (windowWidth <= mediaQuerySize) {
698			// Инициализировать слайдер если он ещё не был инициализирован
699			$('.js-maybe-slider .sw').addClass('swiper-container');
700			$('.js-maybe-slider .oblique-items').addClass('swiper-wrapper');
701			$('.js-maybe-slider .item').addClass('swiper-slide');
702			catalogSliderInit();
703
704			$('.nomination_view__like.inner').insertBefore('.soc-box');
705			$('.footer-col-contacts').insertBefore('.footerBox').addClass('box-shadow border-radius');
706		} else {
707			// Уничтожить слайдер если он был инициализирован
708			catalogSliderDestroy();
709			$('.js-maybe-slider .sw').removeClass('swiper-container');
710			$('.js-maybe-slider .oblique-items').removeClass('swiper-wrapper');
711			$('.js-maybe-slider .item').removeClass('swiper-slide');
712		}
713	});
714	// --mobile swiper
715
716	function loadFormPatron(data){
717		$.ajax({
718			url: "/include/loadformpatron.php",
719			type: "post",
720			data: data,
721			success: function(result){
722
723				if(result){
724					// console.log(result);
725					popupBox.html(result);
726					popup.fadeIn(300);
727					centerPopup(popupBox);
728					var form = $(".popup form");
729
730						$("a.spatron").click(function(){
731							var sum = $(this).data("sum");
732							// console.log(sum);
733							$(".inputtext.patreon").val(sum);
734							return false;
735						});
736
737						$("#patronform .button.submit").on('click',function(){
738							$(".errormsg").fadeOut();
739							$.ajax({
740								url: "/robo/",
741								type: "POST",
742								data: form.serialize(),//formData,
743								success: function(result){
744									if(result == "error"){
745										// console.log(result);
746										$(".errormsg").fadeIn();
747										return false;
748									}else {
749										form.submit();
750									}
751								}
752							});
753							return false;
754						});
755
756
757				}else {
758					alert ('Ajax load error!');
759				}
760			}
761		});
762	}
763	$(".button.patronat").click(function(){
764		var data = new Object();
765		data.page = $(this).data("page");
766		data.project = $(this).data("project");
767		loadFormPatron(data);
768	});
769
770
771
772	$('.buy-ticket').click(function(){
773		var data=new Object();
774		data.ID=$(this).data('id');
775		data.TICKET_DATE=$(this).data('date');
776		data.TICKET_TIME=$(this).data('time');
777		buyTicket(data);
778	});
779	function updateTicketForm(addVars){
780		if(blockOrderForm) return;
781		blockOrderForm=true;
782		var formBox=$('.buy-ticket-page');
783		var form=$('.buy-ticket-page .form');
784		$.ajax({
785			url: "/include/buy_ticket.php"+(addVars?('?'+addVars):''),
786			type: "POST",
787			data: form.serialize(),//formData,
788			success: function(result){
789				if(result){
790					// console.log('ticket form loaded');
791					var text=$(result).find('.buy-ticket-page');
792					formBox.replaceWith(text);
793					if($('.buy-ticket-page').hasClass('order-success'))
794						centerPopup(popupBox);
795					initTicketForm();
796					blockOrderForm=false;
797				}else {
798					alert ('Ajax load error!'); //немного паранойи
799				}
800			}
801		});
802	}
803
804	/*function fadeContractFields(contractCheckbox){
805		var contractID=$('input[name="CONTRACT_ID"]');
806		var contractPassword=$('input[name="CONTRACT_PASSWORD"]');
807		if(contractCheckbox.prop('checked')){
808			contractID.parents('.inp-box').removeClass('hidden');
809			contractPassword.parents('.inp-box').removeClass('hidden');
810		}else{
811			contractID.parents('.inp-box').addClass('hidden');
812			contractPassword.parents('.inp-box').addClass('hidden');
813		}
814	}*/
815
816	function initTicketForm(){
817		//calendar
818		blockOrderForm=false;
819		var formBox=$('.buy-ticket-page');
820		var form=$('.buy-ticket-page .form');//console.log(form);
821		var calendar=$('#ticket_date_inp');
822		var mkRemoveDates = calendar.data('reset').split(";");
823		var mkDateFrom=calendar.data('mkfrom')+'000';
824		var mkDateTo=calendar.data('mkto')+'000';
825		pickmeup.defaults.locales['ru'] = {
826			days: ['Воскресенье', 'Понедельник', 'Вторник', 'Среда', 'Четверг', 'Пятница', 'Суббота'],
827			daysShort: ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
828			daysMin: ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'],
829			months: ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь'],
830			monthsShort: ['Янв', 'Фев', 'Мар', 'Апр', 'Май', 'Июн', 'Июл', 'Авг', 'Сен', 'Окт', 'Ноя', 'Дек']
831		};
832		pickmeup('#'+calendar.attr('id'), {
833			date:calendar.val(),
834			position:'bottom',
835			hide_on_select:true,
836			format:'d.m.Y',
837			min:calendar.data('min'),
838			max:calendar.data('max'),
839			select_month: false,
840			select_year: false,
841			locale : 'ru',
842			render: function(date) {
843				var mkDate=date.valueOf()+'';
844				var disabled=false;
845				if( mkRemoveDates.indexOf(mkDate) != -1 ||
846						mkDateFrom > mkDate ||
847						mkDateTo < mkDate ){
848					disabled=true;
849				}
850				return {
851					disabled: disabled
852				}
853			}
854		});
855		$('#ticket_date_inp').on('pickmeup-change change',function(){
856			updateTicketForm();
857		});
858		$(".radio").on("change", function () {
859			updateTicketForm();
860		});
861
862		//tickets num
863		$('.set-num-item input').keypress(function(e) {
864			var a = e.which;
865			if (!(a==0/*delete*/
866					||a==8/*backspace*/
867					||(!e.shiftKey && (a>=48 && a<=57)))){
868						return false;
869					}
870		});
871		$('.set-num-item .plus').click(function(){
872			if(blockOrderForm) return;
873			var inp=$(this).parents('.set-num-item').find('input');
874			var val=inp.val()-0;
875			// console.log('plus');
876			inp.val(val+1).change();
877		});
878		$('.set-num-item .minus').click(function(){
879			if(blockOrderForm) return;
880			var inp=$(this).parents('.set-num-item').find('input');
881			var val=inp.val()-0;
882			// console.log('minus');
883			if(inp.val()>0) inp.val(val-1).change();
884		});
885
886		//contract
887		/*contractCheckbox=$('input[name="HAS_CONTRACT"]');
888		contractCheckbox.change(function(){
889			fadeContractFields(contractCheckbox);
890		});
891		fadeContractFields(contractCheckbox);*/
892
893		$('input[name="PERSONAL_PHONE"]').mask("+9 (999) 999-99-99");
894
895		$('.ticket-props,.set-tickets,.extra-charges').on('change','input,select',function(){///////
896			if(this.getAttribute('name')=='CONTRACT_ID' || this.getAttribute('name')=='CONTRACT_PASSWORD') return;
897			updateTicketForm();
898		});
899		form.submit(function(){
900			updateTicketForm('ORDER_TICKETS_SUBMIT=Y');
901			return false;
902		});
903	}
904
905	if($('.buy-ticket-page .form').length) initTicketForm();
906
907/*END TICKETS*/
908
909	$('.question').click(function(){$(this).toggleClass('active');});
910
911	//share in social services
912	$(".item-share").on("click", ".soc-item", function(){//TODO PREVIEW_TEXT!!!
913
914		var parent=$(this).parent();
915		var title=parent.data('title');
916		var pageLink=parent.data('link');
917		var id=parent.data('id');
918		var src=parent.data('src');
919		var descr=parent.data('text');
920		if ($(this).hasClass("fb"))
921			window.open("https://www.facebook.com/dialog/feed?app_id=421709585015161&display=popup&link="+pageLink+"%23"+id+"&picture="+src+"&name="+title,"Share Facebook",config="height=300, width=500");
922		else if($(this).hasClass("tw"))
923			window.open("http://twitter.com/share?text="+descr+"&url="+pageLink+"&img="+src+"%23"+id,"Share Twitter",config="height=300, width=500");
924		else if($(this).hasClass("gp"))
925			window.open("https://plus.google.com/share?url="+pageLink+"?img="+src+"%23"+id,"Share Google +",config="height=300, width=500");
926		else if($(this).hasClass("vk"))
927			window.open("https://vk.com/share.php?url="+pageLink+"%23"+id+"&title="+title+"&description="+"Описание"+"'&image="+src,"Share VK",config="height=300, width=500");
928		else if($(this).hasClass("ok"))
929			window.open("http://www.odnoklassniki.ru/dk?st.cmd=addShare&st._surl="+pageLink+"%23"+id+"&title="+title+"&description=&image="+src,"Share VK",config="height=300, width=500");
930		/*if($(this).hasClass("in"))
931			window.open("http://www.linkedin.com/shareArticle?mini=true&url="+src+"&title="+title+"&summary=text","Share LinkedIn",config="height=300, width=500");
932		*/
933	});
934
935	$('.inp-file').on('change','input[type="file"]',function(e){
936		var inpVal=$(this).val();
937		if(inpVal.length){
938			var fileName=inpVal.split('\\').pop();
939			var box=$(this).parents('.inp-file');
940			$('.name',box).html(fileName);
941			box.addClass('filled');
942		}else{
943			$(this).parents('.inp-file').removeClass('filled');
944		}
945	});
946
947
948	$('.toggle-hidden-link').click(function(){
949		var links=$('.toggle-hidden-link');
950		var texts=$('.hidden-text');
951		var curLink=$('.toggle-hidden-link.active');
952		var curText=$('.hidden-text.active');
953		if($(this).hasClass('active')){
954			if(!$(this).data('name').length){
955				curLink.removeClass('active');
956				curText.removeClass('active');
957				$('.baze-hidden-text').removeClass('hidden');
958			}
959		}else{
960			if($(this).data('name').length){
961				$('.page-title-box h1').text($(this).data('name'));
962			}if($(this).data('img').length){
963				$('.top-img-box').css('background-image','url("'+$(this).data('img')+'")');
964			}
965			curLink.removeClass('active');
966			curText.removeClass('active');
967			$('.baze-hidden-text').addClass('hidden');
968			$(this).addClass('active');
969			var index=links.index($(this));
970			texts.eq(index).addClass('active');
971		}
972	});
973
974	// YouTube videos resize
975	var $allVideos = $("iframe[src^='https://www.youtube.com'], iframe[src^='https://rutube.ru']");
976	$allVideos.each(function() {
977		$(this).data('aspectRatio', this.height / this.width).removeAttr('height').removeAttr('width');
978	});
979	$(window).resize(function() {
980		$allVideos.each(function(){
981			var $el = $(this),
982			newWidth=$el.parent().width();
983			// console.log(newWidth);
984			$el.width(newWidth).height(newWidth * $el.data('aspectRatio'));
985		});
986	}).resize();
987
988	/*$('.to-feedback').click(function(){
989		var url='/include/load_form.php';
990		$.ajax({
991			url: url,
992			success: function(data){
993				popupBox.html(data);
994				popup.fadeIn(300);
995				$('.form-box',popupBox);//.css({top:$('body').scrollTop()+'px'});
996				centerPopup(popupBox);
997				var form=$('.form',popupBox);
998				//Recaptchafree.reset();
999				//popupBox.on('submit','.form',function(){
1000				form.submit(function(){
1001					var $that = $(this),
1002					formData = new FormData($that.get(0)); // создаем новый экземпляр объекта и передаем ему нашу форму (*)
1003					$.ajax({
1004						url: url+'?iblock_submit=Отправить',
1005						type: $that.attr('method'),
1006						contentType: false, // важно - убираем форматирование данных по умолчанию
1007						processData: false, // важно - убираем преобразование строк по умолчанию
1008						data: formData,
1009						success: function(data){
1010							form.html($(data).find('.form').html());
1011						}
1012					});
1013					return false;
1014				});
1015			}
1016		});
1017		return false;
1018	});*/
1019
1020	/*
1021	$('.section__videotranslation').on('click','.img-box',function(e){
1022		e.preventDefault();
1023		var blockID = $(this).closest('.swiper-slide').data('block-id'),
1024				videoID = $(this).closest('.swiper-slide').data('video-id');
1025		// console.log(videoID);
1026		$.ajax({
1027			type: 'GET',
1028			context: this,
1029			url: '/include/load_video.php',
1030			data: {videoID: videoID, blockID: blockID},
1031			dataType:'html',
1032			cache: false,
1033			success: function(data){
1034					$('#video_iframe').html(data);
1035
1036					// YouTube videos resize
1037					var $allVideos = $("iframe[src^='https://www.youtube.com']");
1038					$allVideos.each(function() {
1039						$(this).data('aspectRatio', this.height / this.width).removeAttr('height').removeAttr('width');
1040					});
1041					$(window).resize(function() {
1042						$allVideos.each(function(){
1043							var $el = $(this),
1044							newWidth=$el.parent().width();
1045							console.log(newWidth);
1046							$el.width(newWidth).height(newWidth * $el.data('aspectRatio'));
1047						});
1048					}).resize();
1049				// console.log(data);
1050				}
1051		});
1052	});
1053*/
1054	$('.hamb_menu').on('click', function(){
1055    $(this).toggleClass('act');
1056    $('header').toggleClass('act');
1057		$('.mobile_menu').toggleClass('act');
1058		$('body, html').toggleClass('act');
1059		$('.header .top-line').toggleClass('act');
1060  });
1061
1062	$('.top_search').on('click', function(){
1063		$('.header__search').toggleClass('active');
1064		$('.header__search .inp').focus();
1065		// $('.top-line').toggleClass('scrolled');
1066	});
1067
1068
1069	$('.modal-popup').on('click', function(e){
1070    e.preventDefault();
1071    var target = $(this).data('target');
1072    $(target).addClass('active');
1073    $('#dark_bg').addClass('act');
1074    $('.header').addClass('modal-act');
1075  });
1076  $('#dark_bg, .modal .modal-close').on('click', function() {
1077    $('#dark_bg').removeClass('act');
1078    $('.modal').removeClass('active');
1079    $('.header').removeClass('modal-act');
1080  });
1081
1082
1083
1084	$('.zoom-img').click(function(event){
1085		var src=$(this).data('zoomsrc');
1086		if(src){
1087			var str='<div class="img-fade-box"><div class="img-box"><img src="'+src+'"/><div class="cross"></div></div></div>';
1088			popupBox.html(str);
1089			popup.fadeIn(300);
1090			centerPopup(popupBox);
1091		}else{
1092			console.log("Не найдено изображение для увеличения");
1093		}
1094	});
1095
1096	if ($("div").is(".popup-message-answer")) {
1097		var openPopupMess = $(".popup-message-answer");
1098		popupBox.html("<div class='message'>" + openPopupMess.html() + "</div>");
1099		popup.fadeIn(300);
1100		centerPopup(popupBox);
1101	}
1102
1103	$('.hidden-link-class').replaceWith(function(){
1104		return'<a href="'+$(this).data('link')+'" class="'+$(this).data('class')+'" target="_blank">'+$(this).html()+'</a>';
1105	});
1106
1107	$('.flex-control').jcsabfix();
1108
1109	$('[type="tel"], .phoneMask').inputmask({"mask": "+7 (999) 999-99-99"});
1110	$('.ageMask').inputmask({"mask": "9{1,2}"});
1111
1112  // $(window).smartresize(function(){
1113  //   $('.flex-control').jcsabfix();
1114	// });
1115
1116	// $(window).scroll(function () {
1117	// 		var hwPar = $('.w-paralax').height(),
1118	// 				hwParImg = $('#paralax-elka').height();
1119
1120	// 		$('#paralax-elka').css({
1121	// 			'bottom': hwPar-hwParImg-($(this).scrollTop() / 1.75) + "px" // 2.35
1122	// 		});
1123	// });
1124
1125	$('.agree').on('change', function() {
1126		const $form = $(this).closest('form');
1127
1128		$form.find('.js-send-form, .js-form-send').prop('disabled', !this.checked);
1129	});
1130
1131	$('.agree').each(function() {
1132		const $form = $(this).closest('form');
1133
1134		$form.find('.js-send-form, .js-form-send').prop('disabled', !this.checked);
1135	});
1136
1137
1138	// Закрытие объявлений advert-list
1139	if ($('.advert-list').length) {
1140		let advertClosed = localStorage.getItem('advertListClosed');
1141		if (advertClosed && (+advertClosed + 12 * 60 * 60 * 1000) > Date.now()) {
1142			$('.advert-list').remove();
1143		} else {
1144			$('.advert-list__close').on('click', function() {
1145				localStorage.setItem('advertListClosed', Date.now());
1146				$(this).closest('.advert-list').slideUp(200, function() {
1147					$(this).remove();
1148				});
1149			});
1150		}
1151	}
1152
1153	// popUp объявление
1154	if($('.popUpBox').length) {
1155		$.each($('.popUpBox'), function(i){
1156			let id = $(this).data('id');
1157			setTimeout(function() {
1158				popUpAd(id);
1159			}, 200 * i)
1160		});
1161	}
1162});
1163
1164// popUp объявление
1165function popUpAd(id) {
1166	let cookieDate = localStorage.getItem('cookieAdPopup'+id);
1167	let cookieNotification = $('#popUpBox'+id);
1168	let cookieBtn = cookieNotification.find('.popUpBox__close');
1169
1170	// сутки 86400000
1171	if(!cookieDate || (+cookieDate + 5 * 60 * 60 * 1000) < Date.now())
1172		$('#popUpBox'+id).addClass('show');
1173	else
1174		$('#popUpBox'+id).remove();
1175
1176	cookieBtn.on('click', function(){
1177		localStorage.setItem('cookieAdPopup'+id, Date.now());
1178		cookieNotification.removeClass('show');
1179		setTimeout(function() {
1180			cookieNotification.animate({height: 0, padding: 0, margin: 0}, 100);
1181		}, 250)
1182	})
1183}
1184/*
1185function popUpAd() {
1186	let cookieDate = localStorage.getItem('cookieAdPopup');
1187	let cookieNotification = $('#topImportantText');
1188	let cookieBtn = cookieNotification.find('.topImportantTextClose');
1189
1190	// сутки 86400000
1191	if(!cookieDate || (+cookieDate + 10800000) < Date.now()){
1192		$('#topImportantText').addClass('show');
1193		$(window).on('load resize', function() {
1194			let h = cookieNotification.height();
1195			$('#header').css('--h', h + 'px').addClass('show-ad');
1196			// $('#header').css('margin-top', h + 10).addClass('show-ad');
1197		});
1198	}
1199	cookieBtn.on('click', function(){
1200		localStorage.setItem('cookieAdPopup', Date.now());
1201		cookieNotification.removeClass('show');
1202		$('#header').removeClass('show-ad');
1203		// cookieNotification.removeClass('active');
1204	})
1205}
1206*/
1207
1208function videoResize(){
1209	// YouTube videos resize
1210	var $allVideos = $("iframe[src^='https://www.youtube.com'], iframe[src^='https://rutube.ru']");
1211	$allVideos.each(function() {
1212		$(this).data('aspectRatio', this.height / this.width).removeAttr('height').removeAttr('width');
1213	});
1214	$(window).resize(function() {
1215		$allVideos.each(function(){
1216			var $el = $(this),
1217			newWidth=$el.parent().width();
1218			// console.log(newWidth);
1219			$el.width(newWidth).height(newWidth * $el.data('aspectRatio'));
1220		});
1221	}).resize();
1222}
1223
1224// fix flex-jcsb last item
1225!function(i){jQuery.fn.jcsabfix=function(){return this.each(function(){for(var t=i(this),s=t.width(),a=t.attr("class"),n=t.find(":first-child"),l=Math.floor(n.outerWidth(!0)),c=n.attr("class"),d=Math.floor(s/l),f='<div class="'+a.split(" ").join("-")+"-"+c+'-jcsabfix" style="height:0;overflow:hidden;visibility:hidden;"></div>',h=0;h<d-1;h++)i('div[class="'+a.split(" ").join("-")+"-"+c+'-jcsabfix"').length<d-1&&t.append(f);i('div[class="'+a.split(" ").join("-")+"-"+c+'-jcsabfix"').width(l)})}}(jQuery);
1226
1227
1228var youtubeIdArr = [];
1229$('.video-index-hidden').each(function(i){
1230	youtubeIdArr.push($(this).attr('data-youtube-id'));
1231});
1232
1233// console.log(youtubeIdArr);
1234
1235var tag = document.createElement('script');
1236tag.src = "https://www.youtube.com/player_api";
1237var firstScriptTag = document.getElementsByTagName('script')[0];
1238firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
1239
1240	// var playlist=["0Bmhjf0rKe8","jQZtk-fCWQ4","5wosC9QLQTM"];
1241	var playlist=youtubeIdArr;
1242	var whonext=0;
1243	var player;
1244	function onYouTubePlayerAPIReady() {
1245		if(youtubeIdArr.length != 0) {
1246		player = new YT.Player('videoIndex', {
1247			height: '390',
1248			width: '640',
1249			videoId: playlist[0],
1250			events: {
1251				// 'onReady': onPlayerReady,
1252				'onReady': videoResize,
1253				'onStateChange': onPlayerStateChange
1254			}
1255		});
1256		whonext++;
1257		}
1258	}
1259	function playNext(){
1260	if(whonext>playlist.length-1){whonext=0}
1261	player.loadVideoById({'videoId': playlist[whonext]});
1262	whonext++;
1263	}
1264	function onPlayerReady(event) {
1265			event.target.playVideo();
1266			videoResize();
1267	}
1268	function onPlayerStateChange(event) {
1269			if(event.data === 0) {
1270					playNext();
1271			}
1272}
1273
1274(function () {
1275	var previousScroll = 0;
1276
1277	$(window).scroll(function(){
1278		 var currentScroll = $(this).scrollTop();
1279
1280		 if ($(window).scrollTop() > 39){
1281			if (currentScroll > previousScroll){
1282				$('.header .top-line, #header').addClass('down');
1283				//$('.bottom-line').removeClass('up');
1284			 } else {
1285				$('.header .top-line, #header').removeClass('down');
1286				//$('.bottom-line').addClass('up');
1287			 }
1288		 }
1289
1290		 previousScroll = currentScroll;
1291	});
1292
1293}());

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.