1// "Very Simple Image Gallery" Plugin for Joomla 3.1 - Version 1.6.8 2// License: GNU General Public License version 2 or later; see LICENSE.txt 3// Author: Andreas Berger - [email protected] 4// Copyright (C) 2013 Andreas Berger - http://www.bretteleben.de. All rights reserved. 5// Project page and Demo at http://www.bretteleben.de 6// ***Last update: 2013-08-15*** 7 8//dom 9function vsig_dom(obj) {return document.getElementById(obj); } 10 11//switch image without reload 12function switchimg(t_ident, t_ident_b) { 13 //topimage 14 var topimg = "topimg" + t_ident_b[2]; 15 t_ident[6] = t_ident[6].replace(/'/g, "'"); //replace ' with ' in alt-title 16 t_ident[4] = t_ident[4].replace(/'/g, "'"); //replace ' with ' in link-title 17 t_ident[6] = t_ident[6].replace(/&/g, "&"); //replace &amp; with & in alt-title 18 //switch caption 19 var t_cap = (typeof (vsig_dom(topimg).parentNode.href) !== "undefined") ? (vsig_dom(topimg).parentNode.parentNode.getElementsByTagName("div")) : (vsig_dom(topimg).parentNode.getElementsByTagName("div")); 20 if (t_cap.length >= 1) { 21 t_cap[0].innerHTML = (t_ident[1] !== "" || t_ident[2] !== "") ? ("<span>" + t_ident[1] + "</span><span>" + t_ident[2] + "</span>") : ""; 22 } 23 //switch link 24 if (typeof (vsig_dom(topimg).parentNode.href) !== "undefined") { 25 vsig_dom(topimg).parentNode.href = t_ident[3]; 26 vsig_dom(topimg).parentNode.title = t_ident[4]; 27 vsig_dom(topimg).parentNode.target = t_ident[5]; 28 } 29 //switch image 30 vsig_dom(topimg).src = t_ident_b[0] + "vsig_images/" + t_ident[0]; 31 vsig_dom(topimg).alt = t_ident[6]; 32 vsig_dom(topimg).title = t_ident[6]; 33} 34 35//switch set 36function switchset(s_ident, s_start, s_number) { 37 var ev_ident = window[s_ident]; 38 var ev_identb = window[s_ident + "_b"]; 39 var sets_total = Math.ceil(ev_ident.length / s_number); 40 var sets_current = s_start / s_number + 1; 41 //button back 42 if (sets_current >= 2) { 43 vsig_dom('bback' + s_ident).href = ev_identb[3].replace(/&/g, "&") + parseInt(s_start - s_number, 10); 44 vsig_dom('bback' + s_ident).onclick = function () {switchset(s_ident, parseInt(s_start - s_number, 10), s_number); return false; }; 45 } else { 46 vsig_dom('bback' + s_ident).href = ev_identb[3].replace(/&/g, "&") + ((sets_total - 1) * s_number); 47 vsig_dom('bback' + s_ident).onclick = function () {switchset(s_ident, ((sets_total - 1) * s_number), s_number); return false; }; 48 } 49 //button forward 50 if (sets_current <= sets_total - 1) { 51 vsig_dom('bfwd' + s_ident).href = ev_identb[3].replace(/&/g, "&") + parseInt(s_start + s_number, 10); 52 vsig_dom('bfwd' + s_ident).onclick = function () {switchset(s_ident, parseInt(s_start + s_number, 10), s_number); return false; }; 53 } else { 54 vsig_dom('bfwd' + s_ident).href = ev_identb[3].replace(/&/g, "&") + parseInt(0, 10); 55 vsig_dom('bfwd' + s_ident).onclick = function () {switchset(s_ident, parseInt(0, 10), s_number); return false; }; 56 } 57 //set counter 58 vsig_dom('counter' + s_ident).innerHTML = " " + sets_current + "/" + sets_total; 59 //switch main image 60 if (s_start <= ev_ident.length && s_start >= 0) { 61 switchimg(ev_ident[s_start], ev_identb); 62 } 63 if (s_number >= 2) { 64 //thumb ändern 65 var a; 66 for (a = 1; a <= s_number; a++) { 67 if (ev_ident[s_start + a - 1]) { 68 var b = parseInt(s_start + a - 1, 10); 69 var obj = vsig_dom('thb' + s_ident + '_' + a); 70 obj.style.visibility = "visible"; 71 obj.getElementsByTagName("img")[0].src = ev_identb[0] + ev_identb[1] + ev_ident[b][7]; 72 obj.getElementsByTagName("img")[0].alt = ev_ident[b][6]; 73 obj.getElementsByTagName("a")[0].title = ev_ident[b][6]; 74 obj.getElementsByTagName("a")[0].href = ev_identb[3].replace(/&/g, "&") + b; 75 obj.getElementsByTagName("a")[0].b = b; 76 obj.getElementsByTagName("a")[0].onclick = function () {switchimg(ev_ident[this.b], ev_identb); return false; }; 77 if (obj.getElementsByTagName("a")[0].onmouseover) { 78 obj.getElementsByTagName("a")[0].onmouseover = function () {switchimg(ev_ident[this.b], ev_identb); return false; }; 79 } 80 } else { 81 vsig_dom('thb' + s_ident + '_' + a).style.visibility = "hidden"; 82 } 83 } 84 } 85} 86 87//daisychain preload 88function vsig_daisychain(s_ident, s_identb) { 89 var sl = function () { 90 var ev_ident = window[s_ident]; 91 var ev_identb = window[s_identb]; 92 var img_total = ev_ident.length; 93 var c; 94 var prld_img; 95 var prld_imges = []; 96 var prld_thbs = []; 97 for (c = 0; c < img_total; c++) { 98 prld_img = new Image(); 99 prld_img.src = ev_identb[0] + "vsig_images/" + ev_ident[c][0]; 100 prld_imges.push(prld_img); 101 prld_img.src = ev_identb[0] + "vsig_thumbs/" + ev_ident[c][7]; 102 prld_thbs.push(prld_img); 103 } 104 }; 105 if (window.addEventListener) { 106 window.addEventListener('load', sl, false); 107 } else if (window.attachEvent) { 108 window.attachEvent('onload', sl); 109 } else { 110 if (window.onload) { 111 var ld = window.onload; 112 window.onload = function () {ld(); sl(); }; 113 } else { 114 window.onload = sl; 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.