PageSourceSearch

http://lastronomieselaraconte.fr/components/com_djtabs/assets/script.js

js lastronomieselaraconte.fr collected 2026-10-08 05:26:25 UTC 10,588 bytes, 359 lines download raw bytes

1
2	function setTabsWidth(rows, mod_prefix){
3		
4		if(isIE() && isIE()<=8)
5			return;
6		
7		if (!mod_prefix)
8			mod_prefix = '';
9			
10		if (!rows)
11			rows = 1;
12		
13		var tab = document.id(mod_prefix+'djtab1');
14		var tabs = document.id(mod_prefix+'djtabs');
15		var titlesArray = $$('.'+mod_prefix+'djtabs_help_class');
16		var t_count = titlesArray.length;
17	
18	
19		if (tab && window.getSize().x > 480 && t_count > rows)
20		{
21		
22		
23			var margins = parseInt(tab.getStyle('margin-left')) + parseInt(tab.getStyle('margin-right'));
24			var paddings = parseInt(tab.getStyle('padding-left')) + parseInt(tab.getStyle('padding-right'));
25			var borders = parseInt(tab.getStyle('border-left')) + parseInt(tab.getStyle('border-right'));
26			var offset = margins + paddings + borders;
27			
28			
29			var tabsSummedWidth = 0;
30			
31			for (k=0; k < t_count; k++)
32			{
33					tabsSummedWidth = tabsSummedWidth + parseInt(titlesArray[k].getStyle('width'));		
34			}
35			
36			tabsSummedWidth = tabsSummedWidth + (offset * t_count);
37		
38			
39			var available_space = 
40				parseInt(tabs.getStyle('width')) + 
41				parseInt(tabs.getStyle('padding-left')) + 
42				parseInt(tabs.getStyle('padding-right'))
43				- 2;
44				
45		
46			if (tabsSummedWidth > available_space)
47			{
48				
49				r = t_count % rows;
50				l = parseInt(t_count / rows);
51		
52				var rows_array = new Array();
53				
54				for (i=0; i < rows; i++)
55				{
56					rows_array.push(l);
57				}
58				
59				for (i=0; i < r; i++)
60				{
61					rows_array[i] = rows_array[i] + 1;
62				}
63				
64				var rows_array_copy = rows_array.slice(0);
65	
66				var row_t_count;
67				var tabNewWidth;
68				var tab_class;
69				
70		  		for (i=0; i < t_count; i++)
71				{	
72					for (j=0; j < rows; j++)
73					{
74						if (rows_array_copy[j]>0){
75							row_t_count = rows_array[j];
76							rows_array_copy[j] = rows_array_copy[j] - 1;
77							
78							if(j==0)
79								tab_class = 'first-row';
80							else if(j==rows-1)
81								tab_class = 'last-row';
82							else
83								tab_class = 'n-row';
84							
85							break;
86						}
87							
88					}
89	
90					tabNewWidth = parseInt(((available_space - (row_t_count * offset)) / row_t_count) - 1);
91					
92					var n_tab = document.id(mod_prefix+'djtab'+(i+1));
93					
94					n_tab.addClass(tab_class);
95					n_tab.removeClass('tabsBlock');
96					n_tab.style.width=tabNewWidth+'px';
97					document.id(mod_prefix+'djtabs_title_img_right'+(i+1)).setStyle('left',tabNewWidth + paddings - 2);	
98				}
99				
100			if(rows>1)
101				document.id(mod_prefix+'djtabs').addClass('rows');
102				
103			}
104		
105		}
106		else if (tab && (window.getSize().x <= 480 || t_count <= rows)){
107			for (i=1; i<=t_count; i++)
108			{
109				document.id(mod_prefix+'djtab'+i).addClass('tabsBlock');
110			}
111		}
112	
113	}
114	
115	 
116	function resetTabsWidth(mod_prefix){
117		if(isIE() && isIE()<=8)
118			return;
119
120		if (!mod_prefix)
121			mod_prefix = '';
122		
123	 		var tab = document.id(mod_prefix+'djtab1');
124	 	  	if (tab)
125	  		{
126	  			var titlesArray = $$('.'+mod_prefix+'djtabs_help_class');
127	  			var paddings = parseInt(tab.getStyle('padding-left')) + parseInt(tab.getStyle('padding-right'));
128
129	  				var tabWidth;
130	  				for (l=1; l<=titlesArray.length; l++) //reseting width
131					{	
132						document.id(mod_prefix+'djtab'+l).removeClass('tabsBlock');
133						tabWidth = document.id(mod_prefix+'djtab'+l).getStyle('width');
134						document.id(mod_prefix+'djtab'+l).removeAttribute('style');
135						document.id(mod_prefix+'djtabs_title_img_right'+(l)).setStyle('left',tabWidth + paddings - 2);	
136					}
137	  		}
138	}
139	 
140	
141	function setPanelsText(mod_prefix){
142		if(isIE() && isIE()<=8)
143			return;
144	
145		if (!mod_prefix)
146			mod_prefix = '';
147				
148		var panelArray = $$('#'+mod_prefix+'djtabs .djtabs-panel');
149
150		for (var j=0; j<panelArray.length; j++){
151				
152			var panelWidth = parseInt(panelArray[j].getStyle('width')); //panel width
153
154			var spanTitle = null; 
155			var spanDate = null; 
156			var spanDateWidth = 0;
157			var spanTogglerWidth = 0;
158			var spanTitleMargins = 0;
159			var spanTitleWidth = 0;
160			for (var i = 0; i < panelArray[j].children.length; i++){
161				if (panelArray[j].children[i].className == "djtabs-panel-title"){
162					spanTitle = panelArray[j].children[i];
163					spanTitleWidth = getFullWidth(panelArray[j].children[i]);
164					spanTitleMargins = getMargins(panelArray[j].children[i]);
165			    }
166			    else if (panelArray[j].children[i].className == "djtabs-panel-date"){
167					spanDate = panelArray[j].children[i];
168					spanDateWidth = getFullWidth(panelArray[j].children[i]);
169			    }
170			    else if (panelArray[j].children[i].className == "djtabs-panel-toggler"){
171					spanTogglerWidth = getFullWidth(panelArray[j].children[i]);
172			    }      
173			}
174			
175			if(spanTitle){
176				if(panelWidth < spanTitleWidth+spanDateWidth+spanTogglerWidth)
177					spanTitle.setStyle('width',panelWidth-spanDateWidth-spanTogglerWidth-spanTitleMargins);
178			}			
179			
180		}
181	}
182	
183	
184	function resetPanelsText(mod_prefix){
185		if(isIE() && isIE()<=8)
186			return;
187	
188		if (!mod_prefix)
189			mod_prefix = '';
190				
191		var panelArray = $$('#'+mod_prefix+'djtabs .djtabs-panel-title');
192
193		for (var j=0; j<panelArray.length; j++){			
194			panelArray[j].removeAttribute('style');
195		}
196	}
197	
198	
199	function getFullWidth(el){	
200		return el ? el.offsetWidth + getMargins(el) : 0;	
201	}
202
203	function getMargins(el){
204		return el ? parseInt(el.getStyle('margin-left')) + parseInt(el.getStyle('margin-right')) : 0;
205	}
206	
207	function isIE () {
208		var myNav = navigator.userAgent.toLowerCase();
209		return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : false;
210	}
211	
212
213	function toggleVideo(el, task, ie_fix){
214		
215		if(isIE()<=8){
216			return;
217		}
218		
219		if(ie_fix){
220			var UAString = navigator.userAgent;
221			if(UAString.indexOf("Windows NT 10.0") !== -1 && UAString.indexOf("Trident") !== -1 && UAString.indexOf("rv:11") !== -1){
222				return;
223			} //ie<=8 / ie11(win10) Fix
224		}
225		
226		var post_msg;
227		var iframe;
228		var djVideoWrapper = el.getElementsByClassName("djVideoWrapper")[0];
229		
230		if (djVideoWrapper){
231			
232			iframe = djVideoWrapper.getElementsByTagName("iframe")[0];
233			
234			if (iframe){
235				
236				if(iframe.src.contains('vimeo'))
237					post_msg = task ? '"method":"play"' : '"method":"pause"';
238				else if(iframe.src.contains('youtube'))
239					post_msg = task ? '"func":"playVideo"' : '"func":"pauseVideo"';
240
241				if(post_msg)
242					iframe.contentWindow.postMessage('{"event":"command",'+post_msg+'}', '*');
243			}
244		}
245	}
246	
247	// wcag
248  	window.addEvent('domready', function(){
249  		
250		$$('.djtabs-title').addEvent('focus', function() {
251			if($(this).hasClass('djtabs-active')){
252				return; // 1.3.1 fix - don't process if already have focus
253			}
254			
255			var tab_no = $(this).getProperty('data-tab-no');
256			var focus_el;
257			var main_wrapper = $(this).getParent().getParent().getParent();
258
259			if(tab_no){
260		    	focus_el = main_wrapper.getElements('.djtabs-body[data-tab-no="'+tab_no+'"]');
261		    	if(focus_el.length){
262		    		focus_el[0].focus();
263		    	}
264			}
265		});
266		$$('.djtabs-body').addEvent('focus', function() {
267			var tab_no = $(this).getProperty('data-tab-no');
268			tab_no = tab_no ? tab_no - 1 : 'undefined';
269			
270			if(tab_no != 'undefined'){
271				var main_accordion = $(this).getParent().getParent().getParent();
272				if(main_accordion.id){
273					if(!main_accordion.getElements('.djtabs-title[data-tab-no="'+(parseInt(tab_no)+1)+'"]')[0].hasClass('djtabs-active')){
274						window[main_accordion.id].display(tab_no);
275						window[main_accordion.id].options.link = 'ignore';
276					}
277				}
278			}
279			
280		});
281		$$('.djtabs-body').addEvent('keydown', function(event){
282			
283			var tab_no = $(this).getProperty('data-tab-no');
284			var focus_el;
285			var main_accordion = $(this).getParent().getParent().getParent();
286			
287			//var isAccordion = $(this).getParent().getParent().getParent().hasClass('accordion');
288			//var prevKey = isAccordion ? 'up' : 'left';
289			//var nextKey = isAccordion ? 'down' : 'right';
290			
291			var prevKey = 'left';
292			var nextKey = 'right';
293			
294			if(tab_no){
295				if(event.key == prevKey){
296			    	focus_el = main_accordion.getElements('.djtabs-body[data-tab-no="'+(parseInt(tab_no)-1)+'"]');
297			    	if(focus_el.length){
298			    		focus_el[0].focus();
299			    	}
300			    }else if(event.key == nextKey){
301			    	focus_el = main_accordion.getElements('.djtabs-body[data-tab-no="'+(parseInt(tab_no)+1)+'"]');
302			    	if(focus_el.length){
303			    		focus_el[0].focus();
304			    	}
305			    }
306		    }
307		});
308		
309		
310		$$('.djtabs-article-group').addEvent('focus', function(event) {
311
312			var inner_accordion = $(this).getParent().id;
313			
314			if(inner_accordion){
315				var inner_accordion_body = $(this).getChildren('.djtabs-article-body');
316				if(inner_accordion_body.length){
317					var inner_accordion_item_no = inner_accordion_body.getProperty('data-no');
318					inner_accordion_item_no = inner_accordion_item_no ? inner_accordion_item_no - 1 : 'undefined';
319					if(inner_accordion_item_no != 'undefined'){
320						if(!$(this).hasClass('djtabs-group-active')){
321							window[inner_accordion].display(inner_accordion_item_no);
322							window[inner_accordion].options.link = 'ignore';
323						}
324					}
325				}
326			}
327		});
328		$$('.djtabs-article-group').addEvent('keydown', function(event) {
329			
330			if(event.key == 'up' || event.key == 'down'){
331				
332				var inner_accordion = $(this).getParent().id;
333				var focus_el;
334				
335				if(inner_accordion){
336					var inner_accordion_body = $(this).getChildren('.djtabs-article-body');
337					if(inner_accordion_body.length){
338						var inner_accordion_item_no = inner_accordion_body.getProperty('data-no');
339						inner_accordion_item_no = inner_accordion_item_no || inner_accordion_item_no == '0' ? inner_accordion_item_no : 'undefined';
340						if(inner_accordion_item_no != 'undefined'){
341							if(event.key == 'up'){
342						    	focus_el = $(this).getParent().getChildren('.djtabs-article-group .djtabs-article-body[data-no="'+(parseInt(inner_accordion_item_no)-1)+'"]').getParent();
343						    	if(focus_el.length){
344						    		event.preventDefault();
345									focus_el[0].focus();
346						    	}
347						    }else if(event.key == 'down'){
348						    	focus_el = $(this).getParent().getChildren('.djtabs-article-group .djtabs-article-body[data-no="'+(parseInt(inner_accordion_item_no)+1)+'"]').getParent();
349						    	if(focus_el.length){
350						    		event.preventDefault();
351									focus_el[0].focus();
352						    	}
353						    }
354						}
355					}
356				}
357			}
358		});
359	});

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.