PageSourceSearch

https://www.iapp.co.il/plugins/image_viewer/image_viewer.js

js iapp.co.il collected 2026-10-03 01:52:36 UTC 19,459 bytes, 565 lines download raw bytes

1var image_viewer_image_list = [];
2var image_viewer_titles_list = [];
3var image_viewer_current_gallery_name = "";
4function GetDivGallertList(gallery_name)
5{
6	var div_gallery_list = $("#image_viewer_parent #image_lists_data_area #gallery_" + gallery_name)[0];
7	//alert("div_gallery_list: " + div_gallery_list);
8	if(!div_gallery_list)
9	{
10		div_gallery_list = document.createElement("UL");
11		div_gallery_list.id = "gallery_" + gallery_name;
12		
13		var image_lists_data_area = $("#image_viewer_parent #image_lists_data_area")[0];
14		image_lists_data_area.appendChild(div_gallery_list);
15	}
16	return div_gallery_list;
17}
18function ImageViewerGetSelectedIndex(gallery_name, image_url)
19{
20	if(is_mobile)
21	{
22		image_url = image_url.replaceAll("mobile/","");
23	}
24	
25	//alert("ImageViewerGetSelectedIndex - gallery_name: " + gallery_name);
26	var div_gallery_list = GetDivGallertList(gallery_name);
27	
28	var image_url = image_url.replaceAll("&","&");
29	//alert("before decode: " + image_url);
30	
31	//alert("total: " + div_gallery_list.childNodes.length);
32	var selected_index = -1;
33	for(var i = 0; i < div_gallery_list.childNodes.length; i++)
34	{
35		//alert("i: " + i);
36		var li = div_gallery_list.childNodes[i];
37		//alert(li);
38		var li_img = li.childNodes[0];
39		//alert(li_img);
40		
41		//alert(decodeURI(image_url) + "\n\n == \n\n" + decodeURI(li_img.src));
42		if(decodeURI(li_img.src) == decodeURI(image_url))
43		{
44			selected_index = i + 1;
45			break;
46		}
47	}
48	return selected_index;
49}
50function ImageViewerGetImageTitle(gallery_name, selected_index)
51{
52	var div_gallery_list = GetDivGallertList(gallery_name);
53	
54	var selected_title = "";
55	for(var i = 0; i < div_gallery_list.childNodes.length; i++)
56	{
57		var li = div_gallery_list.childNodes[i];
58		var li_img = li.childNodes[0];
59		
60		//alert(image_viewer_image_list[i] + " == " + image_url);
61		var index = i + 1;
62		if( index == selected_index )
63		{
64			selected_title = li_img.alt;
65			break;
66		}
67	}
68	return selected_title;
69}
70function ImageViewerGetImageSrc(gallery_name, selected_index)
71{
72	var div_gallery_list = GetDivGallertList(gallery_name);
73	
74	var selected_src = "";
75	for(var i = 0; i < div_gallery_list.childNodes.length; i++)
76	{
77		var li = div_gallery_list.childNodes[i];
78		var li_img = li.childNodes[0];
79		//alert(li_img);
80		//alert(li_img.src);
81		
82		var index = i + 1;
83		//alert(i + ": " + index + " == " + selected_index);
84		if( index == selected_index )
85		{
86			selected_src = li_img.src;
87			break;
88		}
89	}
90	return selected_src;
91}
92function UpdateImageViewerList(gallery_name, image_url, title)
93{
94	if(is_mobile)
95	{
96		image_url = image_url.replaceAll("mobile/","");
97	}
98	
99	//alert("UpdateImageViewerList start");
100	
101	//alert("gallery_name: " + gallery_name);
102	var selected_index = ImageViewerGetSelectedIndex(gallery_name, image_url);
103	//alert("selected_index: " + selected_index);
104	
105	if(selected_index < 0) 
106	{
107		var div_gallery_list = GetDivGallertList(gallery_name);
108		
109		var new_image_html = "<li><img src='" + image_url + "' alt='" + title + "' /></li>";
110		div_gallery_list.innerHTML += new_image_html;
111		//alert("UpdateImageViewerList ok");
112
113		//image_viewer_image_list.push(image_url);
114		//image_viewer_titles_list.push(title);
115	}
116	
117	//alert("UpdateImageViewerList ok");
118}
119function ShowImageViewer(gallery_name, image_url)
120{
121	image_viewer_current_gallery_name = gallery_name;
122	
123	if(is_mobile)
124	{
125		image_url = image_url.replaceAll("mobile/","");
126	}
127	
128	//alert("image_url: " + image_url);
129	
130	//alert("ShowImageViewer test1");
131	//alert(image_viewer_image_list);
132	var old_image_url = "";
133	var old_image_width = 0;
134	var old_image_height = 0;
135	var old_img = $("#image_viewer_box .img img")[0];
136	var old_iframe = $("#image_viewer_box .img iframe")[0];
137	if(old_img != null) 
138	{
139		old_image_url = old_img.src;
140		var old_image_width = old_img.width;
141		var old_image_height = old_img.height;
142	}
143	else if(old_iframe != null) 
144	{
145		old_image_url = old_iframe.src;
146		var old_image_width = 600;
147		var old_image_height = 400;
148	}
149	
150	//alert("ShowImageViewer test2");
151	
152	document.getElementById("image_viewer_mask").style.display = "block";
153	document.getElementById("image_viewer_parent").style.display = "block";
154	var img_box = $("#image_viewer_box .img")[0];
155	
156	if(image_url.indexOf("youtube.com") >= 0)
157	{
158		var full_url = image_url;
159		img_box.innerHTML = "<iframe scrolling='no' class='fade' src='" + full_url + "' >" + image_url + "</iframe>";
160	}
161	else img_box.innerHTML = "<img src='" + image_url + "' />";
162	
163	//alert("ShowImageViewer test3");
164	
165	var div_gallery_list = GetDivGallertList(gallery_name);
166	var total_images = div_gallery_list.childNodes.length;
167	
168	var selected_index = ImageViewerGetSelectedIndex(gallery_name, image_url.split(" ").join("%20"));
169	var new_title = ImageViewerGetImageTitle(gallery_name, selected_index);
170	//alert("image_url: " + image_url);
171	//alert("selected_index: " + selected_index);
172	//var new_title = image_viewer_titles_list[selected_index];
173	document.getElementById("image_viewer_title_area").innerHTML = "<span>" + new_title + "</span>";
174	//document.getElementById("image_viewer_box").innerHTML = "<img src='" + image_url + "' />";
175	
176	var str_index = (selected_index) + "/" + total_images;
177	$("#image_viewer_btn_area .btn_inner_area .str_index")[0].innerHTML = str_index;
178	
179	//alert("ShowImageViewer test4");
180	
181	var img = $("#image_viewer_box .img img")[0];
182	var iframe = $("#image_viewer_box .img iframe")[0];
183	if(img != null) img.onload = function() {ShowImageViewer2(old_image_url,old_image_width,old_image_height);};
184	else if(iframe != null) 
185	{
186		//iframe.onload = function() {ShowImageViewer2(old_image_url,old_image_width,old_image_height);};
187		ShowImageViewer2(old_image_url,old_image_width,old_image_height);
188	}
189}
190function ShowImageViewer2(old_image_url,old_image_width,old_image_height)
191{
192	//alert("ShowImageViewer2 test1");
193	
194	var img = $("#image_viewer_box .img img")[0];
195	if(img != null)
196	{
197		var image_width = img.width;
198		var image_height = img.height;
199	}
200	else
201	{
202		var image_width = 600;
203		var image_height = 400;
204	}
205	
206	var window_width = $(window).width();
207	var window_height = $(window).height();
208	//alert("window_width: " + window_width)
209	//alert("ShowImageViewer2 test2");
210	
211	var max_image_h = window_height - 40 - 26 - 50 - 50;
212	var max_image_w = window_width - 40;
213	
214	//alert("width: " + image_width);
215	//alert("image_height: " + image_height);
216	//alert("max_image_h: " + max_image_h);
217	
218	var factor_w = max_image_w / image_width;
219	var factor_h = max_image_h / image_height;
220	
221	//alert("ShowImageViewer2 test3");
222	
223	if(img != null)
224	{
225		if( (image_height > max_image_h) || (image_width > max_image_w) )
226		{
227			// if factor_w is smaller
228			if(factor_w < factor_h) 
229			{ 
230				img.width = max_image_w;
231				img.height = (image_height/image_width) * img.width;
232			} 
233			// Otherwise, if the height > goal, resize down to goal height 
234			else
235			{
236				img.height = max_image_h;
237				img.width = (image_width/image_height) * img.height;
238			}
239		}
240		
241		// new image size
242		var image_width = img.width;
243		var image_height = img.height;
244		
245		/*
246		document.getElementById("image_viewer_box").innerHTML += "<img src='" + old_image_url + "' />";
247		var old_img = document.getElementById("image_viewer_box").childNodes[0];
248		//alert("height: " + image_height);
249		var new_image_url = img.src;
250		img.src = old_image_url;
251		//alert("height: " + image_height);
252		*/
253		img.width = old_image_width;
254		img.height = old_image_height;
255		img.className = "fade";
256		img.width = image_width;
257		img.height = image_height;
258		
259	}
260	
261	
262	
263	
264	
265	
266	//alert("ShowImageViewer2 test4");
267	
268	// vertical middle when position:fixed
269	//var new_top = 20 + ( (window_height - 40 -26 - image_height - 50 - 50) / 2 );
270	//document.getElementById("image_viewer_parent").style.top = new_top;
271	
272	var new_margin_left = image_width / 2;
273	document.getElementById("image_viewer_parent").style.marginLeft = -new_margin_left;
274	
275	var image_viewer_parent_w = image_width + 26;
276	document.getElementById("image_viewer_parent").style.width = image_viewer_parent_w;
277	document.getElementById("image_viewer_btn_area").style.width = image_viewer_parent_w;
278	
279	$("#image_viewer_box")[0].style.width = image_width + 26;
280	$("#image_viewer_box .img")[0].style.width = image_width;
281	if(img != null) $("#image_viewer_box .img img")[0].style.width = image_width;
282	$("#image_viewer_btn_area .btn_inner_area")[0].style.width = image_width;
283	$("#image_viewer_frame_top .middle").css("width",image_width + "px");
284	$("#image_viewer_frame_bottom .middle").css("width",image_width + "px");
285	
286	//alert("ShowImageViewer2 test5");
287	
288	//document.getElementById("image_viewer_box_hover").style.display = "none";
289	//document.getElementById("image_viewer_box_hover").style.width = image_width;
290	//document.getElementById("image_viewer_box_hover").style.height = image_height;
291	//document.getElementById("image_viewer_box_hover").style.top = -(image_height + 20);
292	$("#image_viewer_btn_enlarge_area .btn_inner_area")[0].style.top = -(image_height + 50);
293	
294	//alert("before");
295	$("#image_viewer_box .img")[0].style.height = image_height + "px";
296	$("#image_viewer_box .frame_left")[0].style.height = image_height + "px";
297	$("#image_viewer_box .frame_right")[0].style.height = image_height + "px";
298	//alert("after");
299	
300	//alert("ShowImageViewer2 test6");
301	
302	$('html, body').animate({ scrollTop: 0 }, 500);
303	
304	//alert("ShowImageViewer2 ok");
305	//setTimeout("document.getElementById('image_viewer_box_hover').style.display = 'block';",500);
306	//setTimeout("document.getElementById('image_viewer_box').childNodes[0].src='"+new_image_url+"';",500);
307	//setTimeout("alert('"+new_image_url+"');",500);
308	
309}
310function CloseImageViewer()
311{
312	document.getElementById("image_viewer_mask").style.display = "none";
313	document.getElementById("image_viewer_parent").style.display = "none";
314	
315	var iframe = $("#image_viewer_box .img iframe")[0];
316	if(iframe != null)	iframe.src = "";
317}
318function ImageViewerGoRight()
319{
320	//alert("ImageViewerGoRight test1");
321	//alert("image_viewer_current_gallery_name: " + image_viewer_current_gallery_name);
322	
323	var gallery_name = image_viewer_current_gallery_name;
324	
325	var img = $("#image_viewer_box .img img")[0];
326	if(img != null)	var current_image_url = img.src;
327	var iframe = $("#image_viewer_box .img iframe")[0];
328	if(iframe != null)	var current_image_url = iframe.innerHTML;
329	
330	var selected_index = ImageViewerGetSelectedIndex(gallery_name, current_image_url);
331	if(selected_index < 0) alert("error in ImageViewerGoRight:ImageViewerGetSelectedIndex");
332	
333	var div_gallery_list = GetDivGallertList(gallery_name);
334	var total_images = div_gallery_list.childNodes.length;
335	
336	
337	var next_index = selected_index + 1;
338	if(next_index > total_images) next_index = 1;
339	var next_image_url = ImageViewerGetImageSrc(gallery_name, next_index);
340	next_image_url = decodeURI(next_image_url);
341	//alert("next_index: " + next_index);
342	//alert("next_image_url: " + next_image_url);
343	ShowImageViewer(gallery_name, next_image_url);
344	
345	//alert("image_viewer test ok");
346}
347function ImageViewerGoLeft()
348{
349	//alert("ImageViewerGoLeft test1");
350	
351	var gallery_name = image_viewer_current_gallery_name;
352	
353	var img = $("#image_viewer_box .img img")[0];
354	if(img != null)	var current_image_url = img.src;
355	var iframe = $("#image_viewer_box .img iframe")[0];
356	if(iframe != null)	var current_image_url = iframe.innerHTML;
357	
358	
359	var selected_index = ImageViewerGetSelectedIndex(gallery_name, current_image_url);
360	
361	//alert("ImageViewerGoLeft test2");
362	
363	var div_gallery_list = GetDivGallertList(gallery_name);
364	var total_images = div_gallery_list.childNodes.length;
365	
366	//alert("ImageViewerGoLeft test3");
367	
368	var next_index = selected_index - 1;
369	if(next_index < 1) next_index = total_images;
370	var next_image_url = ImageViewerGetImageSrc(gallery_name, next_index)
371	//alert("image_viewer_image_list.length: " + image_viewer_image_list.length);
372	//alert("next_index: " + next_index);
373	ShowImageViewer(gallery_name, next_image_url)
374}
375var image_viewer_original_img_width = 0;
376var image_viewer_original_img_height = 0;
377function ImageViewerToggleSize()
378{
379	//alert("ImageViewerToggleSize start")
380	var img = $("#image_viewer_box .img img")[0];
381	if(img != null)
382	{
383		//alert(img);
384		var image_width = img.width;
385		var image_height = img.height;
386		//alert("image_width: " + image_width);
387		
388		var current_btn_area_h = $("#image_viewer_btn_area").height();
389		//alert("current_btn_area_h: " + current_btn_area_h);
390		if(current_btn_area_h == 50)
391		{
392			var newImg = new Image();
393
394			newImg.onload = function() 
395			{
396				var img = $("#image_viewer_box .img img")[0];
397				var image_width = img.width;
398				var image_height = img.height;
399				
400				var window_width = $(window).width();
401				var max_image_w = window_width - 40;
402				//alert("max_image_w: " + max_image_w);
403				
404				image_viewer_original_img_width = image_width;
405				image_viewer_original_img_height = image_height;
406				
407				var new_image_width = newImg.width;
408				var new_image_height = newImg.height;
409				
410				//if(new_image_width > max_image_w)
411				if(true)
412				{
413					new_image_width = max_image_w;
414					new_image_height = (newImg.height/newImg.width) * new_image_width;
415				}
416				
417				img.width = new_image_width;
418				img.height = new_image_height;
419				
420				var new_margin_left = new_image_width / 2;
421				document.getElementById("image_viewer_parent").style.marginLeft = -new_margin_left;
422				
423				var image_viewer_parent_w = new_image_width + 26;
424				document.getElementById("image_viewer_parent").style.width = image_viewer_parent_w;
425				document.getElementById("image_viewer_btn_area").style.width = image_viewer_parent_w;
426				
427				$("#image_viewer_box")[0].style.width = new_image_width + 26;
428				$("#image_viewer_box .img")[0].style.width = new_image_width;
429				$("#image_viewer_box .img img")[0].style.width = new_image_width;
430				$("#image_viewer_btn_area .btn_inner_area")[0].style.width = new_image_width;
431				$("#image_viewer_frame_top .middle").css("width",new_image_width + "px");
432				$("#image_viewer_frame_bottom .middle").css("width",new_image_width + "px");
433				
434				//alert("before");
435				$("#image_viewer_box .img")[0].style.height = new_image_height + "px";
436				$("#image_viewer_box .frame_left")[0].style.height = new_image_height + "px";
437				$("#image_viewer_box .frame_right")[0].style.height = new_image_height + "px";
438				
439				$("#image_viewer_btn_area")[0].style.height = "0px";
440				$("#image_viewer_btn_enlarge_area .btn_inner_area")[0].style.top = -(new_image_height);
441
442			}
443
444			newImg.src = img.src; // this must be done AFTER setting onload
445			
446			
447		}
448		else
449		{
450			var new_image_width = image_viewer_original_img_width;
451			var new_image_height = image_viewer_original_img_height
452			
453			img.width = new_image_width;
454			img.height = new_image_height;
455			
456			var new_margin_left = new_image_width / 2;
457			document.getElementById("image_viewer_parent").style.marginLeft = -new_margin_left;
458			
459			var image_viewer_parent_w = new_image_width + 26;
460			document.getElementById("image_viewer_parent").style.width = image_viewer_parent_w;
461			document.getElementById("image_viewer_btn_area").style.width = image_viewer_parent_w;
462			
463			$("#image_viewer_box")[0].style.width = new_image_width + 26;
464			$("#image_viewer_box .img")[0].style.width = new_image_width;
465			$("#image_viewer_box .img img")[0].style.width = new_image_width;
466			$("#image_viewer_btn_area .btn_inner_area")[0].style.width = new_image_width;
467			$("#image_viewer_frame_top .middle").css("width",new_image_width + "px");
468			$("#image_viewer_frame_bottom .middle").css("width",new_image_width + "px");
469			
470			//alert("before");
471			$("#image_viewer_box .img")[0].style.height = new_image_height + "px";
472			$("#image_viewer_box .frame_left")[0].style.height = new_image_height + "px";
473			$("#image_viewer_box .frame_right")[0].style.height = new_image_height + "px";
474			
475			$("#image_viewer_btn_area")[0].style.height = "50px";
476			$("#image_viewer_btn_enlarge_area .btn_inner_area")[0].style.top = -(new_image_height + 50);
477		}
478		
479	}
480	
481	var iframe = $("#image_viewer_box .img iframe")[0];
482	if(iframe != null)
483	{
484		var current_btn_area_h = $("#image_viewer_btn_area").height();
485		if(current_btn_area_h == 50)
486		{
487			var window_width = $(window).width();
488			var max_image_w = window_width - 40;
489			
490			var new_image_width = max_image_w / 2;
491			var new_image_height = ( ( new_image_width * 2 ) / 3 );
492			
493			var new_margin_left = new_image_width / 2;
494			document.getElementById("image_viewer_parent").style.marginLeft = -new_margin_left;
495			
496			var image_viewer_parent_w = new_image_width + 26;
497			document.getElementById("image_viewer_parent").style.width = image_viewer_parent_w;
498			document.getElementById("image_viewer_btn_area").style.width = image_viewer_parent_w;
499			
500			
501			$("#image_viewer_box")[0].style.width = new_image_width + 26;
502			$("#image_viewer_box .img")[0].style.width = new_image_width;
503			//$("#image_viewer_box .img img")[0].style.width = new_image_width;
504			$("#image_viewer_btn_area .btn_inner_area")[0].style.width = new_image_width;
505			$("#image_viewer_frame_top .middle").css("width",new_image_width + "px");
506			$("#image_viewer_frame_bottom .middle").css("width",new_image_width + "px");
507			
508			//alert("before");
509			$("#image_viewer_box .img")[0].style.height = new_image_height + "px";
510			$("#image_viewer_box .frame_left")[0].style.height = new_image_height + "px";
511			$("#image_viewer_box .frame_right")[0].style.height = new_image_height + "px";
512			
513			$("#image_viewer_btn_area")[0].style.height = "0px";
514			$("#image_viewer_btn_enlarge_area .btn_inner_area")[0].style.top = -(new_image_height);
515
516			iframe.onload = function() {};
517			iframe.style.width = new_image_width + "px";
518			iframe.style.height = new_image_height + "px";
519			iframe.src = iframe.src.replace("w=600&h=400","w=" + new_image_width + "&h=" + new_image_height); 
520			
521			
522		}
523		else
524		{
525			var new_image_width = 600;
526			var new_image_height = 400;
527			
528			var new_margin_left = new_image_width / 2;
529			document.getElementById("image_viewer_parent").style.marginLeft = -new_margin_left;
530			
531			var image_viewer_parent_w = new_image_width + 26;
532			document.getElementById("image_viewer_parent").style.width = image_viewer_parent_w;
533			document.getElementById("image_viewer_btn_area").style.width = image_viewer_parent_w;
534			
535			$("#image_viewer_box")[0].style.width = new_image_width + 26;
536			$("#image_viewer_box .img")[0].style.width = new_image_width;
537			//$("#image_viewer_box .img img")[0].style.width = new_image_width;
538			$("#image_viewer_btn_area .btn_inner_area")[0].style.width = new_image_width;
539			$("#image_viewer_frame_top .middle").css("width",new_image_width + "px");
540			$("#image_viewer_frame_bottom .middle").css("width",new_image_width + "px");
541			
542			//alert("before");
543			$("#image_viewer_box .img")[0].style.height = new_image_height + "px";
544			$("#image_viewer_box .frame_left")[0].style.height = new_image_height + "px";
545			$("#image_viewer_box .frame_right")[0].style.height = new_image_height + "px";
546			
547			$("#image_viewer_btn_area")[0].style.height = "50px";
548			$("#image_viewer_btn_enlarge_area .btn_inner_area")[0].style.top = -(new_image_height + 50);
549			
550			var window_width = $(window).width();
551			var max_image_w = window_width - 40;
552			
553			var big_width = max_image_w / 2;
554			var big_height = ( ( big_width * 2 ) / 3 );
555			
556			iframe.onload = function() {};
557			iframe.style.width = "600px";
558			iframe.style.height = "400px";
559			iframe.src = iframe.src.replace("w=" + big_width + "&h=" + big_height,"w=600&h=400"); 
560			
561		}
562		
563	}
564	
565}

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.