/*	JavaScript Document
	*** Internetdatenbank Abraxas Verlag GmbH Version 2008 -english- ***
	*** Copyright 2008 by A.C.S. Computer, D-31174 Schellerten       ***
	*** Autor: Oliver Silbe                                          ***
*/

// die globale Empfangsvariable fÃ¼r die XML-Struktur
var request = null;

// erzeugt ein globales Anfrageobject (var request) an den Server
/*function createRequest() {

	if (window.XMLHttpRequest) {
		var request = new XMLHttpRequest();
		if (request.overrideMimeType) {
			request.overrideMimeType('text/xml');
		} else if (window.ActiveXObject) { // IE
		try {
			request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
		try {
			request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
		}
		}
			if (!request) {
				alert("An error occurs. Please update your browser!");
				return false;
			} else {
				return request;
			}
	}
} // END -createRequest()*/

function SetCounterVisibility(AVisible) {
	/* Ein- oder ausblenden des Zählerblocks */
	var CCaptions = document.getElementById("FooterSegment2CaptionHide");
	var CCounter  = document.getElementById("FooterSegment2ContentHide");
	
	if (AVisible == true) {
		CCaptions.style.visibility = "visible";
		CCounter.style.visibility = "visible";
	} else {
		CCaptions.style.visibility = "hidden";
		CCounter.style.visibility = "hidden";
	}
}

function createRequest() {
	
	try {
		if (window.XMLHttpRequest ) {
			request = new XMLHttpRequest();
			return request;
		} else if ( window.ActiveXObject ) {
			request = new ActiveXObject( "Microsoft.XMLHTTP" );
			return request;
		} else {
			alert ( 'Your browser doesn`t support Ajax !' );
			return false;
		} // if -end
	} catch ( e ) {
		alert ( 'Error: ' + e );
		return false
	} // try -end

} // END -createRequest()

function triggerXML(dom) { 

	// übergibt den Hauptknoten an -ResultElements- zum Auslesen des Attributes
	var ResultElements = dom.getElementsByTagName("NSW08ResultSet");
	// übergibt alle Knoten "ResultItems" (Array) an -ResSet-
	var ResSet = dom.getElementsByTagName("ResultItems");
	switch(ResultElements[0].attributes[0].nodeValue) {
		case "RecordList": DrawRecordList(ResSet);
			// es wurde nach Namen gesucht, erzeuge Liste mit Namen und Beschreibung
			break;
		case "ImageList": DrawImageList(ResSet);
			// es wurde nach Typ und Farbe gesucht, erzeuge Liste mit Namen und Bildern oder Beschreibung
			break;
		case "EmptyDataSet" : DrawEmptyResultBox();
			// es wurden keine Datensätze gefunden
			break;
		case "SingleItemBtn": DrawSingleItem(ResSet, true);
			// es wurde genau 1 Datensatz gefunden bzw. in der Ergebnisliste angeklickt
			// mit Zurück-Button
			break;
		case "SingleItem": DrawSingleItem(ResSet, false);
			// es wurde genau 1 Datensatz gefunden bzw. in der Ergebnisliste angeklickt
			// ohne Zurück-Button
			break;
		case "RecOverflow": DrawOverflowBox();
			// es wurden zu viele Datensätze gefunden. Confirm-Dialog
			break;
		case "RecMaxlimit": DrawMaxlimitBox();
			// es wurden mehr als 1000 Datensätze gefunden, nicht mehr anzeigen.
			break;
		case "TypColOverflow": DrawTCOverflowBox();
			// es wurden zu viele Datensätze bei Type & Color gefunden
			break;
		case "ImgListConfirm": DrawSeeImagelistBox();
			// es wurden mögliche Abb. gefunden, Confirm-Box anzeigen
			break;
		case "UpdMessageSet": DrawUpdateMessageBox(ResultElements[0].attributes[1].nodeValue, ResultElements[0].attributes[2].nodeValue);
		    // es soll eine Meldungsbox bearbeitete und neue Datensätze seit Jahresbeginn gezeigt werden
			break;
	}
	RefreshCounter();
} // END -triggerXML(dom)

function DrawSingleItem(ResItems, drawBtn) {

	var tmpStr = "";
	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}
	
	// dem Hauptcontainer die CSS-Klasse des aktuellen ResultSet zuweisen
	mainCont.className = "ResDisplaySingleItem";
	
	if (drawBtn == true) { // Button -Zurück- zeichnen
		// DIV für Zurück-Button mit Textknoten erzeugen und Hauptcontainer hinzufügen
		var BckCont = document.createElement("div"); // Übergeordneter DIV für BTN und Grafiken
		BckCont.id = "RDSI_BtnContainer";
		
		// Pfeile links und rechtes erzeugen
		var arLeft  = document.createElement("img");
		var arRight = document.createElement("img");
		arLeft.className = "BTN_Arrows";
		arLeft.src = "img/pfeil_links.jpg";
		arLeft.width = "12";
		arLeft.height = "15";

		arRight.className = "BTN_Arrows";
		arRight.src = "img/pfeil_rechts.jpg";
		arRight.width = "12";
		arRight.height = "15";
		
		var BckBtn = document.createElement("div"); // DIV für Zurück-Button erzeugen
		var BckText = document.createTextNode("back to search list"); // Textknoten für DIV erzeugen
		// Styles und ID dem Zurück-Button zuweisen
		BckBtn.id = "RDSI_BtnGoback";
		BckBtn.style.visibility = "visible";
		BckBtn.appendChild(BckText);  // Textknoten (Button-Caption) dem Button zuweisen

		// Den Button Container befüllen
		BckCont.appendChild(arLeft);
		BckCont.appendChild(BckBtn);
		BckCont.appendChild(arRight);

		// Den fertigen Button Container dem Hauptinhaltscontainer zuweisen
		mainCont.appendChild(BckCont);
		// die Eventhandler dem fertigen und zugewiesenen Zurück-Button zuweisen
		InitBackButton();
		// temp. Variablen aus Speicher entfernen
		delete(arLeft);
		delete(arRight);
		delete(BckBtn);
		delete(BckText);
		delete(BckCont);
	} else { // keinen Button -Zurück- zeichnen
		// DIV für Zurück-Button mit Textknoten erzeugen und Hauptcontainer hinzufügen
		var BckCont = document.createElement("div"); // Übergeordneter DIV für BTN und Grafiken
		BckCont.id = "RDSI_BtnContainer";
		// Den fertigen Button Container dem Hauptinhaltscontainer zuweisen
		mainCont.appendChild(BckCont);
		// temp. Variablen aus Speicher entfernen
		delete(BckCont);	
	}
	
	// ID RDSI_Caption erzeugen und mit Unterknoten dem Hauptinhaltscontainer hinzufügen
	var RDSI_Caption = document.createElement("div");

	RDSI_Caption.id = "RDSI_Caption";
	RDSI_Caption.className = "RDSI_Basic";

	var RDSI_CaptionString = document.createElement("div");
	RDSI_CaptionString.id = "RDSI_CaptionString";
	if (ResItems[0].childNodes[0].hasChildNodes()) {
		tmpStr = ResItems[0].childNodes[0].firstChild.nodeValue;
	} else {
		tmpStr = "";
	}  
	RDSI_Caption.appendChild(RDSI_CaptionString);
	mainCont.appendChild(RDSI_Caption);
	document.getElementById("RDSI_CaptionString").innerHTML = tmpStr;
	
	// Panel für "Beschreibung" erzeugen und hinzufügen
	// linke Seiten Panel mit Caption
	var res_info_panel = document.createElement("div");

	res_info_panel.className = "RDSI_Basic";
	res_info_panel.id = "RDSI_Information";

		var res_label_cont = document.createElement("div");

		res_label_cont.className = "ResultPanelLabel";
		res_label_cont.id = "id_21";

			var res_label = document.createElement("div");

			res_label.className = "cl_1";
			res_label.id = "id_13";

		res_label_cont.appendChild(res_label);
		delete(res_label);
	res_info_panel.appendChild(res_label_cont);
	delete(res_label_cont);

	// rechte Seite (Panel mit Beschreibungsfeld)
	var res_desc_panel = document.createElement("div");

	res_desc_panel.className = "cl_2";
	res_desc_panel.id = "id_23";

		if (ResItems[0].childNodes[1].hasChildNodes()) {
			tmpStr = ResItems[0].childNodes[1].firstChild.nodeValue;
		} else {
			tmpStr = "";
		}

	res_info_panel.appendChild(res_desc_panel);
	delete(res_desc_panel);
	mainCont.appendChild(res_info_panel);
	delete(res_info_panel);
	document.getElementById("id_13").innerHTML = "information";
	
	// wenn nicht eingeloggt liefere nur die ersten x Zeilen
	document.getElementById("id_23").innerHTML = tmpStr;
	
	// Panel für "Fundorte" erzeugen und hinzufügen
	// linke Seiten Panel mit Caption
	var res_loc_panel = document.createElement("div");

	res_loc_panel.className = "RDSI_Basic";
	res_loc_panel.id = "RDSI_Location";

		var res_label_cont = document.createElement("div");
		
		res_label_cont.className = "ResultPanelLabel";
		res_label_cont.id = "id_21";

			var res_label = document.createElement("div");

			res_label.className = "cl_1";
			res_label.id = "id_14";

		res_label_cont.appendChild(res_label);
		delete(res_label);
	res_loc_panel.appendChild(res_label_cont);
	delete(res_label_cont);
	
	// rechte Seite (Panel mit Fundortefeld)
	var res_loc_cont = document.createElement("div");

	res_loc_cont.className = "cl_2";
	res_loc_cont.id = "id_24";

		if (ResItems[0].childNodes[2].hasChildNodes()) {
			tmpStr = ResItems[0].childNodes[2].firstChild.nodeValue;
		} else {
			tmpStr = "";
		}
	res_loc_panel.appendChild(res_loc_cont);
	delete(res_loc_cont);
	mainCont.appendChild(res_loc_panel);
	delete(rec_loc_panel);
	document.getElementById("id_14").innerHTML = "location";
	document.getElementById("id_24").innerHTML = tmpStr;
	
	// Panel für "Lieferanten" erzeugen und hinzufügen
	// linke Seiten Panel mit Caption
	var res_supp_panel = document.createElement("div");

	res_supp_panel.className = "RDSI_Basic";
	res_supp_panel.id = "RDSI_Supplier";

		var res_label_cont = document.createElement("div");

		res_label_cont.className = "ResultPanelLabel";
		res_label_cont.id = "id_21";

			var res_label = document.createElement("div");

			res_label.className = "cl_1";
			res_label.id = "id_15";

		res_label_cont.appendChild(res_label);
		delete(res_label);
	res_supp_panel.appendChild(res_label_cont);
	delete(res_label_cont);
	
	// rechte Seite (Panel mit Lieferantenfeld)
	var res_supp_cont = document.createElement("div");

	res_supp_cont.className = "cl_2";
	res_supp_cont.id = "id_22";

		if (ResItems[0].childNodes[3].hasChildNodes()) {
			tmpStr = ResItems[0].childNodes[3].firstChild.nodeValue;
		} else {
			tmpStr = "";
		}
	res_supp_panel.appendChild(res_supp_cont);
	delete(res_supp_cont);
	mainCont.appendChild(res_supp_panel);
	delete(res_supp_panel);
	document.getElementById("id_15").innerHTML = "contact";
	document.getElementById("id_22").innerHTML = tmpStr;
	
	// wenn nicht eingeloggt liefere nur die ersten 4 Zeilen
	document.getElementById("id_22").innerHTML = tmpStr;

	// Panel für Images erzeugen
	var img_panel = document.createElement("div");

	img_panel.className = "RDSI_Basic";
	img_panel.id = "RDSI_Image";

		var img_cont = document.createElement("div");

		img_cont.className = "RDSI_Basic";
		img_cont.id = "RDSI_ImagePanel";

			if (ResItems[0].childNodes[4].hasChildNodes()) {
				var image_list = ResItems[0].getElementsByTagName("Image");
				for (var i = 0; i < image_list.length; i++) {
					var img_tag = document.createElement("img");
					img_tag.src = "images/" + image_list[i].firstChild.nodeValue;
					img_cont.appendChild(img_tag);
				}
			}
	img_panel.appendChild(img_cont);
	delete(img_cont);	
	mainCont.appendChild(img_panel);
	delete(img_panel);
} // END -DrawSingleItem(ResItems)

function DrawImageList(ResItems) {

	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}
	
	// dem Hauptcontainer die CSS-Klasse des aktuellen ResultSet zuweisen
	mainCont.className = "ResDisplayImageList";
	
	// DIV für Zurück-Button mit Textknoten erzeugen und Hauptcontainer hinzufügen
	var BckBtn = document.createElement("div"); // DIV für Zurück-Button erzeugen
	var BckText = document.createTextNode("back to search list"); // Textknoten für DIV erzeugen
	// Styles und ID dem Zurück-Button zuweisen
	BckBtn.id = "RDSI_BtnGoback";
	BckBtn.style.visibility = "hidden";
	BckBtn.appendChild(BckText);  // Textknoten (Button-Caption) dem Button zuweisen
	
	// Den fertigen Button dem Hauptinhaltscontainer zuweisen
	mainCont.appendChild(BckBtn);
	// die Eventhandler dem fertigen und zugewiesenen Zurück-Button zuweisen
	InitBackButton();
	// temp. Variablen aus Speicher entfernen
	delete(BckBtn);
	delete(BckText);
	
	// ID RDSI_Caption erzeugen und mit Unterknoten dem Hauptinhaltscontainer hinzufügen
/*	var RDSI_Caption = document.createElement("div");
	RDSI_Caption.id = "RDSI_Caption";
	RDSI_Caption.className = "RDSI_Basic";
	RDSI_Caption.style.borderBottom = "2px solid #000000";

	var RDSI_CaptionString = document.createElement("div");
	RDSI_CaptionString.id = "RDSI_CaptionString";
	
	RDSI_Caption.appendChild(RDSI_CaptionString);
	mainCont.appendChild(RDSI_Caption);*/
	
		// Leeren Balken gegen Grafik ausgetausche (18.05.2009)
	var RDSI_CaptionImage = document.createElement("img");
	RDSI_CaptionImage.id  = "EmptyCaptionImage";
	RDSI_CaptionImage.src = "/img/spacer.gif";
	RDSI_CaptionImage.style.marginLeft = "-3px";
	
//	RDSI_Caption.appendChild(RDSI_CaptionImage);
	mainCont.appendChild(RDSI_CaptionImage);
		
	// Inhaltscontainer für die Segmente
	var ResRecordList = document.createElement("div");
	ResRecordList.className = "ResDisplayRecListContainer";
	
	var idno = 1; // zu zählen der IDs für die Zuweisung von -innerHTML-
	var idnumb = null;
	var linenumb = null;
	
	// 1. Segment für Namen mit Link erstellen und Hauptinhaltscontainer hinzufügen
	for (var i = 0; i < ResItems.length; i++) { 
		// ... 1. Block für die Zeile
		var FirstSegment = document.createElement("div");
		FirstSegment.className = "ResDisplayRecListSegment RDRListSegBorderLeft";
			// ... Inhaltssegment 1
			idnumb = "lnknr" + idno;
			var FirstSegContent = document.createElement("div");
			var FirstLink = document.createElement("a");
//			var FirstLinkText = document.createTextNode(ResItems[i].childNodes[0].firstChild.nodeValue);
			FirstLink.href = "javascript:LoadSingleItemView('"+ResItems[i].attributes[0].nodeValue+"')";
			FirstLink.id = idnumb;
			FirstSegContent.className = "ResDisplayHeaderSection";
			FirstSegContent.appendChild(FirstLink);
			FirstSegment.appendChild(FirstSegContent);

		// wenn das Attribut "Type" des XML-Knotens "Text" ist ... 
		if (ResItems[i].childNodes[1].attributes[0].nodeValue == "Text") {
		
			// ... 2. Segment für Namen mit Link erstellen und Hauptinhaltscontainer hinzufügen
			var SecondSegment = document.createElement("div");
			SecondSegment.className = "ResDisplayRecListSegment RDRListSegBorderRight";
				// ... Inhaltssegment 2
				var SecondSegContent = document.createElement("div");
				linenumb = "img_linenr" + idno; 
				var ImgSegLink = document.createElement("a");
				ImgSegLink.href = "javascript:LoadSingleItemView('"+ResItems[i].attributes[0].nodeValue+"')";
				ImgSegLink.id = linenumb;
//				var SecondSegTextnode = document.createTextNode(ResItems[i].childNodes[1].firstChild.nodeValue);
				SecondSegContent.className = "ResDisplayLetterSection";
				SecondSegContent.appendChild(ImgSegLink);
				SecondSegment.appendChild(SecondSegContent);
				
		// wenn das Attribut "Type" des XML-Knotens "Image" ist ... 		
		} else if (ResItems[i].childNodes[1].attributes[0].nodeValue == "Image") {
		
			// ... 2. Segment für Namen mit Link erstellen und Hauptinhaltscontainer hinzufügen
			var SecondSegment = document.createElement("div");
			SecondSegment.className = "ResDisplayRecListSegment ResDisplayImageSection";
				// ... Bildersegment im Link
				var ImgLinkSegment = document.createElement("a");
				ImgLinkSegment.href = "javascript:LoadSingleItemView('"+ResItems[i].attributes[0].nodeValue+"')";
				var ImageSegment = document.createElement("img");
				ImageSegment.src = "images/" + ResItems[i].childNodes[1].firstChild.nodeValue;
				ImgLinkSegment.appendChild(ImageSegment);
				SecondSegment.appendChild(ImgLinkSegment);
		} // if-end

		// dem Hauptinhaltscontainer hinzufügen
		ResRecordList.appendChild(FirstSegment);		// 1. Segment (Name)
		ResRecordList.appendChild(SecondSegment);		// 2. Segment (Name oder Bild)
		idno++;
	} // for-end
	
	/* den fertigen Inhaltscontainer (ResDisplayRecListContainer)
	   dem Hauptinhaltscontainer (ResDisplayRecordList) hinzufügen    */
	mainCont.appendChild(ResRecordList);  
	
	var idno = 1; // zu zählen der IDs für die Zuweisung von -innerHTML-
	
	// wenn der Hauptcontainer vollständig erstellt ist den Text zu den LINKS hinzufügen
	for (var i = 0; i < ResItems.length; i++) { 
		idnumb = "lnknr" + idno;
		linenumb = "img_linenr" + idno;
		document.getElementById(idnumb).innerHTML = ResItems[i].childNodes[0].firstChild.nodeValue;
		if (ResItems[i].childNodes[1].attributes[0].nodeValue == "Text") {
			document.getElementById(linenumb).innerHTML = ResItems[i].childNodes[1].firstChild.nodeValue;
		}



		idno++;
	}
		
	
	
} // END -DrawImageList(ResItems)

function DrawRecordList(ResItems) {

	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}
	
	// dem Hauptcontainer die CSS-Klasse des aktuellen ResultSet zuweisen
	mainCont.className = "ResDisplayRecordList";
	
	// DIV für Zurück-Button mit Textknoten erzeugen und Hauptcontainer hinzufügen
	var BckBtn = document.createElement("div"); // DIV für Zurück-Button erzeugen
	var BckText = document.createTextNode("back to search list"); // Textknoten für DIV erzeugen
	// Styles und ID dem Zurück-Button zuweisen
	BckBtn.id = "RDSI_BtnGoback";
	BckBtn.style.visibility = "hidden";
	BckBtn.appendChild(BckText);  // Textknoten (Button-Caption) dem Button zuweisen

	// Den fertigen Button dem Hauptinhaltscontainer zuweisen
	mainCont.appendChild(BckBtn);
	// die Eventhandler dem fertigen und zugewiesenen Zurück-Button zuweisen
	InitBackButton();
	// temp. Variablen aus Speicher entfernen
	delete(BckBtn);
	delete(BckText);
	
	// ID RDSI_Caption erzeugen und mit Unterknoten dem Hauptinhaltscontainer hinzufügen
/*	var RDSI_Caption = document.createElement("div");
	RDSI_Caption.id = "RDSI_Caption";
	RDSI_Caption.className = "RDSI_Basic";
	RDSI_Caption.style.borderBottom = "2px solid #000000";

	var RDSI_CaptionString = document.createElement("div");
	RDSI_CaptionString.id = "RDSI_CaptionString";
	
	RDSI_Caption.appendChild(RDSI_CaptionString);
	mainCont.appendChild(RDSI_Caption);*/
	
	// Leeren Balken gegen Grafik ausgetausche (18.05.2009)
	var RDSI_CaptionImage = document.createElement("img");
	RDSI_CaptionImage.id  = "EmptyCaptionImage";
	RDSI_CaptionImage.src = "/img/spacer.gif";
	RDSI_CaptionImage.style.marginLeft = "-3px";
	
	mainCont.appendChild(RDSI_CaptionImage);
	
	// Inhaltscontainer für die Segmente
	var ResRecordList = document.createElement("div");
	ResRecordList.className = "ResDisplayRecListContainer";
	
	var idno = 1; // zu zählen der IDs für die Zuweisung von -innerHTML-
	var idnumb = null;
	var linenumb = null;
	
	// 1. Segment für Namen mit Link erstellen und Hauptinhaltscontainer hinzufügen
	for (var i = 0; i < ResItems.length; i++) { //alert(ResItems.childNodes.length);
		// ... 1. Block für die Zeile
		var FirstSegment = document.createElement("div");
		FirstSegment.className = "ResDisplayRecListSegment RDRListSegBorderLeft";
			idnumb = "lnknr" + idno;
			// ... Inhaltssegment 1
			var FirstSegContent = document.createElement("div");
			var FirstLink = document.createElement("a");
			FirstLink.href = "javascript:LoadSingleItemView('"+ResItems[i].attributes[0].nodeValue+"')";
			FirstLink.id = idnumb;
			FirstSegContent.className = "ResDisplayHeaderSection";
			FirstSegContent.appendChild(FirstLink);
			FirstSegment.appendChild(FirstSegContent);
		
		// ... 2. Segment für Namen mit Link erstellen und Hauptinhaltscontainer hinzufügen
		var SecondSegment = document.createElement("div");
		SecondSegment.className = "ResDisplayRecListSegment RDRListSegBorderRight";
			// ... Inhaltssegment 2
			linenumb = "descnr" + idno;
			var SecondSegContent = document.createElement("div");
			var SecondLink = document.createElement("a");
			SecondLink.href = "javascript:LoadSingleItemView('"+ResItems[i].attributes[0].nodeValue+"')";
			SecondLink.id = linenumb;
			SecondSegContent.className = "ResDisplayLetterSection";
			SecondSegContent.appendChild(SecondLink);
			SecondSegment.appendChild(SecondSegContent);
		// ... dem Zeilencontainer hinzufügen
		
		// dem Hauptinhaltscontainer hinzufügen
		ResRecordList.appendChild(FirstSegment);
		ResRecordList.appendChild(SecondSegment);
		idno++;
	}
	/* den fertigen Inhaltscontainer (ResDisplayRecListContainer)
	   dem Hauptinhaltscontainer (ResDisplayRecordList) hinzufügen    */
	mainCont.appendChild(ResRecordList);
	
	idno = 1;
	for (var i = 0; i < ResItems.length; i++) {
		idnumb = "lnknr" + idno;
		document.getElementById(idnumb).innerHTML = ResItems[i].childNodes[0].firstChild.nodeValue;
		linenumb = "descnr" + idno;
		document.getElementById(linenumb).innerHTML = ResItems[i].childNodes[1].firstChild.nodeValue;
		idno++;
	}
} // END -DrawRecordList(ResItems)

function DrawSeeImagelistBox() {
	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}

	// Variablen für Inhalt der Meldungsbox erzeugen
	var emptybox = document.createElement("div");
	var bold1    = document.createElement("b");
	var bold2    = document.createElement("b");
	
	var lnktab   = document.createElement("table");
	var tblwidth = document.createAttribute("width");
	var colspcl  = document.createAttribute("width");
	var colspcm  = document.createAttribute("width");
	var colspcr  = document.createAttribute("width");
	var calignl  = document.createAttribute("align");
	var calignr  = document.createAttribute("align");
	var row1     = document.createElement("tr");
	var col1     = document.createElement("td");
	var col2     = document.createElement("td");
	var col3     = document.createElement("td");
	var tbod     = document.createElement("tbody");
	
	var lnk_yes  = document.createElement("a");
	var lnk_no   = document.createElement("a");

	// Boxinhalt aufbauen
	emptybox.className = "OverflowDataSet";
	
	// Überschrift 1. Zeile
	bold1.appendChild(document.createTextNode("choose datasets with pictures"));  
	emptybox.appendChild(bold1);
	// Überschrift 2. Zeile
	emptybox.appendChild(document.createElement("br"));
	emptybox.appendChild(document.createElement("br"));
	emptybox.appendChild(document.createElement("br"));
	// Links für "ja" und "nein" einfügen
	lnk_yes.appendChild(document.createTextNode("yes"));
	lnk_yes.href = "javascript:showImagelist()";
	lnk_no.appendChild(document.createTextNode("no"));
	lnk_no.href = "javascript:showAll()";
	// Tabelle mit Links hinzufügen
	col1.appendChild(lnk_yes);
	col3.appendChild(lnk_no);
	colspcl.nodeValue = "42%";
	col1.setAttributeNode(colspcl);
	colspcm.nodeValue = "20%";
	col2.setAttributeNode(colspcm);
	colspcr.nodeValue = "38%";
	col3.setAttributeNode(colspcr);
	calignl.nodeValue = "right";
	calignr.nodeValue = "left";
	col1.setAttributeNode(calignl);
	col3.setAttributeNode(calignr);
	row1.appendChild(col1);
	row1.appendChild(col2);
	row1.appendChild(col3);
	tbod.appendChild(row1);
	tblwidth.nodeValue = "100%";
	lnktab.setAttributeNode(tblwidth);
	lnktab.appendChild(tbod);
	emptybox.appendChild(lnktab);

	// komplette Box hinzufügen
	mainCont.appendChild(emptybox);
	
	// Variablen freigeben
	delete(emptybox);
	delete(bold1);
	delete(bold2);
	delete(lnktab);
	delete(tblwidth);
	delete(colspcl); 
	delete(colspcm);
	delete(colspcr);
	delete(calignl);
	delete(calignr);	
	delete(row1);
	delete(col1);
	delete(col2);
	delete(col3);
	delete(lnk_yes);
	delete(lnk_no);
	delete(tbod);
} // END DrawSeeImagelistBox

function WriteRefreshedCounter(dom) {
	var Res = dom.getElementsByTagName("Hits");
	
	var FooterSeg3 = document.getElementById("FooterSeg_2mitte");
	for (var i = 0; i = FooterSeg3.childNodes.length; i++) {
		var fsChild = FooterSeg3.firstChild;
		FooterSeg3.removeChild(fsChild);
	}
	
	/* Überschrift */	
/*	var footerBold = document.createElement("b");
	var footerCaption = document.createTextNode("Search operations since 03/2008:");
		footerBold.appendChild(footerCaption);
		FooterSeg3.appendChild(footerBold);
	
	var newLine1 = document.createElement("br");
		FooterSeg3.appendChild(newLine1);*/
	
	var monthHits = document.createTextNode("this month: " + number_format(Res[0].childNodes[0].firstChild.nodeValue, 0, null, "."));
		FooterSeg3.appendChild(monthHits);
		
	var newLine2 = document.createElement("br");
		FooterSeg3.appendChild(newLine2);

	var totalHits = document.createTextNode("complete: " + number_format(Res[0].childNodes[1].firstChild.nodeValue, 0, null, "."));
		FooterSeg3.appendChild(totalHits);
		
/*	delete(footerBold);
	delete(footerCaption);
	delete(newLine1);*/
	delete(newLine2);
	delete(monthHits);
	delete(totalHits);
	delete(FooterSeg3);
	delete(Res);
} // END -WriteRefreshedCounter()

// zeigt ein DIV mit einem Lade... -Hinweis
function DrawLoadingBox() {

	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}
	
	// DIV mit Ladebox erzeugen 
	var par_text  = document.createTextNode("One moment please.");
	var par_block = document.createElement("p");
	par_block.appendChild(par_text);
	var loadbox = document.createElement("div");
	loadbox.className = "WaitForData";
	var boxtext = document.createTextNode("Loading ... !");;
	loadbox.appendChild(boxtext);
	loadbox.appendChild(par_block);
	
	// komplette Box hinzufügen
	mainCont.appendChild(loadbox);
} // END -DrawLoadingBox()

// zeigt ein DIV mit einer Meldung, das kein Datensatz gefunden wurde
function DrawEmptyResultBox() {
	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}
	
	// DIV mit Meldungsbox erzeugen
	var emptybox = document.createElement("div");
	var btag     = document.createElement("b");
	var text1    = document.createTextNode("No records found !");
	var break1   = document.createElement("br");
	var text2    = document.createTextNode("Please check for a spelling mistake");
	var break2   = document.createElement("br");
	var text3    = document.createTextNode("or change your search items.");

	btag.appendChild(text1);

	emptybox.className = "EmptyDataSet";
	emptybox.appendChild(btag);
	emptybox.appendChild(break1);
	emptybox.appendChild(text2);
	emptybox.appendChild(break2);
	emptybox.appendChild(text3);
	
	// komplette Box hinzufügen
	mainCont.appendChild(emptybox);
} // END -DrawEmptryresultBox()

function DrawMaxlimitBox() {
	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}

	// DIV mit Meldungsbox erzeugen
	var emptybox = document.createElement("div");
	var bold1    = document.createElement("b");
	var text1    = document.createTextNode("More than 1.000 records found !");
	var break1   = document.createElement("br");
	var text2    = document.createTextNode("Please specify your search items.");
	var break2   = document.createElement("br");
	var break3   = document.createElement("br");
	var text3    = document.createTextNode("Or use the exact wording or phrase");
	var break4   = document.createElement("br");
	var text4    = document.createTextNode("in quotation marks");
	var break5   = document.createElement("br");
	var text5    = document.createTextNode("(e.g. \"Amazon Flower\")");

	emptybox.className = "OverflowDataSet";
	bold1.appendChild(text1);
	emptybox.appendChild(bold1);
	emptybox.appendChild(break1);
	emptybox.appendChild(text2);
	emptybox.appendChild(break2);
	emptybox.appendChild(break3);
	emptybox.appendChild(text3);
	emptybox.appendChild(break4);
	emptybox.appendChild(text4);
	emptybox.appendChild(break5);
	emptybox.appendChild(text5);

// komplette Box hinzufügen
	mainCont.appendChild(emptybox);
	
	delete(emptybox);
	delete(bold1);
	delete(text1);
	delete(text2);
	delete(break1);
	delete(break2);
	delete(break3);
	delete(text3);
	delete(break4);
	delete(text4);
	delete(break5);
	delete(text5);
	

} // END -DrawMaxlimitBox()

// zeigt ein DIV mit einer "Zu viele Datensätze gefunden"-Meldung an 
// mit etwas anderer Meldung nach Suche Type & Color
function DrawTCOverflowBox() {
	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}

	// DIV mit Meldungsbox erzeugen
	var emptybox = document.createElement("div");
	var bold1    = document.createElement("b");
	var break1   = document.createElement("br");
	var text1 	 = document.createTextNode("More than 250 records found !");
	var text3    = document.createTextNode("To continue click on ");
	var bold2    = document.createElement("b");
	var text3a   = document.createTextNode("-show all records-");
	var break3   = document.createElement("br");
	var text4    = document.createTextNode("This operation may take a few seconds.");
	var paragr1  = document.createElement("p");
	var showlnk = document.createElement("a");	
	var lnktext = document.createTextNode("- show all records -");

	showlnk.appendChild(lnktext);
	showlnk.href = "javascript:showAll()";

	emptybox.className = "OverflowDataSet";
	bold1.appendChild(text1);
	emptybox.appendChild(bold1);
	emptybox.appendChild(break1);
	bold2.appendChild(text3a);
	emptybox.appendChild(text3);
	emptybox.appendChild(bold2);
	emptybox.appendChild(break3);
	emptybox.appendChild(text4);
	paragr1.appendChild(showlnk);
	emptybox.appendChild(paragr1);	

// komplette Box hinzufügen
	mainCont.appendChild(emptybox);

	delete(emptybox); 
	delete(bold1); 
	delete(break1); 
	delete(text1); 
	delete(text3); 
	delete(bold2); 
	delete(text3a); 
	delete(break3); 
	delete(text4); 
	delete(paragr1); 
	delete(showlnk); 
	delete(lnktext);
} // END -DrawTCOverflowBox()

// zeigt ein DIV mit einer "Zu viele Datensätze gefunden"-Meldung an
function DrawOverflowBox() {
	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}

	// DIV mit Meldungsbox erzeugen
	var emptybox = document.createElement("div");
	var bold1    = document.createElement("b");
	var break1   = document.createElement("br");
	var text1 	 = document.createTextNode("More than 250 records found !");
	var break2   = document.createElement("br");
	var text2    = document.createTextNode("Please specify your search items or");
	var text3    = document.createTextNode("click on ");
	var bold2    = document.createElement("b");
	var text3a   = document.createTextNode("-show all records-");
	var break3   = document.createElement("br");
	var text4    = document.createTextNode("This operation may take a few seconds.");
	var paragr1  = document.createElement("p");
	var showlnk = document.createElement("a");	
	var lnktext = document.createTextNode("- show all records -");

	showlnk.appendChild(lnktext);
	showlnk.href = "javascript:showAll()";


	emptybox.className = "OverflowDataSet";
	bold1.appendChild(text1);
	emptybox.appendChild(bold1);
	emptybox.appendChild(break1);
	emptybox.appendChild(text2);
	emptybox.appendChild(break2);
	bold2.appendChild(text3a);
	emptybox.appendChild(text3);
	emptybox.appendChild(bold2);
	emptybox.appendChild(break3);
	emptybox.appendChild(text4);
	paragr1.appendChild(showlnk);
	emptybox.appendChild(paragr1);	

// komplette Box hinzufügen
	mainCont.appendChild(emptybox);

	delete(emptybox); 
	delete(bold1); 
	delete(break1); 
	delete(text1); 
	delete(break2); 
	delete(text2); 
	delete(text3); 
	delete(bold2); 
	delete(text3a); 
	delete(break3); 
	delete(text4); 
	delete(paragr1); 
	delete(showlnk); 
	delete(lnktext);

} // END DrawOverflowBox()

function complete() {
	switch (request.readyState) {
		case 0:
		case 1:
		case 2:
		case 3: return;
		case 4: triggerXML(request.responseXML);
				return true;
	}
	return false;
} // END -complete()

function readCounter() {
	switch (request.readyState) {
		case 0:
		case 1:
		case 2:
		case 3: return;
		case 4: WriteRefreshedCounter(request.responseXML);
	}
}

// weist die Eventhandler nach dem Erzeugen des DIV-Abschnittes zu
function InitBackButton() {

	var tButton = document.getElementById("RDSI_BtnGoback");
	tButton.onclick = function() {
		DrawLoadingBox();
		request = createRequest();
		request.onreadystatechange = complete;
		request.open("GET", "getdbrequest.php" + url_param + url_session + "&btnback=", true);
		request.send(null);
		
	}
	tButton.onmouseover = function() {
		this.style.cursor = "pointer";
		this.style.backgroundColor = "#CCCCCC";
		this.style.color = "black";
	}
	tButton.onmouseout = function() {
		this.style.cursor = "auto";
		this.style.backgroundColor = "#333333";
		this.style.color = "white";
	}
} // END -InitBackButton()

function LoadSingleItemView(itemNr) {
	
	DrawLoadingBox();
	request = createRequest();
	request.onreadystatechange = complete;
	request.open("GET", "getdbrequest.php?number=" + itemNr + url_session, true);
	request.send(null);

} // END -LoadSingleItemView(itemNr)

function init_firststart() {

	url_param = "?name=firststart";
	request = createRequest();
	request.onreadystatechange = complete;
	request.open("GET", "getdbrequest.php" + url_param + url_session, true);
	request.send(null);
	SetCounterVisibility(true);
} // END -init_firststart()

// aktualisiert die Zähleranzeige
function RefreshCounter() {

		request = createRequest();
		request.onreadystatechange = readCounter;
		request.open("GET", "gethits.php", true);
		request.send(null);
} // END -RefreshCounter()

function showAll() {
	DrawLoadingBox();
	url_param = url_param + "&showall=true";
	request = createRequest();
	request.onreadystatechange = complete;
	request.open("GET", "getdbrequest.php" + url_param + url_session, true);
	request.send(null);
} // END -showAll()

function showImagelist() {
	DrawLoadingBox();
	url_param = url_param + "&imagelist=true";
	request = createRequest();
	request.onreadystatechange = complete;
	request.open("GET", "getdbrequest.php" + url_param + url_session, true);
	request.send(null);
} // END -showImagelist()

function GoBtn1Click() {
	ResetTypeColor();
	var fNames = escape(document.getElementById("ISearchField").value);
	
	if (fNames.length >= 2) {
		DrawLoadingBox();
		url_param = "?name=" + fNames;
		request = createRequest();
		request.onreadystatechange = complete;
		request.open("GET", "getdbrequest.php" + url_param + url_session, true);
		request.send(null);
	} else {
		alert("A minimum of 2 capitals is required!");
	}
}

function PushOnWeblink(lnkToName) {

	DrawLoadingBox();
	request = createRequest();
	request.onreadystatechange = complete;
	request.open("GET", "getdbrequest.php?number=" + lnkToName + url_session+ "&hlink=", true);
	request.send(null);
} // END PushOnWebLink(lnkToName);

function GoBtn2Click() {
	ResetNameSearch();
	if (s_type.length == 0 && s_color.length == 0) {
		alert("You need to press a button for type and color each before starting search!");
	} else if (s_type.length == 0 && s_color.length != 0) {
		alert("You need to press a type button too before starting search!");
	} else if (s_type.length != 0 && s_color.length == 0) {
		alert("You need to press a color button too before starting search!");
	} else {
		DrawLoadingBox();  
		url_param = "?type=" + s_type + "&color=" + s_color; 
		request = createRequest();
		request.onreadystatechange = complete;
		request.open("GET", "getdbrequest.php" + url_param + url_session, true);
		request.send(null);
	}
}

function init_gobtn1() {

/* GO BUTTON SUCHFELDER  */
	// Feld "search for names"
	var gobutton_1 = document.getElementById("gobtn_1");
	// bei Klick
	gobutton_1.onclick = GoBtn1Click;
	// beim Ãœberfahren mit der Maus
	gobutton_1.onmouseover = function() {
		gobutton_1.style.cursor = "pointer";
		gobutton_1.src = "img/go_aktiv.png";
	}
	// beim Entfernen der Maus
	gobutton_1.onmouseout = function() {
		gobutton_1.style.cursor = "auto";
		gobutton_1.src = "img/go_inaktiv.png";
	}

}

function PressedReturn(hEvent) {

	if (navigator.appName == "Microsoft Internet Explorer")
	{
		if (!hEvent) {
			hEvent = window.event;
			prssdKey = hEvent.keyCode;
		}
	} else {
		prssdKey = hEvent.which;
	}
	
	tfValue = document.getElementById("ISearchField").value;
	if (prssdKey == 13 && tfValue.length > 0) {
		GoBtn1Click();
	} else if (prssdKey == 13 && tfValue.length == 0) {
		GoBtn2Click();
	}
}

function init_gobtn2() {

	// Feld "search for type & color
	var gobutton_2 = document.getElementById("gobtn_2");
	// bei Klick
	gobutton_2.onclick = GoBtn2Click;
	
	// beim Ãœberfahren mit der Maus
	gobutton_2.onmouseover = function() {
		gobutton_2.style.cursor = "pointer";
		gobutton_2.src = "img/go_aktiv.png";
	}
	// beim Entfernen der Maus
	gobutton_2.onmouseout = function() {
		gobutton_2.style.cursor = "auto";
		gobutton_2.src = "img/go_inaktiv.png";
	}

}

function init_typebtns() {

	document.getElementById("ibtn_type_1").onclick = function() {
		s_type = "g";
		document.getElementById("ibtn_type_1").src = "img/g_on.jpg";
		document.getElementById("ibtn_type_2").src = "img/m_off.jpg";
		document.getElementById("ibtn_type_3").src = "img/a_off.jpg";
		document.getElementById("ibtn_type_4").src = "img/s_off.jpg";
		document.getElementById("ibtn_type_5").src = "img/b_off.jpg";
	}
	
	document.getElementById("ibtn_type_1").onmouseover = function() {
		document.getElementById("ibtn_type_1").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_type_1").onmouseout = function() {
		document.getElementById("ibtn_type_1").style.cursor = "auto"; }
		
	document.getElementById("ibtn_type_2").onclick = function() {
		s_type = "m";
		document.getElementById("ibtn_type_1").src = "img/g_off.jpg";
		document.getElementById("ibtn_type_2").src = "img/m_on.jpg";
		document.getElementById("ibtn_type_3").src = "img/a_off.jpg";
		document.getElementById("ibtn_type_4").src = "img/s_off.jpg";
		document.getElementById("ibtn_type_5").src = "img/b_off.jpg";
	}

	document.getElementById("ibtn_type_2").onmouseover = function() {
		document.getElementById("ibtn_type_2").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_type_2").onmouseout = function() {
		document.getElementById("ibtn_type_2").style.cursor = "auto"; }

	document.getElementById("ibtn_type_3").onclick = function() {
		s_type = "a";
		document.getElementById("ibtn_type_1").src = "img/g_off.jpg";
		document.getElementById("ibtn_type_2").src = "img/m_off.jpg";
		document.getElementById("ibtn_type_3").src = "img/a_on.jpg";
		document.getElementById("ibtn_type_4").src = "img/s_off.jpg";
		document.getElementById("ibtn_type_5").src = "img/b_off.jpg";
	}
	
	document.getElementById("ibtn_type_3").onmouseover = function() {
		document.getElementById("ibtn_type_3").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_type_3").onmouseout = function() {
		document.getElementById("ibtn_type_3").style.cursor = "auto"; }
	
	document.getElementById("ibtn_type_4").onclick = function() {
		s_type = "s";
		document.getElementById("ibtn_type_1").src = "img/g_off.jpg";
		document.getElementById("ibtn_type_2").src = "img/m_off.jpg";
		document.getElementById("ibtn_type_3").src = "img/a_off.jpg";
		document.getElementById("ibtn_type_4").src = "img/s_on.jpg";
		document.getElementById("ibtn_type_5").src = "img/b_off.jpg";
	}
	
	document.getElementById("ibtn_type_4").onmouseover = function() {
		document.getElementById("ibtn_type_4").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_type_4").onmouseout = function() {
		document.getElementById("ibtn_type_4").style.cursor = "auto"; }
	
	document.getElementById("ibtn_type_5").onclick = function() {
		s_type = "b";
		document.getElementById("ibtn_type_1").src = "img/g_off.jpg";
		document.getElementById("ibtn_type_2").src = "img/m_off.jpg";
		document.getElementById("ibtn_type_3").src = "img/a_off.jpg";
		document.getElementById("ibtn_type_4").src = "img/s_off.jpg";
		document.getElementById("ibtn_type_5").src = "img/b_on.jpg";
	}
	
	document.getElementById("ibtn_type_5").onmouseover = function() {
		document.getElementById("ibtn_type_5").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_type_5").onmouseout = function() {
		document.getElementById("ibtn_type_5").style.cursor = "auto"; }

}

function init_colorbtns() {

	document.getElementById("ibtn_color_1").onclick = function() {
		s_color = "10_15";
		document.getElementById("ibtn_color_1").src = "img/white_on.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";	
	}
	
	document.getElementById("ibtn_color_1").onmouseover = function() {
		document.getElementById("ibtn_color_1").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_1").onmouseout = function() {
		document.getElementById("ibtn_color_1").style.cursor = "auto"; }
	
	document.getElementById("ibtn_color_2").onclick = function() {
		s_color = "20_25";
		document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_on.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";
	}
	
	document.getElementById("ibtn_color_2").onmouseover = function() {
		document.getElementById("ibtn_color_2").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_2").onmouseout = function() {
		document.getElementById("ibtn_color_2").style.cursor = "auto"; }
	
	document.getElementById("ibtn_color_3").onclick = function() {
		s_color = "30_35";
		document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_on.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";	
	}
	
	document.getElementById("ibtn_color_3").onmouseover = function() {
		document.getElementById("ibtn_color_3").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_3").onmouseout = function() {
		document.getElementById("ibtn_color_3").style.cursor = "auto"; }
	
	document.getElementById("ibtn_color_4").onclick = function() {
		s_color = "40_45";
		document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_on.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";	
	}
	
	document.getElementById("ibtn_color_4").onmouseover = function() {
		document.getElementById("ibtn_color_4").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_4").onmouseout = function() {
		document.getElementById("ibtn_color_4").style.cursor = "auto"; }
	
	document.getElementById("ibtn_color_5").onclick = function() {
		s_color = "60_65";
		document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_on.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";	
	}
	
	document.getElementById("ibtn_color_5").onmouseover = function() {
		document.getElementById("ibtn_color_5").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_5").onmouseout = function() {
		document.getElementById("ibtn_color_5").style.cursor = "auto"; }
	
	document.getElementById("ibtn_color_6").onclick = function() {
		s_color = "50_55";
		document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_on.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";	
	}
	
	document.getElementById("ibtn_color_6").onmouseover = function() {
		document.getElementById("ibtn_color_6").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_6").onmouseout = function() {
		document.getElementById("ibtn_color_6").style.cursor = "auto"; }
	
	document.getElementById("ibtn_color_7").onclick = function() {
		s_color = "70_75";
		document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_on.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";
	}
	
	document.getElementById("ibtn_color_7").onmouseover = function() {
		document.getElementById("ibtn_color_7").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_7").onmouseout = function() {
		document.getElementById("ibtn_color_7").style.cursor = "auto"; }
	
	document.getElementById("ibtn_color_8").onclick = function() {
		s_color = "80_85";
		document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
		document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
		document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
		document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
		document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
		document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
		document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
		document.getElementById("ibtn_color_8").src = "img/blue_on.jpg";
	}
	
	document.getElementById("ibtn_color_8").onmouseover = function() {
		document.getElementById("ibtn_color_8").style.cursor = "pointer"; }
		
	document.getElementById("ibtn_color_8").onmouseout = function() {
		document.getElementById("ibtn_color_8").style.cursor = "auto"; }
	

}

function ResetTypeColor() {
	document.getElementById("ibtn_type_1").src = "img/g_off.jpg";
	document.getElementById("ibtn_type_2").src = "img/m_off.jpg";
	document.getElementById("ibtn_type_3").src = "img/a_off.jpg";
	document.getElementById("ibtn_type_4").src = "img/s_off.jpg";
	document.getElementById("ibtn_type_5").src = "img/b_off.jpg";
	document.getElementById("ibtn_color_1").src = "img/white_off.jpg";
	document.getElementById("ibtn_color_2").src = "img/grey_off.jpg";
	document.getElementById("ibtn_color_3").src = "img/black_off.jpg";
	document.getElementById("ibtn_color_4").src = "img/yellbei_off.jpg";
	document.getElementById("ibtn_color_5").src = "img/redbr_off.jpg";
	document.getElementById("ibtn_color_6").src = "img/pink_off.jpg";
	document.getElementById("ibtn_color_7").src = "img/green_off.jpg";
	document.getElementById("ibtn_color_8").src = "img/blue_off.jpg";
}

function ResetNameSearch() {
	document.getElementById("ISearchField").value = "";
}

// zeigt ein DIV mit der Meldung "bearbeitete und neue Datensätze seit Jahresbeginn"
function DrawUpdateMessageBox(UpdRecs, InsRecs) {
	// alle Kind-Knoten aus dem Hauptinhaltscontainer löschen
	var mainCont = document.getElementById("DisplayHTTPXMLContent");
	for (var i = 0; i = mainCont.childNodes.length; i++) {
		var mainChild = mainCont.firstChild;
		mainCont.removeChild(mainChild);
	}
	
	// aktuelle Jahreszahl ermitteln
	var jetzt = new Date();
	var Jahr = jetzt.getFullYear();
	
	// DIV mit Meldungsbox erzeugen
	var emptybox = document.createElement("div");
	var bold1    = document.createElement("b");
	var break1   = document.createElement("br");
	var text1 	 = document.createElement("span");
	text1.innerHTML = "Since " + Jahr + ", January 1st";
	var bold1a   = document.createElement("b");
	var break2   = document.createElement("br");
	var text2    = document.createTextNode("in this database");
	var break2a  = document.createElement("br");
	var text3    = document.createElement("span");
	text3.innerHTML = number_format(UpdRecs, 0, null, ".") + " files were revised";
	var break3   = document.createElement("br");
	var text4    = document.createElement("span");
	text4.innerHTML = number_format(InsRecs, 0, null, ".") + " files were added";
	var para1   = document.createElement("p");
	var showlnk  = document.createElement("a");	
	var lnktext  = document.createElement("span");
	lnktext.innerHTML = "continue ...";

	showlnk.appendChild(lnktext);
	showlnk.href = "javascript:init_firststart()";
	
	
	emptybox.className = "OverflowDataSet";
	bold1.appendChild(text1);
	emptybox.appendChild(bold1);
	emptybox.appendChild(break1);
	bold1a.appendChild(text2)
	emptybox.appendChild(bold1a);
	emptybox.appendChild(break2);
	emptybox.appendChild(break2a);
	emptybox.appendChild(text3);
	emptybox.appendChild(break3);
	emptybox.appendChild(text4);
	para1.appendChild(showlnk);
	emptybox.appendChild(para1)

    // komplette Box hinzufügen
	mainCont.appendChild(emptybox);

	// Variablen wieder freigeben
	delete(emptybox);
	delete(bold1);
	delete(break1);
	delete(text1);
	delete(bold1a);
	delete(break2);
	delete(text2);
	delete(break2a);
	delete(text3);
	delete(break3);
	delete(text4);
	delete(para1);
	delete(showlnk);
	delete(lnktext);

}  // END -DrawUpdateMessageBox(UpdRecs, InsRecs)

function init_updmessage() {

	url_param = "?name=ShowUpdMsg";
	request = createRequest();
	request.onreadystatechange = complete;
	request.open("GET", "getdbrequest.php" + url_param + url_session, true);
	request.send(null);
} // END -init_updmessage()

// initialisiert die Ereignisse für die Suchfelder und Suchbuttons
function init() {

	init_gobtn1();
	init_gobtn2();
	init_typebtns();
	init_colorbtns();
	
	/* globale Variable auswerten, ob die Meldung "xxx Datensätze
	   neu bzw. überarbeitet" beim Start angezeigt werden soll (CD-ROM = nein) */
	if (!show_updatemsg) {
		init_updmessage();
	} else {
		init_firststart();
	}
	
	document.onkeypress = PressedReturn;
	
	MM_preloadImages('img/JPG_Button_Abraxas_ein.jpg','img/JPG_Button_IN_ein.jpg');

} // END -init()

function SetPromoImageVisibState()
{
	var srcurl = document.URL + "promotion_images/";
	var pil    = document.getElementById("PromoImageLeft");
	var pir    = document.getElementById("PromoImageRight");

	if (pil.src == srcurl + "left.jpg") {
		document.getElementById("PromoImageLeft").style.display = "block";	}
	
	if (pir.src == srcurl + "right.jpg") {
		document.getElementById("PromoImageRight").style.display = "block";	}
}

// Formatiert die Ausgabe des Zählers mit tausender-Trennzeichen
function number_format (number, decimals, dec_point, thousands_sep)
{
  var exponent = "";
  var numberstr = number.toString ();
  var eindex = numberstr.indexOf ("e");
  if (eindex > -1)
  {
    exponent = numberstr.substring (eindex);
    number = parseFloat (numberstr.substring (0, eindex));
  }
  
  if (decimals != null)
  {
    var temp = Math.pow (10, decimals);
    number = Math.round (number * temp) / temp;
  }
  var sign = number < 0 ? "-" : "";
  var integer = (number > 0 ? 
      Math.floor (number) : Math.abs (Math.ceil (number))).toString ();
  
  var fractional = number.toString ().substring (integer.length + sign.length);
  dec_point = dec_point != null ? dec_point : ".";
  fractional = decimals != null && decimals > 0 || fractional.length > 1 ? 
               (dec_point + fractional.substring (1)) : "";
  if (decimals != null && decimals > 0)
  {
    for (i = fractional.length - 1, z = decimals; i < z; ++i)
      fractional += "0";
  }
  
  thousands_sep = (thousands_sep != dec_point || fractional.length == 0) ? 
                  thousands_sep : null;
  if (thousands_sep != null && thousands_sep != "")
  {
	for (i = integer.length - 3; i > 0; i -= 3)
      integer = integer.substring (0 , i) + thousands_sep + integer.substring (i);
  }
  
  return sign + integer + fractional + exponent;
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}