//------------------------------------------------------------------------------------
// copyright by inci, info@inci.de, 2004;
//------------------------------------------------------------------------------------

// Ebenenkontrolle ----------------------------------------------------------------------
// Styleswitch und LayerRef ermoeglichen cross-browser objekt-referenz
// Funktionsaufruf fuer NS 4-Reload-Bug
	function initBrowser(){
		if (document.layers) { //NS 4.x
			layerStyleRef="layer.";
			layerRef="document.layers";
			styleSwitch="";
			ns6="";
		}
		else if (document.getElementById) { //NS 6, IE 5.x
			layerStyleRef="layer.";
			layerRef="document.getElementById(";
			styleSwitch=").style";
			ns6=")";
		}
		else {  //IE 4.x
			layerStyleRef="layer.style.";
			layerRef="document.all";
			styleSwitch=".style";
			ns6="";
		}
	}


// Layer zeigen - verbergen
	function showLayer(layerName) {
		initBrowser();  
		eval(layerRef + '["'+layerName+'"]' + styleSwitch + '.visibility="visible"');
	}
	function hideLayer(layerName) {
		initBrowser();
	    eval(layerRef + '["'+layerName+'"]' + styleSwitch +'.visibility="hidden"');
	}

//alle Layer einer Gruppe verbergen - zeigen; Gruppen fuer Perfomance
	function hideAll(bereich) {
		initBrowser();
		for(i=0; i<50; i++){		//alle anderen ebenen
				if (eval(layerRef + '["'+ bereich + i + '"]' + ns6)) {eval(layerRef + '["' + bereich + i + '"]' + styleSwitch +'.visibility="hidden"');}
		}			
	}
	
//Layer positionieren;
function putLayer(layerName,welcheKoord,newPos){
	initBrowser();
	eval(layerRef + '["'+layerName+'"]' + styleSwitch + '.' + welcheKoord +'="' + newPos +'"'); //Bewegung
}
		
// Textfunktionen ------------------------------------------------------------------------
// Austauschen von Texten eines HTML-Elementes mit ID-Tag
function changeText(idTag,neuerText){
	if (document.layers){
		}
	else {
		var AnzahlZeichen = document.getElementById(idTag).firstChild.nodeValue.length;
		document.getElementById(idTag).firstChild.deleteData(0,AnzahlZeichen);
		eval(layerRef + "('"+idTag+"')" + ns6 + ".firstChild.insertData(0,'"+ neuerText + "')");
	}
}

	
// Infolinks ---------------------------------------------------------------------------
// Ein-/Ausblenden
var einAus;

function infoAufZu(nr,groesse){
	for(c=0;c<20;c++){	
		target = "text_r"+c;		
		if(document.getElementById(target) && groesse){  				
    		switchCSS(target,'height',groesse);
    	} 
	}
	
			
	if (einAus==1){  //infolink wird geschlossen		
		hideLayer('infolink'); 
		hideLayer('pfeilicon_sch');
		showLayer('pfeilicon');
		switchCSS('streifen_rechts','width',12);
		
		for(c=0;c<20;c++){	
			target = "text_r"+c;		
			if(document.getElementById(target)){  				
    			switchCSS(target,'height',418);
    		} 
		}

		einAus=0;    	 
			
	} else {	//infolink wird geoeffnet
		showLayer('infolink');
		showLayer('pfeilicon_sch');
		hideLayer('pfeilicon'); 
		switchCSS('streifen_rechts','width',1400);
		
		/*for (c=1;c<nr;c++)
		{
			eval(swapImage('streifen_'+c,'info'+lockColor,'streifen_rechts'));
		}*/
		einAus=1;
	}			
}


// Bildscripts ----------------------------------------------------------------------
// Bilder tauschen
	function swapImage(where, to, ebene) { 
		if ((ebene) && (document.layers))	{eval('window.document.' + ebene + '.document.' + where + '.src=' + to + '.src');} // Netscape 4.x und bild in layer
		else 								{eval('window.document.' + where + '.src=' + to + '.src');}
	}
	
	
// StyleSheet-Kontrolle ----------------------------------------------------------
// Genaues Aendern einer CSS-Angabe
function switchCSS(refTag, welchesAttr, neuesAttr) {
	if (document.all) {
		eval("document.all."+ refTag +".style."+welchesAttr + "='"+ neuesAttr +"'");
	}
	else { 
		eval("document.getElementById('"+ refTag +"').style." + welchesAttr + "='"+ neuesAttr +"'");
	}
}
	



//------------------------------------------------- Farbaenderung der Streifen
var lockColor="";
	
function changeStripeColor(index)
{
	for (x=1;x<6;x++) 
	{
		if(eval("document.getElementById('strp"+x+"')") && x!=lockColor)
		{		
			eval(swapImage('streifen'+x,'str4','streifen'));
			
			if(eval("document.getElementById('strp_"+x+"')"))
			{					
				eval(swapImage('streifen_'+x,'str4','streifen'));
			}
		}
	}
	if (index!=6)
	{
		eval(swapImage('streifen'+index,'str'+(index-1),'streifen'));
		if(eval(document.getElementById('strp_'+index)))
		{
			eval(swapImage('streifen_'+index,'str'+(index-1),'streifen'));
		}		
	}
}



//--------------------------Suchfeldabfrage Wert auslesen und pruefen
function checkSearch() {
	if(document.layers) {from = "document.meta_nav.document.Sucheingabe.";} //text 1
	else 				{from = "document.Sucheingabe.";}
	
	
	searchParam=eval(from + "Terms.value");
	if( searchParam.length > 0 ) {
	
		var searchExpr = /[a-zA-Z0-9]+/;
		var result = searchExpr.test(searchParam);
		if( result == true ) {
			window.location="http://www.theprojectgroup.com/cgi-bin/search/search.pl?set:lang=english&Match=0&Realm=TPG+Website+English&Terms=" + searchParam;
		}	
	}
	
}

// Fensterverwaltung ----------------------------------------------------------------------
// fenster oeffnen
function fenster(refURL,hoehe,posX,posY,nr){
	F1 = eval(window.open(refURL,'Fenster2','width=690,height=' + hoehe + ',left=' + posX +',top=' + posY + ',resizable=yes,scrollbars=yes'));
	F1.focus();
}

function fensterpop(refURL,hoehe,posX,posY,nr){
	if (window.F2){
		F2.close();
	}
	F2 = eval(window.open(refURL,'Fenster','width=690,height=' + hoehe + ',left=' + posX +',top=' + posY + ',resizable=yes,scrollbars=yes'));
	F2.focus();
}


function fensterAnpassen(versatz){
	if (!window.innerWidth){
		screen_breite = document.body.clientWidth;
		screen_hoehe = document.body.clientHeight;
	} else {		
		screen_breite = window.innerWidth;
		screen_hoehe = window.innerHeight;
	}
	
	textr_breite = screen_breite-345;
	position_fenster_x = (screen_breite-1020)/2;	
	position_fenster_y = screen_hoehe/13; 
	position_inci_x = position_fenster_x + 935;
	position_inci_y = position_fenster_y + 56;
	
	if (screen_breite<1010 || screen_hoehe<768){	
    	putLayer('fenster','top',0);
    	putLayer('fenster','left',0);
    	switchCSS('grund','overflow','auto'); //Scrollbalken einfuegen
    	if (screen_breite<800){
    		switchCSS('grund','overflow','scroll');
    		switchCSS('grund','width',screen_breite);
    	}
    	switchCSS('grund','height','100%');
		for(c=0;c<20;c++){			
			if(eval(document.getElementById("text_r"+c))){   
    			eval("switchCSS('text_r"+c+"','width',"+(textr_breite-versatz)+")");
    		} 
		}
		showLayer('fenster');
    } else {
    	
    	putLayer('fenster','left',position_fenster_x);
    	putLayer('fenster','top',position_fenster_y);
    	switchCSS('grund','overflow','hidden'); //Scrollbalken ausblenden
    	switchCSS('grund','height','100%');  
    	for(c=0;c<20;c++){    		
       		if(eval(document.getElementById("text_r"+c))){    
       			eval("switchCSS('text_r"+c+"','width'," + (679-versatz)+")");
    		} 
    	}  
		showLayer('fenster'); 
    }   
}

// Spezielle Druckvorschau fuer TPG-Seiten
// Auslesen des innerHTML von 'grund' - oeffnen eines neuen Fensters und einfuegen in das neue Fenster
function seiteDrucken(textRef){
	eval("fenster('../global/druckvorschau.html?"+textRef+"',400,0,0,2)");		
}

// Sitemap aufrufen 610* 464 px
function openSitemap(index){
	posX = document.getElementById('fenster').style.left;
	posY = document.getElementById('fenster').style.top;
	posY = Number(posY.substr(0,(posY.length-2)));
	posY = posY+196;
	
	if (!index){
		eval("window.open('../global/sitemap_e.html','Sitemap','width=610,height=420,left=" +posX+ ",top=" +posY + ",resizable=no,scrollbars=no')");
	} else {
		eval("window.open('global/sitemap_e.html','Sitemap','width=610,height=420,left=" +posX+ ",top=" +posY + ",resizable=no,scrollbars=no')");
	}
}
