PageSourceSearch

https://www.magnumphotos.com/event/wp-content/themes/magnumshop/js…?ver=db5b05210f62fb736da58482f1c57f7e

js magnumphotos.com collected 2026-09-24 08:26:59 UTC 19,914 bytes, 811 lines download raw bytes

1var $ = jQuery.noConflict();
2var $window = jQuery(window);
3
4var rtime;
5var timeout = false;
6var delta = 200;
7var parallaxrunset = 0;
8var pagePos = 0;
9
10jQuery(window).resize(function(){
11	rtime = new Date();
12	if(timeout === false){
13		timeout = true;
14		setTimeout(resizeend, delta);
15	}
16});
17
18function resizeend(){
19	if(new Date() - rtime < delta){
20		setTimeout(resizeend, delta);
21	}else{
22		timeout = false;
23		headerReset();
24		headerDesktop();
25		headerMobile();
26
27		heroStickyContent();
28		slickProductsCarouselThumbSquare();
29		setEqualHeight();
30
31		rowEqHeightProductList();
32	}
33}
34
35function handleOutOfStock(){
36
37	if($('.layout_block-pdp_basket').length){
38		if($('.layout_block-pdp_basket').isOnScreen()){
39			$('.infobar-buy').removeClass('open');
40		}else{
41			if($('.layout_block-pdp_basket .btn-no-stock').length){
42				$('.infobar-buy').removeClass('open');
43			} else{
44				$('.infobar-buy').addClass('open');
45			}
46		}
47	}
48}
49
50jQuery(document).ready(function(){
51	$(document).on('click', '.cookies-panel .cookies-close', function(event){
52		$('.cookies-panel').hide();
53	});
54
55
56	popup();
57	slickPdpReady();
58	slickReady();
59
60	headerDesktop();
61	headerMobile();
62	headerSidebarTriggers();
63
64	sidebarSearch();
65
66	heroStickyContent();
67	productDetails();
68
69	pageOverlay();
70	setEqualHeight();
71
72	// slickPdpReady();
73	// slickReady();
74
75	figcaptionOpen();
76	accordionScrollTo();
77	bioOpen();
78	// animationCSS();
79
80	handleOutOfStock();
81	jQuery(window).scroll(function(event){
82		headerDesktop();
83
84		handleOutOfStock();
85	});
86});
87
88
89jQuery(window).on('load', function(event){
90	jQuery('body').addClass('loaded');
91
92	// jQuery(window).trigger('resize');
93	// this make double script actions
94	heroStickyContent();
95	productDetails();
96	slickProductsCarouselThumbSquare();
97
98	setEqualHeight();
99	scrollTo();
100
101	rowEqHeightProductList();
102
103	preloader();
104	// pdpLightbox(); //bartek add own function
105});
106
107//
108//
109// functions
110//
111//
112
113function preloader(){
114	jQuery('.preloader-wrapper').addClass('done');
115}
116
117/* set same height for all col in row-eq-height*/
118function rowEqHeightProductList(){
119	jQuery('.row-eq-height').each(function(){
120		jQuery(this).children("[class*=' col']").height('auto');
121		//if ($(window).width() > 992) {
122		var seth = 0;
123		jQuery(this).children("[class*=' col']").each(function(){
124			newh = jQuery(this).height();
125			if(newh > seth){
126				seth = newh;
127			}
128		});
129		jQuery(this).children("[class*=' col']").height(seth);
130		//console.log(seth);
131		/*} else {
132			jQuery(this).children("[class*=' col']").height('auto');
133		}*/
134	});
135}
136
137var pagePos = 0;
138
139function popup(){
140	if($.cookie('shop-popup') === undefined){
141		jQuery('.popup').fadeIn();
142	}
143	jQuery(document).on('click tap', '.popup .popup-close, .popup .btn', function(event){
144		event.preventDefault();
145		var href = jQuery(this).attr('href');
146		$.cookie('shop-popup', Date(), {
147			expires: 99,
148			path: '/'
149		});
150		jQuery('.popup').fadeOut(function(){
151			if(href !== undefined){
152				window.location = href;
153			}
154		});
155	})
156}
157
158function headerReset(){
159	$('body').removeClass('scrolled');
160	$('.website-header').removeClass('navbar-hidden');
161	$('.dropdown-submenu-content').removeClass('open');
162	//$('.website-header .mobile-back').remove();
163}
164
165function headerDesktop(){
166	if($(window).outerWidth() > 991){
167		// sticky menu
168		if($(window).scrollTop() > (0)){
169			$('body').addClass('scrolled');
170			$('.website-header').addClass('navbar-hidden');
171			if(pagePos > $(window).scrollTop()){
172				// scroll up
173				$('.website-header').removeClass('navbar-hidden');
174				$('body').addClass('scrolled-up');
175				$('body').removeClass('scrolled-down');
176			}
177			if(pagePos < $(window).scrollTop()){
178				// scroll down
179				$('body').removeClass('scrolled-up');
180				$('body').addClass('scrolled-down');
181				$('li.dropdown').removeClass('open');
182				$('.main-menu-action .trigger').removeClass('open');
183				$('.main-menu-sidebar-panel').removeClass('panel-open');
184				$('.page-overlay').removeClass('open');
185			}
186			pagePos = $(window).scrollTop();
187		}else{
188			$('.website-header').removeClass('navbar-hidden');
189			$('body').removeClass('scrolled');
190			$('body').removeClass('scrolled-up');
191			$('body').removeClass('scrolled-down');
192		}
193		//
194		//
195		// mute other menu links on hover
196		$('.main-menu').hover(
197			function(){
198				item = $(this).find('ul.navbar-nav > li > a, ul.navbar-nav > li > button');
199				$(item).hover(
200					function(){
201						$(item).addClass('mute');
202						$(this).removeClass('mute');
203					},
204					function(){
205						$(item).removeClass('mute');
206					}
207				);
208			},
209			function(){
210				$('.main-menu a, .main-menu button').removeClass('mute');
211			}
212		);
213		//
214		//
215		// open submenu on hover
216		//$('.main-menu-submenu > .submenu-dropdown > a').mouseenter(
217		$('.main-menu-submenu > li > a').mouseenter(
218			function(){
219				$('.dropdown-submenu-content').removeClass('open');
220				$(this).parent('.submenu-dropdown').find('.dropdown-submenu-content').addClass('open');
221			}
222		);
223
224		var clearSubmenuTimeout;
225		$(document).on('mouseleave', '.dropdown-menu-content ul.main-menu-submenu',
226			function(event){
227				clearTimeout(clearSubmenuTimeout);
228				clearSubmenuTimeout = setTimeout(function(){
229					$('.dropdown-submenu-content').removeClass('open');
230				}, 500);
231			});
232		$(document).on('mouseenter', '.dropdown-submenu-content', function(event){
233			clearTimeout(clearSubmenuTimeout);
234		});
235		$(document).on('mouseleave', '.dropdown-submenu-content', function(event){
236			setTimeout(function(){
237				$('.dropdown-submenu-content').removeClass('open');
238			}, 500);
239		});
240	}
241}
242
243function headerMobile(){
244	rwd = $('body').attr('data-rwd');
245
246	if($(window).outerWidth() <= 991){
247		rwdUpdate = 'mobile';
248	}else{
249		rwdUpdate = 'desktop';
250	}
251
252	$(document).on('click', '.main-menu-submenu .submenu-dropdown > a', function(event){
253		if($(window).outerWidth() <= 991){
254			event.preventDefault();
255		}
256		//$('.main-menu-submenu .submenu-dropdown').removeClass('open');
257		$(this).closest('.submenu-dropdown').toggleClass('open');
258	});
259	$(document).on('click', '.dropdown .dropdown-toggle', function(event){
260		if($(window).outerWidth() <= 991){
261			event.preventDefault();
262		}
263	});
264
265	if(rwd != rwdUpdate){
266		var layoutPdpBasket = $('.layout_block-pdp_basket');
267		var layoutPdpGallery = $('.layout_block-pdp_gallery');
268
269
270		if($(window).outerWidth() <= 991){
271
272
273			$('.main-menu-external li.dropdown').removeClass('dropdown');
274			$('.main-menu-external a.dropdown-toggle').removeAttr('class').removeAttr('data-toggle');
275
276			// $('.nav.navbar-nav > li.dropdown').each(function() {
277			//
278			// 	var hrefName = $(this).find('> a').html()
279			// 	var href = $(this).find('> a').attr('href')
280			// 	if (typeof (href) != 'undefined') {
281			// 		$(this).find('.main-menu-submenu').prepend('<li><a href="'+ href +'">'+ hrefName +'</a></li>');
282			// 	}
283			// })
284
285
286			$(document).on('click', '.infobar-more', function(event){
287				event.preventDefault();
288				$('.section-infobar .inner-right').toggleClass('open');
289			});
290
291			$(document).on('click', '.mobile-back button', function(event){
292				event.preventDefault();
293				console.log('--- back');
294				$('#mainMenu ul.nav.navbar-nav li.dropdown').removeClass('open');
295			});
296
297			//
298			//
299			// PDP - change layout on Mobile bebok
300			// $('.product_details-gallery-nav-desktop').remove(); > nie aktualne
301
302			if(typeof $('.slick-pdp-gallery-carousel').slick !== 'undefined'){
303				$('.slick-pdp-gallery-carousel').slick('unslick');
304				$('.slick-pdp-gallery-carousel-nav').slick('unslick');
305			}
306
307			//layoutPdpBasket.remove().clone().insertAfter('.product_details-basket .product_details-quote');
308			layoutPdpGallery.remove().clone().insertAfter('.product_details-basket .product_details-labels').removeClass('col-xs-12').removeClass('col-md-8').removeClass('col-md-pull-4');
309
310			slickPdpReady()
311
312		}else{
313
314			if(typeof $('.slick-pdp-gallery-carousel').slick !== 'undefined'){
315				$('.slick-pdp-gallery-carousel').slick('unslick');
316				$('.slick-pdp-gallery-carousel-nav').slick('unslick');
317			}
318
319			// layoutPdpBasket.remove().clone().insertAfter('.product_details-basket .product_details-labels');
320			layoutPdpGallery.remove().clone().insertAfter('.product_details-basket').addClass('col-xs-12').addClass('col-md-8').addClass('col-md-pull-4');
321
322			slickPdpReady()
323		}
324
325	}
326	$('body').attr('data-rwd', rwdUpdate);
327}
328
329function headerSidebarTriggers(){
330	$('.trigger').on('click', function(){
331		var targetClick = $(this).data('target');
332		var targetPanel = $('.main-menu-sidebar-panel.panel-open').data('target');
333		if(targetClick == targetPanel){
334			$('.navbar-nav .trigger').removeClass('open');
335			$('.page-overlay').removeClass('open');
336			$('.main-menu-sidebar-panel').removeClass('panel-open');
337			$('body').removeClass('scroll-blocked');
338		}else{
339			$('.navbar-nav .trigger').removeClass('open');
340			$('.navbar-nav .trigger[data-target="' + targetClick + '"]').addClass('open');
341			$('.page-overlay').removeClass('open');
342			$('.main-menu-sidebar-panel').removeClass('panel-open');
343			$('.main-menu-sidebar-' + targetClick).addClass('panel-open');
344			$('.page-overlay').addClass('open');
345			$('body').addClass('scroll-blocked');
346		}
347	});
348}
349
350function sidebarSearch(){
351	jQuery(document).on('focus', '.form-control-search', function(event){
352		jQuery('.sidebar-search-input').addClass('active');
353	});
354	jQuery(document).on('blur', '.form-control-search', function(event){
355		jQuery('.sidebar-search-input').removeClass('active');
356	});
357	jQuery(document).on('keyup', '.form-control-search', function(event){
358		val = jQuery(this).val();
359		if(val.length > 0){
360			jQuery('.sidebar-search-input').addClass('filled');
361		}else{
362			jQuery('.sidebar-search-input').removeClass('filled');
363		}
364	});
365	jQuery(document).on('click', '.form-search-close', function(event){
366		jQuery('.form-control-search').val('');
367		jQuery('.sidebar-search-input').removeClass('filled');
368	});
369}
370
371function heroStickyContent(){
372	if($(window).outerWidth() > 768){
373		heroContentHeight = $('.section-hero .hero-inner').outerHeight();
374		$('.section-hero--bottom .hero-inner').css('margin-top', -heroContentHeight);
375		$('.section-hero--top .hero-inner').css('margin-top', -heroContentHeight);
376	}
377}
378
379function productDetails(){
380	// fix if height is different as in CSS
381	// pdpGalleryNavDesktopHeight = $('.product_details-gallery-nav-desktop').outerHeight();
382	// $('.section_product_details-main .layout_block-pdp_gallery .slick-pdp-gallery').css('margin-top', -pdpGalleryNavDesktopHeight);
383
384	pdpFilterMinHeight = $('#filter_mobile_content').outerHeight();
385	$('.category-listing-products').css('min-height', pdpFilterMinHeight);
386}
387
388function pageOverlay(){
389
390	// bebok
391	$(document).on('mouseenter', '.nav.navbar-nav > li > a', function(event){
392		$('.nav.navbar-nav .dropdown').removeClass('open');
393
394		if($(this).closest('li').hasClass('dropdown'))
395			$(this).closest('li').addClass('open');
396	});
397
398	$(document).on('mouseleave', '.dropdown .dropdown-menu', function(event){
399		$(this).closest('.dropdown').removeClass('open');
400	});
401
402	if($(window).outerWidth() < 991){
403		$(document).on('click', '.nav.navbar-nav > li.dropdown > a', function(event){
404			return false;
405		})
406	}
407
408
409	$(document).on('click', '.navbar-toggle', function(event){
410		$(this).toggleClass('open');
411		if($(this).hasClass('open')){
412			$('body').addClass('scroll-blocked');
413			$('.page-overlay').addClass('open');
414		}else{
415			$('body').removeClass('scroll-blocked');
416			$('.page-overlay').removeClass('open');
417		}
418	});
419
420	if($(window).outerWidth() > 991){
421		$(document).on('click', '.page-overlay', function(event){
422			$('.main-menu-sidebar-panel').removeClass('panel-open');
423			$('.page-overlay').removeClass('open');
424			$('body').removeClass('scroll-blocked');
425		});
426	}
427}
428
429function accordionScrollTo(){
430	$('.panel-default.panel-scroll').on('shown.bs.collapse', function(){
431		$('html,body').animate({
432				scrollTop: $(this).children('.panel-collapse').offset().top - 200
433			},
434			500);
435	});
436}
437
438function bioOpen(){
439	var nav = $('.bio-desc-full'),
440		animateTime = 500,
441		navLink = $('.bio-desc-trigger');
442	navLink.click(function(){
443		if(nav.height() === 240){
444			autoHeightAnimate(nav, animateTime);
445			nav.addClass('open');
446			navLink.text('HIDE BIO');
447		}else{
448			nav.stop().animate({
449				height: '240px'
450			}, animateTime);
451			nav.removeClass('open');
452			navLink.text('READ FULL BIO');
453		}
454	});
455
456	/* Function to animate height: auto */
457	function autoHeightAnimate(element, time){
458		var curHeight = element.height(), // Get Default Height
459			autoHeight = element.css('height', 'auto').height(); // Get Auto Height
460		element.height(curHeight); // Reset to Default Height
461		element.stop().animate({
462			height: autoHeight
463		}, time); // Animate to Auto Height
464	}
465}
466
467function figcaptionOpen(){
468	$(document).on('click', '.figcaption .figcaption-open', function(event){
469		$(this).closest('.figcaption').addClass('open');
470	});
471}
472
473function pdpLightbox(){
474	if($('.pdp-lightbox').length == 1){
475		//
476		// open lightbox
477		$(document).on('click', '.pdp-lightbox-trigger', function(event){
478			event.preventDefault();
479			if($('.pdp-lightbox').hasClass('open')){
480				$('.pdp-lightbox').removeClass('open');
481				$('body').removeClass('scroll-blocked');
482
483			}else{
484				$('.pdp-lightbox').addClass('open');
485				$('body').addClass('scroll-blocked');
486			}
487		});
488		//
489		// close lightbox
490		$(document).on('click', '.lightbox-close', function(event){
491			$('.pdp-lightbox').removeClass('open');
492			$('body').removeClass('scroll-blocked');
493		});
494	}
495}
496
497function setEqualHeight(){
498	$('.setEqualHeight').each(function(){
499		if($(window).outerWidth() > 768){
500			var seth = 0;
501			var newh = 0;
502			$(this).find('.setEqualHeight_element').each(function(){
503				newh = $(this).outerHeight();
504				if(newh > seth){
505					seth = newh;
506				}
507			});
508			$(this).find('.setEqualHeight_element').css('min-height', seth);
509		}
510	});
511	$('.setEqualHeightAlways').each(function(){
512		var seth = 0;
513		var newh = 0;
514		$(this).find('.setEqualHeight_element').each(function(){
515			newh = $(this).outerHeight();
516			if(newh > seth){
517				seth = newh;
518			}
519		});
520		$(this).find('.setEqualHeight_element').css('min-height', seth);
521	});
522}
523
524// if elements is in viewport
525
526$.fn.isOnScreen = function(){
527	var win = $(window);
528
529	var viewport = {
530		top: win.scrollTop(),
531		left: win.scrollLeft()
532	};
533	viewport.right = viewport.left + win.width();
534	viewport.bottom = viewport.top + win.height();
535
536	var bounds = this.offset();
537	bounds.right = bounds.left + this.outerWidth();
538	bounds.bottom = bounds.top + this.outerHeight();
539
540	return (!(viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom));
541};
542
543
544//PLUGINS
545function slickPdpReady(){
546	$('.slick-pdp-gallery-carousel').each(function(){
547		sliderContainer = $(this);
548		//sliderContainer.addClass('init');
549		slider = sliderContainer.slick({
550			slidesToShow: 1,
551			slidesToScroll: 1,
552			arrows: true,
553			dots: false,
554			speed: 500,
555			infinite: false,
556			asNavFor: '.slick-pdp-gallery-carousel-nav'
557		});
558	});
559
560	$('.slick-pdp-gallery-carousel-nav').each(function(){
561		sliderContainer = $(this);
562		//sliderContainer.addClass('init');
563		slider = sliderContainer.slick({
564			slidesToShow: 6,
565			slidesToScroll: 1,
566			arrows: true,
567			dots: false,
568			focusOnSelect: true,
569			infinite: false,
570			speed: 500,
571			asNavFor: '.slick-pdp-gallery-carousel',
572			responsive: [
573				{
574					breakpoint: 1440,
575					settings: {
576						slidesToShow: 5
577					}
578				},
579				{
580					breakpoint: 768,
581					settings: {
582						slidesToShow: 4
583					}
584				},
585				{
586					breakpoint: 480,
587					settings: {
588						slidesToShow: 3
589					}
590				}
591			]
592		});
593	});
594
595}
596
597function slickReady(){
598	if($(window).outerWidth() < 992){
599		$('.slick-pdp-gallery').each(function(){
600			sliderContainer = $(this);
601			slider = sliderContainer.slick({
602				slidesToShow: 1,
603				slidesToScroll: 1,
604				arrows: false,
605				dots: false,
606				speed: 500,
607				infinite: false,
608				asNavFor: '.slick-pdp-gallery-nav-mobile'
609			});
610		});
611		$('.slick-pdp-gallery-nav-mobile').each(function(){
612			sliderContainer = $(this);
613			slider = sliderContainer.slick({
614				slidesToShow: 5,
615				slidesToScroll: 1,
616				arrows: true,
617				dots: false,
618				focusOnSelect: true,
619				infinite: false,
620				speed: 500,
621				asNavFor: '.slick-pdp-gallery',
622				responsive: [{
623					breakpoint: 768,
624					settings: {
625						slidesToShow: 4
626					}
627				},
628					{
629						breakpoint: 480,
630						settings: {
631							slidesToShow: 3
632						}
633					}
634				]
635			});
636		});
637	}
638
639	if($(window).outerWidth() >= 992){
640		$('.slick-pdp-gallery-nav-desktop').each(function(){
641			sliderContainer = $(this);
642			slider = sliderContainer.slick({
643				slidesToShow: 5,
644				slidesToScroll: 1,
645				arrows: true,
646				dots: false,
647				focusOnSelect: true,
648				infinite: false,
649				speed: 500,
650				vertical: true
651			});
652		});
653		$('.slick-lightbox-gallery-nav').each(function(){
654			sliderContainer = $(this);
655			slider = sliderContainer.slick({
656				slidesToShow: 5,
657				slidesToScroll: 1,
658				arrows: true,
659				dots: false,
660				focusOnSelect: true,
661				infinite: false,
662				speed: 500,
663				vertical: true
664			});
665		});
666	}
667
668	$('.slick-products-carousel').each(function(){
669		sliderContainer = $(this);
670		slider = sliderContainer.slick({
671			slidesToShow: 4,
672			slidesToScroll: 1,
673			arrows: true,
674			dots: false,
675			focusOnSelect: false,
676			infinite: false,
677			speed: 500,
678			responsive: [{
679				breakpoint: 1280,
680				settings: {
681					slidesToShow: 3
682				}
683			},
684				{
685					breakpoint: 992,
686					settings: {
687						slidesToShow: 2
688					}
689				},
690				{
691					breakpoint: 480,
692					settings: {
693						slidesToShow: 1.2
694					}
695				}
696			]
697		});
698	});
699
700	$('.slick-photographers-carousel').each(function(){
701		sliderContainer = $(this);
702		slider = sliderContainer.slick({
703			slidesToShow: 5,
704			slidesToScroll: 1,
705			arrows: true,
706			dots: false,
707			focusOnSelect: true,
708			infinite: false,
709			speed: 500,
710			responsive: [{
711				breakpoint: 1280,
712				settings: {
713					slidesToShow: 3
714				}
715			},
716				{
717					breakpoint: 992,
718					settings: {
719						slidesToShow: 2
720					}
721				},
722				{
723					breakpoint: 480,
724					settings: {
725						slidesToShow: 1.2
726					}
727				}
728			]
729		});
730	});
731
732	$('.slick-carousel-images').each(function(){
733		sliderContainer = $(this);
734		slider = sliderContainer.slick({
735			slidesToScroll: 1,
736			arrows: false,
737			dots: false,
738			focusOnSelect: true,
739			infinite: false,
740			speed: 500,
741			variableWidth: true,
742			infinite: true
743		});
744	});
745}
746
747function slickProductsCarouselThumbSquare(){
748	productThumbHeight = $('.section-products-carousel .product-thumb').outerWidth();
749	$('.section-products-carousel .product-thumb').css('min-height', productThumbHeight).css('height', productThumbHeight);
750}
751
752function scrollTo(){
753	if($('.section-infobar').length){
754		infobarHeight = 40;
755	}
756
757	$("a.scrollto").on('click', function(event){
758		if(this.hash !== ""){
759			event.preventDefault();
760
761			var hash = this.hash;
762			var tab = $(this).data('tab');
763
764			$('a[href="' + tab + '"]').click();
765
766			if($(window).outerWidth() >= 992){
767				$('html, body').animate({
768					scrollTop: $(hash).offset().top - infobarHeight
769				}, 500, function(){
770					window.location.hash = hash;
771				});
772			}else{
773				$('html, body').animate({
774					scrollTop: $(hash).offset().top - 100
775				}, 500, function(){
776					window.location.hash = hash;
777				});
778			}
779		}
780	});
781
782
783}
784
785//WAYPOINT ANIMATE CSS
786function is_touch_device(){
787	return 'ontouchstart' in window // works on most browsers
788		||
789		'onmsgesturechange' in window; // works on ie10
790}
791
792function animationCSS(){
793	if(!is_touch_device()){
794		jQuery('*[data-animationcss]').addClass(" animated ");
795
796		/* ================ ANIMATED CONTENT ================ */
797		if(jQuery(".animated")[0]){
798			jQuery('.animated').css('opacity', '0');
799		}
800
801		/* jQuery('.triggerAnimation').waypoint(function() { */
802		jQuery('*[data-animationcss]').waypoint(function(){
803			var animation = jQuery(this).attr('data-animationcss');
804			jQuery(this).css('opacity', 1);
805			jQuery(this).addClass(" animated " + animation);
806		}, {
807			offset: '80%',
808			triggerOnce: true
809		});
810	}
811}

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.