Vorlage:Galerie

Aus ISDV Wiki
Version vom 19. August 2022, 12:18 Uhr von Thilda (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

/** Skript für Vorlage:Galerie */ $( function() {

 if (document.URL.match(/printable/g)) return;
 function toggleImageFunction(group,  remindex, shwindex) {
   return function() {
     document.getElementById("ImageGroupsGr" + group + "Im" + remindex).style["display"] = "none";
     document.getElementById("ImageGroupsGr" + group + "Im" + shwindex).style["display"] = "block";
     return false;
   };
 }
 var divs = document.getElementsByTagName("div");
 var i = 0, j = 0;
 var units, search;
 var currentimage;
 var UnitNode;
 for (i = 0; i < divs.length; i++) {
   if (divs[i].className !== "ImageGroup") { continue; }
   UnitNode = undefined;
   search = divs[i].getElementsByTagName("div");
   for (j = 0; j < search.length; j++) {
     if (search[j].className !== "ImageGroupUnits") { continue; }
     UnitNode=search[j];
     break;
   }
   if (UnitNode === undefined) { continue; }
   units = [];
   for (j = 0 ; j < UnitNode.childNodes.length ; j++ ) {
     var temp = UnitNode.childNodes[j];
     if (temp.className === "center") { units.push(temp); }
   }
   var rightlink = undefined;
   var commentText = undefined;
   for (j = 0; j < units.length; j++) {
     currentimage = units[j];
     currentimage.id = "ImageGroupsGr" + i + "Im" + j;
     var leftlink = document.createElement("a");
     if (commentText !== undefined) {
       leftlink.setAttribute("title", commentText);
     }
     var comment;
     if (typeof(currentimage.getAttribute("title")) !== "string") {
       commentText = (j+1) + "/" + units.length;
       comment = document.createElement("tt").appendChild(document.createTextNode("("+ commentText + ")"));
     } else {
       commentText = currentimage.getAttribute("title");
       comment = document.createElement("span").appendChild(document.createTextNode(commentText));
       currentimage.removeAttribute("title");
     }
     if(rightlink !== undefined) {
       rightlink.setAttribute("title", commentText);
     }
     var imghead = document.createElement("div");
     rightlink = document.createElement("a");
     if (j !== 0) {
       leftlink.href = "#";
       leftlink.onclick = toggleImageFunction(i, j, j-1);
       leftlink.appendChild(document.createTextNode("◀"));
     }
     if (j !== units.length - 1) {
       rightlink.href = "#";
       rightlink.onclick = toggleImageFunction(i, j, j+1);
       rightlink.appendChild(document.createTextNode("▶"));
     }
     imghead.style["fontSize"] = "110%";
     imghead.style["fontweight"] = "bold";
     imghead.appendChild(leftlink);
     imghead.appendChild(document.createTextNode("\xA0"));
     imghead.appendChild(comment);
     imghead.appendChild(document.createTextNode("\xA0"));
     imghead.appendChild(rightlink);
     if (units.length > 1) {
       currentimage.insertBefore(imghead,currentimage.childNodes[0]);
     }
     if (j !== 0) {
       currentimage.style["display"] = "none";
     }
   }
 }

});