<!--
var provinciegekliktviaflash = false;

function strltrim() {
	return this.replace(/^\s+/,'');
}

function strrtrim() {
	return this.replace(/\s+$/,'');
}
function strtrim() {
	return this.replace(/^\s+/,'').replace(/\s+$/,'');
}

function changeProvincie(provcode)
{
	provinciegekliktviaflash = true;
	var cntarr = 0;
	for (cntarr=0;cntarr<pc.length;cntarr++)
	{
		if (pc[cntarr] == provcode)
		{
			// provincie-code gevonden
			var tmpid = pi[cntarr];
			
			// herlaad dropdowns
			var qryStr = '';
			qryStr = appendQryString(qryStr, 'v1', tmpid);

  			// clear Hash index
			disabledHash = {};

			loadXML('xml/powersearch.aspx'+qryStr);
		}
	}
}

String.prototype.ltrim = strltrim;
String.prototype.rtrim = strrtrim;
String.prototype.trim = strtrim;

var agt=navigator.userAgent.toLowerCase();
var is_ie     = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
var is_mac    = (agt.indexOf("mac")!=-1);
var geenvoorkeur = true;

var xmlDoc;
var isLoadingXML = false;
var disabledHash = {}; 

	function loadXML(xmlFile) {
		geenvoorkeur = true;
		if (document.implementation && document.implementation.createDocument) {
			xmlDoc = document.implementation.createDocument("","", null);
			isLoadingXML = true;
			xmlDoc.onload = parseAll;
		}
		else if (window.ActiveXObject) {
			xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
			isLoadingXML = true;
			xmlDoc.onreadystatechange = function () { if (xmlDoc.readyState == 4) parseAll(); }
		}
		else {
			alert('Your browser does not support XML');
			return;
		}

		// disable all options to prevent changes while xml is loading
	    var nico;
	    var tmpt = 0;
	    for (tmpt = 1 ; tmpt < 8; tmpt++)
	    {
			nico = document.getElementById('v'+tmpt);
			if (nico!=null)
				nico.disabled = true;
	    }
    
		xmlDoc.load(xmlFile);
	}

	function populateXMLCheckbox(fieldptr,tagname,inputname) {
		var urlString = location.href;
		if (urlString.indexOf(tagname) != -1) {	
			fieldptr.checked = true;
		}
	}

	function populateXMLSelect(fieldptr,tagname,inputname) {
		var urlString = location.href;
		var selectedID='', disableOption = false;
			
		// check if <select> object exists. 
		// delete values in it to repopulate again
		if (fieldptr != null) {
			if (fieldptr.selectedIndex != null) {
				if (fieldptr.selectedIndex != -1) {
					if (fieldptr.options.length >= 0) {
			 			// delete all options
						fieldptr.options.length = 0;
			 		}
		 		}
		 	}
		}

		// populate option-list with the XML-tag values
		var collection = xmlDoc.getElementsByTagName(tagname);
		dropdowncnt = 0;

		// checks if collection contains NO items
		if (collection.length == 0)	{
			//  display message and disable option-box
			fieldptr.options[dropdowncnt++] = new Option( "  ","");
			disableOption = true;
		}
		// checks if collection contains only one item 
		else if (collection.length == 1) {
			// check if this TAG was selected by user
			if (collection[0].getAttribute('selected') == null)
			  selectedID = ''
			else
			{
			  geenvoorkeur = false;
			  selectedID = collection[0].getAttribute('id');
			}

			// then display only THE ONE item   (but not for tag <kind>)
			fieldptr.options[dropdowncnt++] = new Option( " geen voorkeur ","");
			if (selectedID == collection[0].getAttribute('id')) { // this option was selected by User (so user may change it again)
				if (collection[0].getAttribute('val') == null) // use id if val is not supplied
					fieldptr.options[dropdowncnt] = new Option( collection[0].getAttribute('id'),collection[0].getAttribute('id'));
				else
					fieldptr.options[dropdowncnt] = new Option( collection[0].getAttribute('val'),collection[0].getAttribute('id'));
			}
			else { // this option was selected by this routine because theres only one item found. (User may NOT change it)
				if (collection[0].getAttribute('val') == null) // use id if val is not supplied
				  fieldptr.options[dropdowncnt] = new Option( collection[0].getAttribute('id'),'');
				else
				  fieldptr.options[dropdowncnt] = new Option( collection[0].getAttribute('val'),'');
				disableOption = true;
			}
			fieldptr.selectedIndex = dropdowncnt;
		}
		else { // always display ALLE except for TRU, kind
		  fieldptr.options[dropdowncnt++] = new Option(' geen voorkeur ',''); 

			var wasSelected=false;
			for(cnt=0; cnt < collection.length; cnt++) {

				// create an option with values from xmlDoc
				if (collection[cnt].getAttribute('val') == null) // use id if val is not supplied
					fieldptr.options[dropdowncnt] = new Option(collection[cnt].getAttribute('id'), collection[cnt].getAttribute('id'));
				else
					fieldptr.options[dropdowncnt] = new Option(collection[cnt].getAttribute('val'),collection[cnt].getAttribute('id'));
				
				// checks if this option was selected by the user
 				if (collection[cnt].getAttribute('selected') != null) {
					fieldptr.selectedIndex = dropdowncnt;  // select that option again
					wasSelected = true;
					geenvoorkeur = false;
 				}
				dropdowncnt++;
	   	}
	   	if (!wasSelected) {
	   		fieldptr.selectedIndex = 0;
	   	}
		}
		fieldptr.disabled = disableOption;
		addDisabled(inputname, disableOption);
	}

	function clearDisabled() {
	  disabledHash = {};
	}

	function addDisabled (sleutel, waarde) {
	  disabledHash[sleutel] = waarde;
	}

	function msgCheck(sleutel) {
	  var waarde;
	  waarde = disabledHash[sleutel];
      
	  if (waarde == true) {
		  MM_showHideLayers('disabledmsg','','show');
	  }
	}

	function msgAlert(sleutel) {
	  var waarde;
	  waarde = disabledHash[sleutel];
      
	  if (waarde == true) {
			alert('Deze voorkeur kunt u niet wijzigen omdat er dan\ngeen locaties zullen voldoen aan de opgegeven voorkeuren.');
		  MM_showHideLayers('disabledmsg','','show');
	  }
	}

	function msgOff() {
	  MM_showHideLayers('disabledmsg','','hide');
	}

	function populateCounter() {
	//	<counter id="cnt" val="1" /> 
	// <elapsedTime val="0,046874" /> 
	// displays number of database items that match criteria
	   var statusStr = '';
	   var aantal = '';
		var collection = xmlDoc.getElementsByTagName('counter');
		  if (collection.length > 0)
		  {
		   statusStr = statusStr + 'cnt: '+collection[0].getAttribute('val') + '    ';
		   aantal = collection[0].getAttribute('val');
		  }
		var elapsedTime = xmlDoc.getElementsByTagName('elapsedTime');
		  if (elapsedTime.length > 0)
		   statusStr = statusStr + 'time: '+elapsedTime[0].getAttribute('val');
		window.status = statusStr;

	// toon aantal op de flash-zoekknop
	// ie: window.document.flashmovieID
	// ns: window.flashmovieID
    var mc = window.document.zoekknop;
    mc.SetVariable('aantal', aantal);
    if (geenvoorkeur)
    {
			mc.GotoFrame(0); // geen voorkeur -> tekst "toon locaties"
	  }
	  else
	  {
		if (aantal == '1')
			mc.GotoFrame(1); // toon locatie
		else
			mc.GotoFrame(2); // toon <aantal> locaties
	  }
	}

	function parseAll()	{
		
		if (!isLoadingXML)
			return;

		populateXMLSelect(document.getElementById('v1'),'v1','v1');
		populateXMLSelect(document.getElementById('v2'),'v2','v2');
		populateXMLSelect(document.getElementById('v3'),'v3','v3');
		populateXMLSelect(document.getElementById('v4'),'v4','v4');
		populateXMLSelect(document.getElementById('v5'),'v5','v5');
		populateXMLSelect(document.getElementById('v6'),'v6','v6');
		populateXMLSelect(document.getElementById('v7'),'v7','v7');

		populateCounter();
		isLoadingXML = false;
		
		if (!provinciegekliktviaflash)
		{
			var provincie = getSelectedValue(document.getElementById('v1'));
			var lk = is_ie ? window.document.landkaart : window.document.landkaart;
			if(provincie=='1') lk.GotoFrame(22);
			if(provincie=='2') lk.GotoFrame(21);
			if(provincie=='3') lk.GotoFrame(23);
			if(provincie=='4') lk.GotoFrame(24);
			if(provincie=='5') lk.GotoFrame(27);
			if(provincie=='6') lk.GotoFrame(25);
			if(provincie=='7') lk.GotoFrame(26);
			if(provincie=='8') lk.GotoFrame(20);
			if(provincie=='9') lk.GotoFrame(19);
			if(provincie=='10') lk.GotoFrame(28);
			if(provincie=='11') lk.GotoFrame(30);
			if(provincie=='12') lk.GotoFrame(29);
			if(provincie=='13') lk.GotoFrame(57);
			if(provincie=='14')	lk.GotoFrame(44);
			provinciegeklikt = false;
		}
	}

	function appendQryString(queryString, strParamlabel, strParamvalue) {
		// return directly if parameters are null
		if ((strParamlabel == null) || (strParamvalue == null))
		  return(queryString);
		// this function builds a URL querystring 
		if (strParamlabel.length > 0) { // only append label when label is valid
			if (strParamvalue.length > 0) { // only append label + value when filled with a value
				queryString = queryString.trim(); // remove trailing and leading spaces
				if (queryString.length == 0)
					var strDivider = '?'; // first parameter
				else
					var strDivider = '&'; // next parameters

				// voordat er geURLencoded wordt eerst +coderen
  				var tmpstrParamvalue = escape(strParamvalue);
				while (tmpstrParamvalue.indexOf('+') > -1) {
				  tmpstrParamvalue = tmpstrParamvalue.replace('+', '%2B');
				}
				queryString = queryString + strDivider + escape(strParamlabel) + '=' + tmpstrParamvalue
			}
		}
		return(queryString);
	}

	function getSelectedValue(optionPtr) {
		if (optionPtr == null)
			return('');
		return optionPtr.options[optionPtr.selectedIndex].value;
	}

  function defineQryString() {
	var qryStr = '';
	qryStr = appendQryString(qryStr, 'v1', getSelectedValue(document.getElementById('v1')));
	qryStr = appendQryString(qryStr, 'v2', getSelectedValue(document.getElementById('v2')));
	qryStr = appendQryString(qryStr, 'v3', getSelectedValue(document.getElementById('v3')));
	qryStr = appendQryString(qryStr, 'v4', getSelectedValue(document.getElementById('v4')));
	qryStr = appendQryString(qryStr, 'v5', getSelectedValue(document.getElementById('v5')));
	qryStr = appendQryString(qryStr, 'v6', getSelectedValue(document.getElementById('v6')));
	qryStr = appendQryString(qryStr, 'v7', getSelectedValue(document.getElementById('v7')));
	return(qryStr);
  }

	function reloadXML() {
		var qryStr='';
		disabledHash = {};
		qryStr = defineQryString();
		loadXML('xml/powersearch.aspx'+qryStr);
	}

	function reloadXMLreset() {
		var qryStr='';

  		// clear Hash index
		disabledHash = {};
		//
		provinciegeklikt = true;
		// build new querystring (based on first dropdown) for fetching XML
		qryStr = appendQryString(qryStr, 'v1', getSelectedValue(document.getElementById('v1')));
		loadXML('xml/powersearch.aspx'+qryStr);
	}

	function startPowerSearch(qryString) {	

		if(!document.getElementById) {
			// see documentation at http://www.mozilla.org/docs/web-developer/faq.html
  			alert('nDe venue-finder werkt alleen op de volgende browsers:\nInternet Explorer 5.0 of hoger\nNetscape 6.x of hoger\nMozilla \nFirefox');
			return;
		}
		if(is_mac) 
		{
			if (is_ie) 
			{
  				alert('nDe venue-finder werkt op Macintosh alleen op de volgende browsers:\nNetscape 6.x of hoger\nMozilla 1.x\nFirefox');
				return;
			}
		}
		loadXML('xml/powersearch.aspx?'+qryString);
	}

	function startSearch(){
		window.location.href = 'locaties.aspx' + defineQryString();
	}
	
	function makeInitQRY() {
	  return(window.location.search.substring(1));
	}
	

//-->
