
//************************************************************************* 
//***********************   Globale Funktionen   **************************
//************************************************************************* 
//********************** Frameset laden - PS 01.09.2005 ********************** 	
var AnzGeladeneFrames = 0;
	
	function FrameGeladen(){	
		AnzGeladeneFrames = AnzGeladeneFrames + 1;
		FrameAblaufSteuerung();
}

function FrameAblaufSteuerung(){//alert("AnzGeladeneFrames : " + AnzGeladeneFrames);
	if (AnzGeladeneFrames == 4){
			//Sprache.location = "load.htm";
			laden('N');
			//ABC.location = "abc.htm";
			//Aktuell.location = "e.htm";
			//Begriffe.location = "e.htm";
			//Erklaerung.location = "e.htm";
		}
}

//********************** Ende Frameset laden - PS 01.09.2005 ********************** 	

//************************************************************************* 
//************************************* Globale Variablen ***************** 

var SpNrPg;		// Nummer der Programm-Sprache
var NrLex = 1;		// Nummer des Lexikons, 1= komplettes Lex.
var NrBe = 0;		// Nummer des Begriffs
var sHref = document.location.href;
var iPos  = sHref.indexOf("?");


if(iPos)
{
	// Es werden Parameter übermittelt, z.B. Sprache, Begriffe, Lexikon
	var sParam = sHref.slice(iPos + 1);
	var aParam = sParam.split("&")

	var iActParam;
	for(iActParam in aParam)
	{
		iPos  = aParam[iActParam].indexOf("=");
		var sParamName  = aParam[iActParam].slice(0,iPos);
		var sParamValue = aParam[iActParam].slice(iPos + 1);
		switch (sParamName)
		{
			case "SP":	// Sprache
				switch (sParamValue.toLowerCase())
				{
					case "d":	// Deutsch
						SpNrPg = 1; break;

					case "f":	// Französisch
						SpNrPg = 2; break;

					case "i":	// Italienisch
						SpNrPg = 3; break;

					case "e":	// Englisch
						SpNrPg = 4; break;
					default :
						SpNrPg = 1; // Deutsch
				}
				break;

			case "ID":	// Begriff
				NrBe = Number(sParamValue); break;

			case "LexID":	// Lexikon
				NrLex = Number(sParamValue);
				if (!NrLex) NrLex = 1;
				break;
		}

	}

}
else
{
	// Keine Parameter vorhanden, Lexikon in Deutsch starten
	if (typeof(SpNrPg) != "number" )
		SpNrPg = 1;	// Deutsch
}




var sSprache = new Array ("", "_d", "_f", "_i", "_e");	// Liste der Sprachen
var SpNrBe = SpNrPg;
var SpNrEr = SpNrPg;
var SpPg = sSprache[SpNrPg];		// Sprache Programm
var SpBe = sSprache[SpNrBe];		// Sprache Begriff
var SpEr = sSprache[SpNrEr];		// Sprache Erklaerung
var bSpPrClick = false;			// PgSprach immer Neu laden
var sAktBegriff = "";
var bNetscape = false;




//************************************************************************* 
//********************************** Funktionen *************************** 


//********************** laden ueber die 4 Listenfelder ********************** 
	function laden(art) 
	{
	//alert('function laden')
		var nr = 0;
		switch (art)
		{ 	
			case "L":  		// neues Lexikon laden
				ladeLexikon();
				break;
				
			case "B":  		// neue Begriffe laden
			//alert('case B')
				SpNrBe = Sprache.document.Sel.B.selectedIndex + 1;
				SpBe = sSprache[SpNrBe];
				ladeBE();
				setAktBegriff();
				break;
				
			case "E":  		// neuer Erklaerungstext laden
				SpNrEr = Sprache.document.Sel.E.selectedIndex + 1;
				SpEr = sSprache[SpNrEr];
				ladeER(NrBe);
				break;
				
			case "P":  		// neue Begriffe und Erklaerung laden
			//alert('case P')
				bSpPrClick = false;
				nr = Sprache.document.Sel.P.selectedIndex + 1;
				SpNrBe = nr;
				SpNrEr = nr;
				SpNrPg = nr;
				SpBe = sSprache[SpNrBe];
				SpEr = sSprache[SpNrEr];
				SpPg = sSprache[SpNrPg];
				Sprache.location.href = "head" + SpPg + ".htm";
				ladeBE();
				ladeER(NrBe);
				break;
				
			case "N":  		// Neu Laden von Frameset
			//alert('case N')
				bSpPrClick = false;
				nr = SpNrPg;
				SpNrBe = nr;
				SpNrEr = nr;
				SpNrPg = nr;
				SpBe = sSprache[SpNrBe];
				SpEr = sSprache[SpNrEr];
				SpPg = sSprache[SpNrPg];
				Sprache.location.href = "head" + SpPg + ".htm";
				//ladeBE();
				ladeBE(NrBe);
				ladeER(NrBe);
			break;
			
				
		} 
	}

//********************** laden Neues Lexikon ********************** 

	function ladeLexikon()
	{
	//alert('function ladeLexikon')
		NrLex = Sprache.document.Sel.L.selectedIndex + 1;
		NrBe = 0;
		Erklaerung.location.href = "e.htm"				// leere Erklaerung
		Begriffe.location.href = "b_" + NrLex + SpBe + ".htm"
		setAktBegriff();
	}


//********************** laden der Begriffe ********************** 

	function ladeBE(Buchstabe) 
	{
	//alert('function ladeBE')
		if (Buchstabe == null){
			Begriffe.location.href = "b_" + NrLex + SpBe + ".htm";
		}else{//alert(Buchstabe)
			Begriffe.location.href = "b_" + NrLex + SpBe + ".htm#" + Buchstabe;
		}
	}

	
//********************** laden der Erklaerungen ********************** 

	function ladeER(nr, sAktBe) 
	{
		if (nr > 0)	
			{	
			sBegriff = get4erString(nr);					// Nr. 4-stellig
			var newErklaerung = "e_" + sBegriff + SpEr + ".htm";
			Erklaerung.location.href = newErklaerung;			// neue Seite Laden
			NrBe = nr;
			setAktBegriff();
			}
	}

	
//********************** laden der Erklaerungen über Querverweis ************ 

	function ladeErQuer(nr) 
	{
	//alert('function ladeErQuer')
		sBegriff = get4erString(nr);						// Nr. 4-stellig
		var newErklaerung = "e_" + sBegriff + SpEr + ".htm";
		Erklaerung.location.href = newErklaerung;				// neue Seite Laden	
		Begriffe.location.href = "b_" + NrLex + SpBe + ".htm#" + nr;
		NrBe = nr;
		setAktBegriff();
	}

		
//********************** zeigt aktueller Begriff ********************** 

	function setAktBegriff()
	{
		if (NrBe > 0)	
			{	
			var newErklaerung = "e_" + sBegriff + SpBe + ".htm";
			Aktuell.location.href = newErklaerung;				// neuer aktueller Begriff
			}
		else
			Aktuell.location.href = "e.htm";				// leere Seite
	}
	

//********************** 4-stellige Zahl als String bekommen ********************** 
	function get4erString(nr) 
	{
		if (nr < 10)		return ("000" + nr); 
		if (nr < 100)		return ("00" + nr); 
		if (nr < 1000)		return ("0" + nr); 
		return ("" + nr); 
	}
	
	
