// Lager undertekst til bilder ved aa bruke innholdet i bildets
// alt-attributt.
// Lager ogsaa automatisk lenke paa bilder der id-attributten er 
// gitt en verdi.
// 
// Forfatter: Richard Fauskrud, Lillehammer
// Dato: 25.04.2010
//
// For aa lage en enkel maate aa legge bildetekst paa bilder henter
// programmet ut verdien av bildets alt-attributt og bruker den som
// bildetekst. Det lages en tabell med ramme rundt bildet der bildet
// ligger i ovre rute og bildeteksten i nedre rute. All nodvendig css
// settes av programmet.
// Dersom bildets alt-attributt ikke har noe innhold gjores ingen 
// endringer med bildet.
// Programmet sjekker etter bilder innenfor en div-seksjon med id=content.
// Soerg for at [*content*] tagen og eventuelt gallerier (kun MaxiGallery)
// er innenfor denne seksjonen. Kommentarseksjoner (f.eks, Jot) boer 
// ligge utenfor.
// Dersom bildet er en MaxiGallery thumb legger MaxiGallery selv paa
// bildetekst. Hvis en onsker aa bruke denne bildeteksten maa en velge
// aa utelate alle bilder med lenker. Denne versjonen av programmet legger
// paa ramme og teksten fra thumb'ens alt-attributt. for aa hindre dobbel
// tekst maa MaxiGallery's egen tekst fjernes med folgende css-kode:
//
//<style type="text/css">
//   ul.thumbs li p {display: none !important;} /* Fjern MaxiGallery thumbs-text */
//</style>
//
// Programmet lager ogsaa automatisk en lenke til programmet
// stortbilde.js paa de bildene der id-attributten er gitt en verdi.
//

function imgText() {

var imgTags = document.getElementById("content").getElementsByTagName("img");

for (var i = 0; i < imgTags.length; i++) {
     var currentImg = imgTags[i];

// Lag bildetekst kun dersom alt-attributt har innhold
if (imgTags[i].alt) {

// Hent bildeattributter
     if (imgTags[i].id) {
         var imgId = imgTags[i].id;
     }
     if (imgTags[i].style.cssFloat) {
         var imgFloat = imgTags[i].style.cssFloat;
     }
     if (imgTags[i].style.styleFloat) {
         var imgFloat = imgTags[i].style.styleFloat;
     }
     if (imgTags[i].align) {
         var imgAlign = imgTags[i].align;
     }
     var imgAlt = imgTags[i].alt;
// Fjern MaxiGallery's "Click to zoom" paa thumbs
     var clickZoom = imgAlt.indexOf("Click to zoom");
     if (clickZoom != -1 ) {
         var clickZoomOffset = imgAlt.length - (imgAlt.length - clickZoom + 2 );
         imgAlt = imgAlt.substring(0,clickZoomOffset);
     }
     var imgSrc = imgTags[i].src;
     var imgTitle = imgTags[i].title;
     var imgWidth = imgTags[i].width;
     var imgHeight = imgTags[i].height;
// Lag tabell
     var imgTable=document.createElement("table");
     var imgTbody=document.createElement("tbody");
     var imgTR1=document.createElement("tr");
     var imgTD1=document.createElement("td");
     var imgTR2=document.createElement("tr");
     var imgTD2=document.createElement("td");
     var imgTxt=document.createTextNode(imgAlt);
// Lag bildeelement og sett bildeattributter
     var imgElement=document.createElement("img");
     if (imgTags[i].id) {
         imgElement.setAttribute('id', imgId);
     }
     imgElement.setAttribute('src', imgSrc);
     imgElement.setAttribute('alt', imgAlt);
     imgElement.setAttribute('title', imgTitle);
     imgElement.setAttribute('height', imgHeight);
     imgElement.setAttribute('width', imgWidth);
// Lag lenke til bildet hvis id er satt
     if (imgTags[i].id) {
         var imgAnchor=document.createElement("a");
         var imgLink="javascript:bilde('" + imgId + "')";
         imgAnchor.setAttribute('href', imgLink);
     }
// Slaa sammen ny HTML-kode for bildet
     if (imgTags[i].id) {
         imgAnchor.appendChild(imgElement);
         imgTD1.appendChild(imgAnchor);
     } else {
         imgTD1.appendChild(imgElement);
     }
     imgTR1.appendChild(imgTD1);
     imgTD2.appendChild(imgTxt);
     imgTR2.appendChild(imgTD2);
     imgTbody.appendChild(imgTR1);
     imgTbody.appendChild(imgTR2);
     imgTable.appendChild(imgTbody);
// Sett attributter og css for bildetabellen
     imgTable.setAttribute('width', imgWidth);
     if (imgTags[i].align && imgTags[i].align != "middle") {
         imgTable.style.cssFloat = imgAlign;
         imgTable.style.styleFloat = imgAlign;
     }
     if (imgTags[i].style.cssFloat) {
         imgTable.style.cssFloat = imgFloat;
     }
     if (imgTags[i].style.styleFloat) {
         imgTable.style.styleFloat = imgFloat;
     }
     imgTD2.style.padding = "0 5px 0 5px";
     imgTable.style.fontSize = "10px";
     imgTable.style.margin = "10px";
     imgTable.style.border = "1px solid #bbb";
     imgTable.style.background = "#eee";
// Bytt ut den originale HTML-koden for bildet
     currentImg.parentNode.replaceChild(imgTable,currentImg);
// Dersom bildetabellen blir liggende inne i en P-tag maa den flyttes
// utenfor.
//     if (imgTable.parentNode.tagName == "P") {
//         var parent = imgTable.parentNode;
//         var parent2 = parent.parentNode;
//         parent2.insertBefore(imgTable, parent.nextSibling);
//         alert(parent2.innerHTML);
//     }

}  // End: if (imgTags[i].alt)

}
}

