// 2. stufiges menuskript
//Phenomene
// Browser detection
var dom = document.getElementById ? true:false;
var nn4 = document.layers ? true:false;
var ie4 = document.all ? true:false;
var DHTML = (document.getElementById || document.all || document.layers);
//scripts vars
var Lheight;
var Moffset;
var Manz;
var isopen;
var step=5;
var timeout=10;
var menupointer=0;
var toclose=0;
var smabstand=6;
//PIcs
  menu1_off = new Image();
  menu1_off.src = "gfx/menu/infos.gif";
  menu1_on = new Image();
  menu1_on.src = "gfx/menu/infos_over.gif";
 
  menu2_off = new Image();
  menu2_off.src = "gfx/menu/themen.gif";
  menu2_on = new Image();
  menu2_on.src = "gfx/menu/themen_over.gif";

  menu3_off = new Image();
  menu3_off.src = "gfx/menu/grundlagen.gif";
  menu3_on = new Image();
  menu3_on.src = "gfx/menu/grundlagen_over.gif";

  menu4_off = new Image();
  menu4_off.src = "gfx/menu/presse.gif";
  menu4_on = new Image();
  menu4_on.src = "gfx/menu/presse_over.gif";

  menu5_off = new Image();
  menu5_off.src = "gfx/menu/news.gif";
  menu5_on = new Image();
  menu5_on.src = "gfx/menu/news_over.gif";

  menu6_off = new Image();
  menu6_off.src = "gfx/menu/links.gif";
  menu6_on = new Image();
  menu6_on.src = "gfx/menu/links_over.gif";

  menu7_off = new Image();
  menu7_off.src = "gfx/menu/archiv.gif";
  menu7_on = new Image();
  menu7_on.src = "gfx/menu/archiv_over.gif";
  
  menu8_off = new Image();
  menu8_off.src = "gfx/menu/lexikon.gif";
  menu8_on = new Image();
  menu8_on.src = "gfx/menu/lexikon_over.gif";
  
  menu9_off = new Image();
  menu9_off.src = "gfx/menu/kontakt.gif";
  menu9_on = new Image();
  menu9_on.src = "gfx/menu/kontakt_over.gif";

function chpic(Picnr,Neuname)
  {
  if (nn4)
          {
        eval('document.menu'+Picnr+'.document.images[0].src = Neuname.src;');
        }
   else document.images[Picnr].src = Neuname.src;
  }
function switchmeto(Picnr,to) {
         //if (isopen==Picnr) return;
//        var x =
         chpic(Picnr,eval('menu'+Picnr+'_'+to));
 }
function contacts() {
        closesub();
        contactsset();
        window.parent.MAIN_FRAME.location.href="content/kontakt/kontakt.htm";
}
function contactsset() {
        if (!isclosing) {menupointer=9;        isopen=9; setselect();}//ne, kein lästiges Array, lohnt nich bei 2 einträgen
        else return setTimeout('contactsset()',5);
}
function lexikon() {
        closesub();
        lexikonset();
        window.parent.MAIN_FRAME.location.href="content/lexikon/lex_set.php";
}
function lexikonset() {
        if (!isclosing) {menupointer=8;        isopen=8; setselect();}
        else return setTimeout('lexikonset()',5);
}
function archiv() {
        closesub();
        archivset();
     	NewWin=window.open('http://dachziegelarchiv.de/index.html','NWin');window['NewWin'].focus()
}
function archivset() {
        if (!isclosing) {menupointer=7;        isopen=7; setselect();}//ne, kein lästiges Array, lohnt nich bei 2 einträgen
        else return setTimeout('archivset()',5);
}
function getObj(name) //get a regular layer  style
{
        if (dom)
        {
                return document.getElementById(name).style;
        }
        else if (ie4)
        {
                return document.all[name].style;
        }
        else if (nn4)
        {
                var temp;
                switch (name.charAt(0)) {
                case 'm': {        temp = document.layers[name]; break        }
                case 's': { temp = document.menuholder.layers[name]; break}
                default: alert('Not a valid layer given to script');
                }
                return temp;
        }
}
function getLayerPos(name) //get position layer
{
        if (dom)
        {
               return document.getElementById(name);
        }
        else if (ie4)
        {
                return document.all[name];
        }
        else if (nn4)
        {
                var temp;
                switch (name.charAt(0)) {
                case 'm': {        temp = document.layers[name]; break        }
                case 's': { temp = document.menuholder.layers[name]; break}
                default: alert('Not a valid layer given to script');
                }
                return temp;
        }
}
function invi(was,flag) //change visibility
{
        if (!DHTML) return;
        //alert('vor getobj');
        var x = getObj(was);
        //alert('nach getobj: '+x+' is '+was);
        x.visibility = (flag) ? 'hidden' : 'visible'
}
function initMenu(height,Anz) {
        Lheight=height;
        Manz=Anz;
        //Moffset=offset;
        Moffset=getT('menu1');
        isopen=0;
        isclosing=false;
        if(nn4){
                window.onresize = reloadPage;
        }
}
function getT(x){
        var aktuell = getLayerPos(x);
        if(dom)
                return parseInt(aktuell.style.top);
        else if(ie4)
                return aktuell.style.pixelTop;
        else if(nn4)
              return aktuell.top;
}
function getH(x){
        var aktuell = getLayerPos(x);
        if(dom)
                return aktuell.offsetHeight;
        else if(ie4)
                return aktuell.offsetHeight;
        else if(nn4) {
                return aktuell.clip.bottom;
                }
}
function move(x,where){
        var aktuell = getLayerPos(x);
        if(dom){
                aktuell.style.top = where + "px";
        }
      else if(ie4){
                aktuell.style.top = where;
        }
        else if(nn4){
        //        aktuell.moveTo(0,where);
              aktuell.top = where;
        }
}
function opensub(x) {
        if (isopen==x) return closesub(x);
        menupointer=x;
        closesub(isopen);
        openm();
}
function openm() {
        if (isclosing) return setTimeout('openm()',10);
        var off= Moffset+menupointer*Lheight;
        var aktuell = 'smenu'+menupointer;
        move('menuholder',off);
        off=getH(aktuell)+smabstand;
        move(aktuell,off*(-1));
        //alert('vor invi');
        invi(aktuell,0);
        //alert('nach invi');
        isopen=menupointer;
        animopen(menupointer,0);
        if(ie4)
        return false;
}
function setselect() {
        var off=Moffset+Lheight*(menupointer-0.65);
        move('mselect',off);
       invi('mselect',0);
}
function  closesub() {
        if (isopen==0) return;
		if (isopen==7) return invi('mselect',1);
		if (isopen==8) return invi('mselect',1);
        if (isopen==9) return invi('mselect',1);
        toclose=isopen;
        isopen=0;
        isclosing=true;
        animclose();
}
function animopen() {
        var currentpos=getT('smenu'+menupointer);
        if (currentpos<0) {//0
                move('smenu'+menupointer,currentpos+step);
                for (var i=menupointer+1; i<=Manz; i++)
                       {
                      move('menu'+i,getT('menu'+i)+step);
                        }
                setTimeout("animopen()",timeout);
        }
        else setselect();
}
function animclose() {
        invi('mselect',1);
        var currentpos=getT('smenu'+toclose);
        if (currentpos>((getH('smenu'+toclose)+smabstand)*-1)) {
                move('smenu'+toclose,currentpos-step);
                for (var i=toclose+1; i<=Manz; i++)
                        {
                        move('menu'+i,getT('menu'+i)-step);
                        }
                setTimeout("animclose()",timeout);
        }
        else { invi('smenu'+toclose,1); toclose=0; isclosing=false;}
}
function reloadPage(){
        location.reload();
}
