window.onload = function() {
	if(document.search_manufacturers) { /* Suche: Herstellersuche */
		herstellersuche_getHersteller('hersteller[0]');
	}
	
	if(document.search_productgroups) { /* Suche: Produktsuche */
		artikelsuche_getArtikelgruppe('artikelgruppe[0]');
	}
}



/*------------------------------ Start: Produkteauswahl ------------------------------*/
function resizeBox(obj, lang) { // ausklappen
	
	var k=0; // zählt die LIs
	
	for(var i=0; i<obj.parentNode.childNodes.length; i++) {
		//alert(i + "\n" + obj.parentNode.childNodes[i].nodeName);
		if(obj.parentNode.childNodes[i].nodeName == 'LI') { // nur auf LIs filtern
			k++;
			//alert(obj.parentNode.childNodes[i].nodeName);
			//alert(obj.parentNode.childNodes[i].getAttributeNode('style'));
			//alert(obj.parentNode.childNodes[i].className);
			
			if(obj.parentNode.childNodes[i].className == 'hidden') {
				obj.parentNode.childNodes[i].className = '';
			}
			
			if(k == 4) {
				obj.parentNode.childNodes[i].className = 'hidden'; // [+] ausblenden
			}
		}
	}
	
	
	switch(lang) {
		case 'en':
			var less = ' less';
		default:
			var less = ' weniger';
	}
	var less_symbol = '[-]';
	
	// [-] am Ende der Liste einblenden
	var newLI = document.createElement("li");
	var newSTRONG = document.createElement("strong");
	var newSymbol = document.createTextNode(less_symbol);
	var newText = document.createTextNode(less);
	
	newSTRONG.appendChild(newSymbol);
	newLI.appendChild(newSTRONG);
	newLI.appendChild(newText);
	
	newLI.onclick = function() { resetBox(obj, lang); };
	newLI.style.cursor = "pointer";
	
	obj.parentNode.appendChild(newLI);
	
	
	//var docHeight = obj.parentNode.parentNode.scrollHeight;
	//alert(docHeight);
	//obj.parentNode.parentNode.style.height = docHeight + 'px';
}

function resetBox(obj, lang) { // einklappen
	
	var k=0; // zählt die LIs
	
	for(var i=0; i<obj.parentNode.childNodes.length; i++) {
		if(obj.parentNode.childNodes[i].nodeName == 'LI') { // nur auf LIs filtern
			k++;
			//alert(obj.parentNode.childNodes[i].nodeName);
			//alert(obj.parentNode.childNodes[i].getAttributeNode('style'));
			//alert(obj.parentNode.childNodes[i].className);
			
			if(k < 5) {
				obj.parentNode.childNodes[i].className = '';
			}
			else {
				obj.parentNode.childNodes[i].className = 'hidden';
			}
		}
	}
	
	obj.parentNode.removeChild(obj.parentNode.childNodes[obj.parentNode.childNodes.length-1]); // [-] ausblenden
	
	
	//var docHeight = obj.parentNode.parentNode.scrollHeight;
	//alert(docHeight);
	//obj.parentNode.parentNode.style.height = docHeight + 'px';
}
/*------------------------------ Ende: Produkteauswahl -------------------------------*/



/*------------------------------ Start: Herstellersuche ------------------------------*/
function herstellersuche_getHersteller(hersteller) {
	var myAjax = new MyAjax();
	myAjax.url = "cms_ajax_suche/AjaxHersteller.php";
	myAjax.method = "POST";
	myAjax.params = "lang=" + encodeURIComponent(document.search_manufacturers.language.value);
	
	//Response war erfolgreich
	myAjax.onSuccess = function(txt, xml) {	
		var ajaxvaluearray = txt.split('|@|');
		
		for(var i=0; i<ajaxvaluearray.length-1; i++) {
			var innerajaxvaluearray = ajaxvaluearray[i].split('=@');
			var obj = new Option(innerajaxvaluearray[1], innerajaxvaluearray[0]);
			document.search_manufacturers.elements[hersteller].options[i+1] = obj;
		}
	}
	
	//Fehler bei Kommunikation zwischen Client und Server
	myAjax.onError = function(msg) {
		alert("Fehler bei Kommunikation zwischen Client und Server: " + msg);
	}
	
	//ausführen
	myAjax.doRequest();
	
	// Menüpunkt vorauswählen
	document.search_manufacturers.elements[hersteller].selectedIndex = 0;
}

function herstellersuche_addRow(tr, hersteller, artikelbezeichner, artikelgruppe) {
	if(document.all) { // IE
		document.getElementById(tr).style.display = 'block';
	}
	else {
		document.getElementById(tr).style.display = 'table-row';
	}
	
	document.search_manufacturers.elements[hersteller].style.display = 'inline';
	
	herstellersuche_getHersteller(hersteller);
	
	document.search_manufacturers.elements[artikelgruppe].style.display = 'none';
	document.getElementById(artikelbezeichner).innerHTML = '&nbsp;';
}

function herstellersuche_remRow(tr, hersteller, artikelbezeichner, artikelgruppe) {
	document.search_manufacturers.elements[hersteller].options.length = 1;
	document.search_manufacturers.elements[artikelgruppe].options.length = 1;
	
	document.search_manufacturers.elements[hersteller].style.display = 'none';
	document.search_manufacturers.elements[artikelgruppe].style.display = 'none';
	document.getElementById(artikelbezeichner).innerHTML = '&nbsp;';
	document.getElementById(tr).style.display = 'none';
}

function herstellersuche_selectHersteller(hersteller, artikelbezeichner, artikelgruppe, uebersetzung) {	
	document.getElementById(artikelbezeichner).innerHTML = uebersetzung + '&nbsp;&nbsp;';
	document.search_manufacturers.elements[artikelgruppe].style.display = 'inline';
	
	var hnr = 0;
	var myIndex = document.search_manufacturers.elements[hersteller].selectedIndex;
	if(myIndex > -1) {
		hnr = document.search_manufacturers.elements[hersteller].options[myIndex].value;
	}
	
	document.search_manufacturers.elements[artikelgruppe].options.length = 1;
	
	if(hnr > 0) {
		var myAjax = new MyAjax();
		myAjax.url = "cms_ajax_suche/AjaxArtikelgruppen.php";
		myAjax.method = "POST";
		myAjax.params = "hnr=" + hnr;
		
		//Response war erfolgreich
		myAjax.onSuccess = function(txt, xml) {
			var ajaxvaluearray = txt.split('|@|');
			
			for(var i=0; i<ajaxvaluearray.length-1; i++) {
				var innerajaxvaluearray = ajaxvaluearray[i].split('=@');
				var obj = new Option(innerajaxvaluearray[1], innerajaxvaluearray[0]);
				document.search_manufacturers.elements[artikelgruppe].options[i+1] = obj;
			}
		}
		
		//Fehler bei Kommunikation zwischen Client und Server
		myAjax.onError = function(msg) {
			alert("Fehler bei Kommunikation zwischen Client und Server: " + msg);
		}
		
		//ausführen
		myAjax.doRequest();
		
		// Menüpunkt vorauswählen
		document.search_manufacturers.elements[artikelgruppe].selectedIndex = 0;
	}
}
/*------------------------------ Ende: Herstellersuche ------------------------------*/



/*------------------------------ Start: Produktgruppensuche ------------------------------*/
function artikelsuche_getArtikelgruppe(artikelgruppe) {
	var myAjax = new MyAjax();
	myAjax.url = "cms_ajax_suche/AjaxArtikelgruppen2.php";
	myAjax.method = "POST";
	myAjax.params = "lang=" + encodeURIComponent(document.search_productgroups.language.value);
	
	//Response war erfolgreich
	myAjax.onSuccess = function(txt, xml) {	
		var ajaxvaluearray = txt.split('|@|');
		
		for(var i=0; i<ajaxvaluearray.length-1; i++) {
			var innerajaxvaluearray = ajaxvaluearray[i].split('=@');
			var obj = new Option(innerajaxvaluearray[1], innerajaxvaluearray[0]);
			document.search_productgroups.elements[artikelgruppe].options[i+1] = obj;
		}
	}
	
	//Fehler bei Kommunikation zwischen Client und Server
	myAjax.onError = function(msg) {
		alert("Fehler bei Kommunikation zwischen Client und Server: " + msg);
	}
	
	//ausführen
	myAjax.doRequest();
	
	// Menüpunkt vorauswählen
	document.search_productgroups.elements[artikelgruppe].selectedIndex = 0;
}

function artikelsuche_addRow(tr, artikelgruppe, herstellerbezeichner, hersteller) {
	if(document.all) { // IE
		document.getElementById(tr).style.display = 'block';
	}
	else {
		document.getElementById(tr).style.display = 'table-row';
	}
	
	document.search_productgroups.elements[artikelgruppe].style.display = 'inline';
	
	artikelsuche_getArtikelgruppe(artikelgruppe);
	
	document.search_productgroups.elements[hersteller].style.display = 'none';
	document.getElementById(herstellerbezeichner).innerHTML = '&nbsp;';
}

function artikelsuche_remRow(tr, artikelgruppe, herstellerbezeichner, hersteller) {
	document.search_productgroups.elements[artikelgruppe].options.length = 1;
	document.search_productgroups.elements[hersteller].options.length = 1;
	
	document.search_productgroups.elements[artikelgruppe].style.display = 'none';
	document.search_productgroups.elements[hersteller].style.display = 'none';
	document.getElementById(herstellerbezeichner).innerHTML = '&nbsp;';
	document.getElementById(tr).style.display = 'none';
}

function artikelsuche_selectArtikelgruppe(artikelgruppe, herstellerbezeichner, hersteller, uebersetzung) {	
	document.getElementById(herstellerbezeichner).innerHTML = uebersetzung + '&nbsp;&nbsp;';
	document.search_productgroups.elements[hersteller].style.display = 'inline';
	
	var artikelgruppe_nr = 0;
	var myIndex = document.search_productgroups.elements[artikelgruppe].selectedIndex;
	if(myIndex > -1) {
		artikelgruppe_nr = document.search_productgroups.elements[artikelgruppe].options[myIndex].value;
	}
	
	document.search_productgroups.elements[hersteller].options.length = 1;
	
	if(artikelgruppe_nr > 0) {
		var myAjax = new MyAjax();
		myAjax.url = "cms_ajax_suche/AjaxHersteller2.php";
		myAjax.method = "POST";
		myAjax.params = "artikelgruppe_nr=" + artikelgruppe_nr + "lang=" + encodeURIComponent(document.search_productgroups.language.value);
		
		//Response war erfolgreich
		myAjax.onSuccess = function(txt, xml) {
			var ajaxvaluearray = txt.split('|@|');
			
			for(var i=0; i<ajaxvaluearray.length-1; i++) {
				var innerajaxvaluearray = ajaxvaluearray[i].split('=@');
				var obj = new Option(innerajaxvaluearray[1], innerajaxvaluearray[0]);
				document.search_productgroups.elements[hersteller].options[i+1] = obj;
			}
		}
		
		//Fehler bei Kommunikation zwischen Client und Server
		myAjax.onError = function(msg) {
			alert("Fehler bei Kommunikation zwischen Client und Server: " + msg);
		}
		
		//ausführen
		myAjax.doRequest();
		
		// Menüpunkt vorauswählen
		document.search_productgroups.elements[hersteller].selectedIndex = 0;
	}
}
/*------------------------------ Ende: Produktgruppensuche ------------------------------*/
