
var slowOpacityTimeout = new Object();


function slowToggleOpacity(id){

         var objekt = document.getElementById(id);

         if (!objekt) return false;

         if (!objekt.getOpacity){opaAdd(objekt);}

         if (objekt.style.display == "none"){
            objekt.style.display = "";
            objekt.setOpacity(0);
         }
         stopSlowOpacity(id);
         if (objekt.getOpacity() == 0){

            slowOpacity(id,0,(id=="filter") ? 50 : 100);
         }
         else {
              slowOpacity(id,objekt.getOpacity(),0);
         }

         return objekt;
}

function stopSlowOpacity(id){
         if (slowOpacityTimeout && slowOpacityTimeout[id]) window.clearTimeout(slowOpacityTimeout[id]);
}

function slowOpacity(id,starto,endo){

         var objekt = document.getElementById(id);

         if (!objekt) return false;
         if (!objekt.getOpacity){opaAdd(objekt);}

         objekt.setOpacity(starto);

         if (Math.abs(starto-endo)<=3*1){

            if (endo == 0) objekt.style.display = "none";

            objekt.setOpacity(endo);

            return objekt;
         }
         else {
              slowOpacityTimeout[id] = setTimeout("slowOpacity('"+id+"', "+(parseInt(starto-3*1*Math.abs(starto-endo)/(starto-endo)))+", "+parseInt(endo)+", 1);",10);
         }

         return objekt;
}

function opaAdd(node,kinder){
   var setOpacity = function (value){
                if (!this.style) return false;
                if (value != 0 && this.style.display == "none") this.style.display = "";
             this.setAttribute("opacity", value);
                if (this.style.opacity || this.style.opacity == ""){
                   this.style.opacity=value/100;
                   return this;
                }
                if (this.style.filter || this.style.filter == ""){
                   this.style.filter="Alpha(opacity="+value+")";
                   return this;
                }
                return false;
   };

   var getOpacity = function (){
                if (!this.style) return false;
                if (this.style.opacity || this.style.opacity == ""){
                   return (isNaN(this.style.opacity) || this.style.opacity == "")? 100 : this.style.opacity*100;
                }
                if (this.style.filter || this.style.filter == ""){
                   this.style.filter.match(/Alpha.*?opacity=(\d*)/);
                   return (isNaN(RegExp.$1) || RegExp.$1 == "")? 100 : RegExp.$1;
                }
                return false;
   };

   if (!node || !node.style) return false;

   //Das hier hat eigentlich nichts mit Opacity zu tun, aber der IE will den Filter nicht anwenden, wenn das Objekt keine "Layout" hat  - die eigenschaft zoom gibt ihm solches
   if (node.currentStyle && typeof(node.style.zoom) != "undefined" && !node.currentStyle.hasLayout) {
      node.style.zoom = "100%";
   }

   node.setOpacity = setOpacity;
   node.getOpacity = getOpacity;
   if (kinder){
      for (var i=0;i<node.childNodes.length;i++){
         opaAdd(node.childNodes[i]);
      }
   }
   return node;
}

var imgs = (document.images) ? 1:0;
var oldSrc = "";
var gAktImg = 1;
var gAktPfad = "";
var gMaxAnz = 0;
var gKapitel = "";

function loadImage (pPfad, pKapitel, pAnz) {

 gAktImg = 1;
 gMaxAnz = pAnz;
 gKapitel = pKapitel;
 gAktPfad = pPfad;

 setFilter(pPfad);
}


function prev () {

 gAktImg = parseInt(gAktImg) - 1;

 (gAktImg < 1)? gAktImg=parseInt(gMaxAnz) : "";

 setImg();
}

function next () {

 gAktImg = parseInt(gAktImg) + 1;

 (gAktImg > gMaxAnz)? gAktImg=parseInt(1) : "";

 setImg();
}

function setImg () {

 var vBild = (gAktImg<10)? "00"+gAktImg : ((gAktImg<100)? "0"+gAktImg : gAktImg);

 document.getElementById("viewer").src = "../images/galerie/design" + gAktPfad + "/bild" + vBild + ".jpg";
 document.getElementById("kapitel").innerHTML = "<h6>" + gKapitel + "</h6>";
 document.getElementById("anz").innerHTML = "<h6>Bild " + gAktImg + " von " + gMaxAnz + "</h6>";
}

  function setFilter (pPfad)
{
 slowToggleOpacity('filter');
 slowToggleOpacity('zoom');

 setImg();
}

function closeFilter()
{
 if (ie = document.all) {
    document.getElementById("zoom").filters.revealTrans.Transition = 0;
    document.getElementById("zoom").filters.revealTrans.Apply();
    document.getElementById("zoom").style.visibility = "hidden";
    document.getElementById("zoom").filters.revealTrans.Play();
 }
 else {
    document.getElementById("zoom").style.visibility = "hidden";
 }

 window.setTimeout("closeFilter2()", 1100);
}


function closeFilter2()
{
 document.getElementById("filter").style.visibility = "hidden";
}

