// algemeen
function qsClearOptions(forSelect)
{
	while (forSelect.options.length >0) {
		forSelect.remove(0);
	}
}

function qsAddOption(forSelect,tekst,val) 
{
	var oOption = document.createElement("OPTION");
	oOption.text = tekst;
	oOption.value = val;
	forSelect.options.add(oOption);
	return forSelect.options.length - 1;
}		

function qsArtZoeken()
{
	window.location.href = 		'/content/html/zoeken.php?template_demo=zoekres.php&site=1&path=&result_page=/content/html/zoeken.php&query_string=' +
		qsGetDocElem('zoek').value +		
	'&search=Zoek...&limite=10&option=start&kind4=4&kind1=1';
}

function qsArtcodeZoeken()
{
	window.location.href = '/content/html/gen/catalogus/gotoart.php?art=' +	qsGetDocElem('zoekArtcode').value +'&find=1';
}

function qsCheckKeyZoek(e)
{
	var ev;
	if (e) {
		ev = e;
	} else {
		ev = window.event;
	}
	if (ev && (ev.keyCode == 13)) {
		qsArtZoeken();
		return false;
	}
	return true;
}

function qsCheckKeyZoekArtcode(e)
{
	var ev;
	if (e) {
		ev = e;
	} else {
		ev = window.event;
	}
	if (ev && (ev.keyCode == 13)) {
		qsArtcodeZoeken();
		return false;
	}
	return true;
}

function qsMakeArtNav(prevLink,nextLink,grpLink,grpDescr)
{
	if (grpLink == '') {
		return;
	}
	var s = 
		"\n<!-- phpdigExclude -->\n" +
		'<div id="navigatie_bar" class="navigatie2">' +
		'<table border="0" cellspacing="4" cellpadding="0" class="navigatie3"><tr><td>&nbsp;</td><td>';
	if (prevLink == '') {
		s +=
		'<img src="/content/images/buttons/left_disabled_14.gif" title="Er is geen vorige artikel in dezelfde groep" alt="Er is geen vorige artikel in dezelfde groep" class="imageBorderInAct" width="14" height="14" align="texttop">&nbsp;';
	} else {
		s +=
		'<img src="/content/images/buttons/left_14.gif" title="Vorige artikel in dezelfde groep" alt="Vorige artikel in dezelfde groep" class="imageBorderInAct" width="14" height="14" align="texttop" ' +
		'onMouseOver="qsMouseOverImg(this);" onMouseOut="qsMouseNotOverImg(this);" ' +
		'onClick="window.location.href = \'' + prevLink + '\'">&nbsp;';
	}
	s += '&nbsp;<img src="/content/images/buttons/up_14.gif" title="Ga naar de groeps catalogus pagina" alt="Ga naar de groeps catalogus pagina" class="imageBorderInAct" width="14" height="14" align="texttop" ' +
		'onMouseOver="qsMouseOverImg(this);" onMouseOut="qsMouseNotOverImg(this);" ' +
		'onClick="window.location.href = \'' + grpLink + '\'">&nbsp;';
	if (nextLink == '') {
		s += 
		'&nbsp;<img src="/content/images/buttons/right_disabled_14.gif" title="Er is geen volgend artikel in dezelfde groep" alt="Er is geen volgend artikel in dezelfde groep" class="imageBorderInAct" width="14" height="14" align="texttop">';
	} else {
		s += 
		'&nbsp;<img src="/content/images/buttons/right_14.gif" title="Volgende artikel in dezelfde groep" class="imageBorderInAct" alt="Volgende artikel in dezelfde groep" class="imageBorderInAct" width="14" height="14" align="texttop" ' +
		'onMouseOver="qsMouseOverImg(this);" onMouseOut="qsMouseNotOverImg(this);" ' +
		'onClick="window.location.href = \'' + nextLink + '\'">';
	} 
	s +=
		'&nbsp;&nbsp;Zoek:&nbsp;' +
		'<input style="width:80; height:16; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px;" onKeyPress="return qsCheckKeyZoek(event);" type="text" id="zoek" name="zoek">' +
		'<img src="/content/images/buttons/go_14.gif" name="zoekButton" width="14" height="14" border="0" align="texttop" ' +
		'class="imageBorderInAct" id="zoekButton" title="Zoek naar dit artikel (of tik iets in en druk op enter)" alt="Zoek naar dit artikel (of tik iets in en druk op enter)" ' +
		'onClick="qsArtZoeken();" onMouseOver="qsMouseOverImg(this);" ' +
		'onMouseOut="qsMouseNotOverImg(this);"></td><td>&nbsp;</td></tr></table>' + 
		'</div>' +
		"\n<!-- phpdigInclude -->\n";
	document.write(s);
}

function qsGotoPage(page)
{
	window.location.href = 'artgrp_' + page +'.php'; 
}

function qsLoadOptionsNew(forSelect,useArray,selected,doAll,doMEK,clear)
{
	var i, idx, selidx = -1, txt;
	qsClearOptions(forSelect);
	if (doMEK) {
		qsAddOption(forSelect,'<Maak een keuze>',-2);
	}
	if (doAll) {
		qsAddOption(forSelect,'Allemaal ->',-1);
		if (selected == '') {
			selidx = 0;
		}
	}
	for (i = 0; i < useArray.length; i++) {
		txt = useArray[i][1];
		if (useArray[i][0] == 0) {
			txt += ' ->';
		}
		idx = qsAddOption(forSelect,txt,i);
		if (selected == useArray[i][2]) {
			selidx = idx;
		}
	}
	if (doMEK) {
		selidx = 0;
	}
	forSelect.selectedIndex = selidx;
}

var qsSelGrpL1,qsSelGrpL2,qsSelGrpL3, qsIdxGrpL1, qsIdxGrpL2, qsIdxGrpL3;

function qsFindGrpNew(toSearch,withname)
{
	for (var i = 0; i < toSearch.length; i++) {
		if (toSearch[i][2] == withname) {
			return i;
		}
	}
	return -1;
}

function qsInitCatSel(pqsSelGrpL1,pqsSelGrpL2,pqsSelGrpL3)
{
	qsSelGrpL1 = pqsSelGrpL1;
	qsSelGrpL2 = pqsSelGrpL2;
	qsSelGrpL3 = pqsSelGrpL3;
	qsLoadOptionsNew(
		qsGetDocElem("selGroep"),
		qsArtGroepenNew,
		qsSelGrpL1,
		'',
		pqsSelGrpL1 == '',
		true);
	qsIdxGrpL1 = qsFindGrpNew(qsArtGroepenNew,qsSelGrpL1);
	if ( (qsIdxGrpL1 != -1) && (qsArtGroepenNew[qsIdxGrpL1][0] == 1) ) {
		var grpL = qsArtGroepenNew[qsIdxGrpL1];
		qsLoadOptionsNew(
			qsGetDocElem("selSubGroep"),
			grpL[3],
			qsSelGrpL2,
			grpL[2],
			false,
			true);
		qsIdxGrpL2 = qsFindGrpNew(grpL[3],qsSelGrpL2);
		if ( (qsIdxGrpL2 != -1) && (grpL[3][qsIdxGrpL2][0] == 1) ) {
			grpL = grpL[3][qsIdxGrpL2];
			qsIdxGrpL3 = qsFindGrpNew(grpL[3],qsSelGrpL3);
			qsLoadOptionsNew(
				qsGetDocElem("selSubGroep2"),
				grpL[3],
				qsSelGrpL3,
				grpL[2],
				false,
				true);
		} else {
			qsGetDocElem("selSubGroep2").disabled = true;
		}
	} else {
		qsGetDocElem("selSubGroep2").disabled = true;
		qsGetDocElem("selSubGroep").disabled = true;
	}
	qsGetDocElem("zoek").focus();
}

function qsGroepSelNew(selGroep)
{ 
	qsIdxGrpL1 = selGroep.options[selGroep.selectedIndex].value;
	if (qsArtGroepenNew[qsIdxGrpL1][0] == 0) {
		// geen groepen op level 2 -> ga naar pagina
		qsGetDocElem("goL2").className = "imageBorderInAct";
		qsGetDocElem("goL3").className = "hidden";
	} else{ 
		qsIdxGrpL2 = -1;
		qsIdxGrpL3 = -1;
		qsGetDocElem("goL3").className = "hidden";
		if (qsIdxGrpL1 == -1) {
			qsGetDocElem("goL2").className = "imageBorderInAct";
		} else {
			qsGetDocElem("goL2").className = "hidden";
			qsGetDocElem("selSubGroep").disabled = false;
			qsLoadOptionsNew(
				qsGetDocElem("selSubGroep"),
				qsArtGroepenNew[qsIdxGrpL1][3],
				true,
				true,
				true);
			var cl3 = qsGetDocElem("selSubGroep2");
			qsClearOptions(cl3);
			cl3.disabled = true;
		}
	}
}

function qsSubGroepSelNew(selSubGroep)
{ 
	var grpL1 = qsArtGroepenNew[qsIdxGrpL1];
	qsIdxGrpL2 = selSubGroep.options[selSubGroep.selectedIndex].value;
	if (qsIdxGrpL2 == -1) {
		// allemaal
		qsGetDocElem("goL2").className = "imageBorderInAct";
		qsGetDocElem("goL3").className = "hidden";
		qsGetDocElem("selSubGroep2").disabled = true;
		qsClearOptions(qsGetDocElem("selSubGroep2"));
	} else {
		var grpL2 = grpL1[3][qsIdxGrpL2];
  	qsGetDocElem("goL3").className = "hidden";
		if (grpL2[0] == 0) {
			// geen groepen op level 3 -> ga naar pagina
			qsGetDocElem("goL2").className = "imageBorderInAct";
			qsGetDocElem("selSubGroep2").disabled = true;
			qsClearOptions(qsGetDocElem("selSubGroep2"));
		} else{ 
			// combo opnieuw laden maar dan zonder 'maak een keuze'
			qsGetDocElem("goL2").className = "hidden";
			qsLoadOptionsNew(
				qsGetDocElem("selSubGroep"),
				grpL1[3],
				grpL2[2],
				true,
				false,
				true);
			// enable groep op nivo 3
			qsGetDocElem("selSubGroep2").disabled = false;
			// laad groep 3 combo
			qsLoadOptionsNew(
				qsGetDocElem("selSubGroep2"),
				grpL2[3],
				-1,
				true,
				true);
		}
	}
}

function qsSubGroep2Sel(selSubGroepL2)
{ 
	var grpL1 = qsArtGroepenNew[qsIdxGrpL1];
	var grpL2 = grpL1[3][qsIdxGrpL2];
	qsIdxGrpL3 = selSubGroepL2.options[selSubGroepL2.selectedIndex].value;
	qsGetDocElem("goL3").className = "imageBorderInAct";
}

function qsGotoL2()
{
	var grpL1 = qsArtGroepenNew[qsIdxGrpL1];
	var selSubGroep = qsGetDocElem("selSubGroep");
	qsIdxGrpL2 = selSubGroep.options[selSubGroep.selectedIndex].value;
	if (qsIdxGrpL2 == -1) {
		// allemaal
		qsGotoPage(grpL1[2]); 
	} else {
		var grpL2 = grpL1[3][qsIdxGrpL2];
		if (grpL2[0] == 0) {
			// geen groepen op level 3 -> ga naar pagina
			qsGotoPage(grpL2[2]); 
		}
	}
}

function qsGotoL3()
{ 
	var grpL1 = qsArtGroepenNew[qsIdxGrpL1];
	var grpL2 = grpL1[3][qsIdxGrpL2];
	var selSubGroepL2 = qsGetDocElem("selSubGroep2");
	qsIdxGrpL3 = selSubGroepL2.options[selSubGroepL2.selectedIndex].value;
	if (qsIdxGrpL3 == -1) {
		qsGotoPage(grpL2[2]); 
	} else {
		qsGotoPage(grpL2[3][qsIdxGrpL3][2]); 
	}
}

function qsGotoArticleDetails( pArtToFind, pDoFind )
{
	// beste match zoeken voor opgegeven artikel
	var i, j, k;
	var path = '/content/html/gen/componenten';
	var foundArt = false;
	for (i = 0; i < qsArtGroepenNew.length; i++) {
		// groepen op hoogste nivo zoeken
		if (qsArtGroepenNew[i][2].toLowerCase() == pArtToFind.substr(0,qsArtGroepenNew[i][2].length).toLowerCase()) {
			path += '/' + qsArtGroepenNew[i][2];
			if (qsArtGroepenNew[i][0] == 0) {
				// geen subgroepen meer
				foundArt = true;
			} else {
				// sub-groepen doorzoeken
				for (j = 0; j < qsArtGroepenNew[i][3].length; j++) {
					if (qsArtGroepenNew[i][3][j][2].toLowerCase() == pArtToFind.substr(0,qsArtGroepenNew[i][3][j][2].length).toLowerCase()) {
						path += '/' + qsArtGroepenNew[i][3][j][2];
						if (qsArtGroepenNew[i][3][j][0] == 0) {
							// geen sub-groepen meer
							foundArt = true;
						} else {
							for (k = 0; k < qsArtGroepenNew[i][3][j][3].length; k++) {
								if (qsArtGroepenNew[i][3][j][3][k][2].toLowerCase() == pArtToFind.substr(0,qsArtGroepenNew[i][3][j][3][k][2].length).toLowerCase()) {
									path += '/' + qsArtGroepenNew[i][3][j][3][k][2];
									foundArt = true;
									// stoppen, want dieper gaat het niet
									break;
								}
							}
						}
						// we hebben een volledige match, dus stoppen
						break;						
					}
				}
			}	
			// we hebben een volledige match, dus stoppen
			break;
		}
	}
	if (foundArt) {
		// artikel gevonden -> naar details pagina
		window.location.replace( path + '/' + pArtToFind.toLowerCase() + '/index.php' );
	} else if (pDoFind == 1) {
		// artikel niet gevonden, maar zoeken mag -> naar zoek pagina
		window.location.replace( '/content/html/zoeken.php?template_demo=zoekres.php&site=1&path=&result_page=/content/html/zoeken.php&query_string=' + pArtToFind +	'&search=Zoek...&limite=10&option=start&kind4=4&kind1=1&kind2=2' );		
	} else {
		// naar de catalogus
		window.location.replace( '/content/html/gen/catalogus/index.php' );
	}
}