// JavaScript Document
var fenster_b = 761;
var fenster_h = 554;
var knopf = new Array();//für menuebuttons
var inhalt = new Array();//für kapitelinhalt
var pfeile = new Array('pf1', 'pf2');
var farben = new Array('#036','#fc4');//buttenfarbkombi
var thema = new Array('startseite', 'produkte', 'angebote', 'referenzen', 'ueberuns', 'kontakt', '', '', '', '', 'digital', 'siebdruck', 'fahrzeug', 'leitsysteme', 'schilder', 'banner', 'licht', 'service', '', '', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'brief', 'anfahrt', 'impressum');
var pfeiltat = false; //entscheidet ob aktion von pfeiltaste oder button ausgelöst wird, standard ist button(false)
var richtung = 1; //kapitel nach oben oder nach unten
var nr;
var merke_nr;
//


//
window.onresize = inpos;
//



window.onload =  function(){  
	
	//
	inpos();
	bilderVorladen();
	
	//
	for (i=0;i<thema.length;i++) { //positionierung der menüelemente
		var kap = document.getElementById('m'+(i+1));
		//positionierung der menuebuttons:
		var oben = (i<10) ? 0  : 20; // 1.zeile/2.zeile
		var links = (i<10) ? 0 : (i>=30) ? 30 : (i>=20) ? 20 : 10; // 1.zeile/kontakt/referenzen/produkte
		if (kap) with (kap.style) {	left = ((i-links)*75)+'px';	top = oben + 'px';	} 
		//
		knopf.push(document.getElementById('m'+(i+1)));
		inhalt.push(document.getElementById('kapitel'+(i+1)));
		if (knopf[i]) {
			knopf[i].style.backgroundImage = 'url(b/menue-' + (i+1) +'.png)';
			inhalt[i].style.backgroundColor = farben[0];
			dhtmlweiche(knopf[i], menue_ueber, "mouseover");
			dhtmlweiche(knopf[i], menue_raus, "mouseout");
			dhtmlweiche(knopf[i], menue_klick, "click");
			}
		}
		
		
	for (i=1;i<3;i++){ // pfeilaktionen
		var taeter = document.getElementById('pf'+i);
		dhtmlweiche(taeter, pfeil_ueber, "mouseover");
		dhtmlweiche(taeter, pfeil_raus, "mouseout");
		dhtmlweiche(taeter, pfeil_klick, "click");
		}
		
		
	kapitelwechsel(knopf[0]);
	seiteEinrichten(0);
	javaScriptCSS_laden();
	karte_laden();
	}
	

//
function inpos(){
	//
	
	mass = document.getElementById('messen'); 
	central = document.getElementById('mitte');
	capitulo = document.getElementById('kapitel');
	fletsch = document.getElementById('pfeile');
	produktemenue = document.getElementById('nav_z2'); 
	referenzenmenue = document.getElementById('nav_z3'); 
	kontaktmenue = document.getElementById('nav_z4'); 
	//
	if (mass) {
		var hoehe = mass.offsetHeight; 
		var breite = mass.offsetWidth; 
		var links = (breite > fenster_b) ? (breite-fenster_b)/2 : 0;
		var oben = (hoehe > fenster_h) ? (hoehe-fenster_h)/2 : 0;
		var rechts = links + fenster_b;
		var unten = oben + fenster_h;
		
		//
		with (central.style) {
			width = fenster_b+'px';
			height = fenster_h+'px';
			left = links+'px';
			top = oben+'px';	
			visibility = "visible";	
			}
			
		//	
		with (fletsch.style) {
			left = (rechts + 2) +'px';
			top = (unten - 30) +'px';
			visibility = "visible";	
			}
			
			//
		with (capitulo.style) {
			width = (fenster_b-10)+'px';
			height = (fenster_h-60)+'px';
			}
		}
		if(hoehe < 1) window.setTimeout("inpos()",100);
		
	}	
	
	
//------------------------------ -----------------------------------
	
	
//
function seiteEinrichten(wer){
	var z = 0;
	for (i=0; i<wer; i++) if (thema[i] != "") z++;
	var bild_1 = getElementsByClassName('kap','DIV')[z].getElementsByTagName('IMG')[0];
	var bild_2 = getElementsByClassName('kap','DIV')[z].getElementsByTagName('IMG')[1];
	var bild_3 = getElementsByClassName('kap','DIV')[z].getElementsByTagName('IMG')[2];
	var quelle_1 = "b/"+thema[wer]+"_1.png";
	var quelle_2 = "b/"+thema[wer]+"_2.png";
	var quelle_3 = "b/"+thema[wer]+"_3.png";
	if (bild_1){
		if (quelle_1) bild_1.setAttribute("src", quelle_1);
	}
	if (bild_2){
		if (quelle_2) bild_2.setAttribute("src", quelle_2);
	}
	if (bild_3){
		if (quelle_3) bild_3.setAttribute("src", quelle_3);
	}
}
//
//


//------------------------------styleswitcher-----------------------------------


function javaScriptCSS_laden(){
	
		var el = document.getElementsByTagName("link");
		  for (var i = 0; i < el.length; i++ ) {
			if (el[i].getAttribute("rel").indexOf("style") != -1 && el[i].getAttribute("title")) {
			  el[i].disabled = true;
			  if (el[i].getAttribute("title") == "standard") el[i].disabled = false;
			}
		  }
}

//------------------------------ -----------------------------------
//


function bilderVorladen(){
	if(document.images){
		if(!document.imageArray) document.imageArray = new Array();
		var j = 0;
		for(i=0; i< thema.length; i++)  {
		  if (thema[i]!="") {
			document.imageArray[j] = new Image;
			document.imageArray[j++].src = 'b/menue_aktiv-' + (i+1) +'.png';
			document.imageArray[j] = new Image;
			document.imageArray[j++].src = 'b/menue_over-' + (i+1) +'.png';
			document.imageArray[j] = new Image;
			document.imageArray[j++].src = 'b/menue-' + (i+1) +'.png';
		  }
		}
	  }
}

//------------------------------ -----------------------------------
//

//
function dhtmlweiche(taeter, aufgabe, ereignis){
	if (document.addEventListener) taeter.addEventListener(ereignis, aufgabe, true);
	else switch (ereignis) {
		case "mouseover": taeter.onmouseover = aufgabe; break; 
		case "mouseout": taeter.onmouseout = aufgabe; break; 
		case "click": taeter.onclick = aufgabe; break; 
		}
	}

//------------------------------ mausaktionen -----------------------------------

function menue_ueber() {
	var ich = parseInt(this.id.substr(1));
	if (this.style.backgroundImage != 'url(b/menue_aktiv-' + ich +'.png)') this.style.backgroundImage = 'url(b/menue_over-' + ich +'.png)';
	//MM_preloadImages("b/"+thema[ich-1]+"_1.png", "b/"+thema[ich-1]+"_1.png");
	}

function menue_raus() {
	var ich = this.id.substr(1);
	if (this.style.backgroundImage != 'url(b/menue_aktiv-' + ich +'.png)') this.style.backgroundImage = 'url(b/menue-' + ich +'.png)';
	}

function menue_klick() {kapitelwechsel(this);}
function pfeil_ueber() {MM_swapImage(this.id,'','b/pfeil_'+ this.id.substr(2) + '_o.gif',1);}
function pfeil_raus() {	MM_swapImage(this.id,'','b/pfeil_'+ this.id.substr(2) + '.gif',1);}

function pfeil_klick() {
	pfeiltat = true; //pfeil ist auslöser der kapitelwechsel-funktion
	if (nr >= thema.length) nr = merke_nr ;
	if (this.id == 'pf1') {// wenn pfeil nach oben gedrückt
		richtung = -1;
		nr--; 
		if (nr == -1) nr = thema.length -1;
		else while (!inhalt[nr]) nr--; // für die lücken, in denen keine buttons existieren
	}else{// wenn pfeil nach unten gedrückt
		richtung = 1;
		nr++;
		if (nr == thema.length) nr = 0;
		else while (!inhalt[nr]) nr++; // für die lücken, in denen keine buttons existieren
		}
	kapitelwechsel();
	pfeiltat = false;
	}

//------------------------------  -----------------------------------

function kapitelwechsel(taeter) {
	if (pfeiltat == false) {// wenn von einem button ausgelöst
		nr = parseInt(taeter.id.substr(1)-1);
		richtung = (merke_nr>nr) ? -1:1;
		}	
	else taeter = knopf[nr];// wenn von einem pfeil ausgelöst
	opfer = inhalt[nr];
	for (k=0; k<thema.length; k++) {
		if (knopf[k] && nr < thema.length) {
			knopf[k].style.backgroundImage = 'url(b/menue-' + (k+1) +'.png)'
		}
	}
	//sichtbarkeit der untermenüs ja/nein::
	produktemenue.style.visibility  = (nr == 1 || (nr >= 10 && nr < 20)) ? 'visible' : 'hidden'; 
	referenzenmenue.style.visibility  = (nr == 3 || (nr >= 20 && nr < 30)) ? 'visible' : 'hidden'; 
	kontaktmenue.style.visibility  = (nr == 5 || (nr >= 30 && nr < 40)) ? 'visible' : 'hidden'; 
	//
	for (k=0; k<thema.length; k++) if (knopf[k]) inhalt[k].style.zIndex = '1';
	if (nr <= thema.length) {
		knopf[nr].style.backgroundImage = 'url(b/menue_aktiv-' + (nr+1) +'.png)'
		seiteEinrichten(nr);
		}
	// produktebutton bleibt aktiv, wenn ein button in der produkte-unterkapitelzeile gedrückt wird:
	knopf[1].style.backgroundImage = (nr >= 10 && nr < 20) ? 'url(b/menue_aktiv-2.png)' : knopf[1].style.backgroundImage;
	// referenzenbutton bleibt aktiv, wenn ein button in der referenzen-unterkapitelzeile gedrückt wird:
	knopf[3].style.backgroundImage = (nr >= 20 && nr < 30) ? 'url(b/menue_aktiv-4.png)' : knopf[3].style.backgroundImage;
	// kontaktbutton bleibt aktiv, wenn ein button in der kontakt-unterkapitelzeile gedrückt wird:
	knopf[5].style.backgroundImage = (nr >= 30 && nr < 40) ? 'url(b/menue_aktiv-6.png)' : knopf[5].style.backgroundImage;
	with (opfer.style) {
		if (top) top = (richtung ==1) ? '495px' : '-495px';
		zIndex = '50';
		};
	kap_ani();
	
	var banner = document.getElementById('balken').getElementsByTagName('IMG')[0]; 
	if (taeter.id == "m1") banner.setAttribute("src", "b/balken0.png");
	else banner.setAttribute("src", "b/balken.png");
	}
	

	
function kap_ani() {
	wert = parseInt(opfer.style.top);
	if (richtung == 1 && wert > 0) {
		var ani_kap = window.setTimeout("kap_ani()",1);
		opfer.style.top = (wert-10) + 'px';
		altopfer.style.top = (wert-495) + 'px';
	}else if (richtung == -1 && wert < 0) {
		var ani_kap = window.setTimeout("kap_ani()",1);
		opfer.style.top = (wert+10) + 'px';
		altopfer.style.top = (wert+495) + 'px';
		altopfer.style.zIndex = parseInt(opfer.style.zIndex) + 1 + '';
	}else{
		clearTimeout(ani_kap);
		opfer.style.top = '0px';
		altopfer = opfer;
		for (k=0; k<knopf.length; k++) if (knopf[k] && inhalt[k] != altopfer) {inhalt[k].style.top = '495px';	}
		}
	}

//------------------------------ dom  -----------------------------------	
	
//elemente nach klasse selektieren: Ergebnis ist array mit allen tags ders gesuchten klasse (und optional des gesuchten typs)
	function getElementsByClassName(klasse,tagTyp){
		var klassenReihe = [];
		var tags = document.getElementsByTagName("*") // ein array mit allen tags des dokuments
		for (var i=0; i < tags.length; i++) {
			if (tagTyp)	{// nur wenn das 2. argument (tagTyp) gesucht wird
			   if (tags[i].tagName != tagTyp) continue; // dann wird die funktion verlassen, falls es sich nicht um das ggesuchte tag handelt
			}//endif
			if (tags[i].className == klasse) klassenReihe[klassenReihe.length] = tags[i]; // wenn die übriggebliebenen tags der gesuchten klasse entsprechen, dann wird das array klassenreihe damit gefüllt
		}//endfor
		return klassenReihe;
	}
//------------------------------ google maps  -----------------------------------	
	
function karte_laden() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));       
		map.addControl(new GLargeMapControl());
        map.setCenter(new GLatLng(48.085506, 7.948031), 16);
		map.addOverlay(new GMarker(new GLatLng(48.085506, 7.948031)))
		
      }
    }
	
