PageSourceSearch

https://www.care.lu/_assets/30585ad9d78c0e2e2c0a6b15f9204294/JavaScript/caregallery.1710842442.js

js care.lu collected 2026-10-02 05:33:55 UTC 3,491 bytes, 117 lines download raw bytes

1var TYPO3 = TYPO3 || {};
2TYPO3.caregallery = {
3	videoFrameId : false,
4	careGalleryPlayer: false,
5	ready: false,
6	aspectRatio: 1,
7	careGalleryStartVideoClick: function (gallery) {
8		var elem = $(gallery).find('.video-overlay').eq(0);
9		var clone = elem.clone(true);
10		var videoFrameIdN = $(clone).find('div[data-id]').eq(0).attr('data-id');
11		
12		if (videoFrameIdN != TYPO3.caregallery.videoFrameId) {
13			$('.tx_caregallery.video-active').remove();
14			var parent = $('body').eq(0);
15		
16			TYPO3.caregallery.caregalleryRemoveVideo();
17			$(clone).addClass('video-active');
18			
19			/*
20			var h = $(parent).height();
21			$(clone).height(h);	
22				
23			var pos = $(parent).position();
24			$(clone).offset(pos);
25			*/
26			
27			TYPO3.caregallery.videoFrameId = videoFrameIdN;
28			videoId = $(clone).find('div[data-id]').eq(0).attr('data-videoId');
29			$(clone).find('div[data-id]').eq(0).attr('id',TYPO3.caregallery.videoFrameId);
30			
31			$(parent).append(clone);			
32			
33			TYPO3.caregallery.ready = false;
34			TYPO3.caregallery.careGalleryPlayer = new YT.Player(
35			TYPO3.caregallery.videoFrameId, {
36				/*height: '390',*/
37				/*width: '640',*/
38				videoId: videoId,
39				events: {
40					onReady: TYPO3.caregallery.onPlayerReady
41				}
42			}
43			);
44			$(clone).height($('body').eq(0).height() - $('#mainNav').eq(0).height());
45			$(clone).offset({top:$('#mainNav').eq(0).height()});
46			var x = $(gallery).offset().top;
47			$(clone).find('.video-popup').css('margin-top',x-20+'px');
48			
49			$(clone).click(function(e){
50				var popup = $(this).find('.video-popup').eq(0);
51				var popupOffset = popup.offset();
52				if (e.pageX < popupOffset.left || e.pageY < popupOffset.top || e.pageX > (popupOffset.left + popup.width()) || e.pageY > (popupOffset.top + popup.height())) {
53					TYPO3.caregallery.caregalleryRemoveVideo();
54				}
55			});	
56		} else {
57			TYPO3.caregallery.playVideo();
58		}
59	},
60	playVideo: function() {
61		if (TYPO3.caregallery.careGalleryPlayer && TYPO3.caregallery.ready) {
62			$('body').addClass('tx_caregallery-video-playing');
63			$('.tx_caregallery.video-active').show();
64			setTimeout(function(){
65				TYPO3.caregallery.careGalleryPlayer.playVideo();
66			},50);
67		}
68	},
69	pauseVideo: function() {
70		if (TYPO3.caregallery.careGalleryPlayer && TYPO3.caregallery.ready) {
71			$('body').removeClass('tx_caregallery-video-playing');
72			$('.tx_caregallery.video-active').hide();
73			setTimeout(function(){ //
74				TYPO3.caregallery.careGalleryPlayer.pauseVideo();
75			},50); //
76		}
77	},
78	onPlayerReady: function() {
79		TYPO3.caregallery.ready = true;
80		
81		var iframe = TYPO3.caregallery.careGalleryPlayer.getIframe();
82		TYPO3.caregallery.aspectRatio = $(iframe).width() / $(iframe).height();
83		TYPO3.caregallery.resizeVideoFrame();
84		TYPO3.caregallery.playVideo();
85	},
86
87	caregalleryRemoveVideo: function() {
88		if (TYPO3.caregallery.careGalleryPlayer && TYPO3.caregallery.ready ) {
89			TYPO3.caregallery.pauseVideo();
90		} else {
91			$('.tx_caregallery.video-active').remove();
92			TYPO3.caregallery.careGalleryPlayer = false;
93			TYPO3.caregallery.videoFrameId = '';
94		}
95	},
96	resizeVideoFrame: function() {
97		if (TYPO3.caregallery.careGalleryPlayer) {
98			var iframe = TYPO3.caregallery.careGalleryPlayer.getIframe();
99			$(iframe).addClass('responsive');
100			$(iframe).height($(iframe).width() / TYPO3.caregallery.aspectRatio);
101		}
102	}
103	
104}
105
106$(window).resize(function() {
107	TYPO3.caregallery.resizeVideoFrame();
108});
109
110
111
112$(document).keyup(function(e){
113    if(e.keyCode === 27) {
114		TYPO3.caregallery.caregalleryRemoveVideo();
115	}
116});
117

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.