	function initQuickNav() {
		var states = ['nh','zh','ut','fl','zl','nb','ov','gl','dr','gr','fr','lb'];
		var statesExt = ['Noord-Holland','Zuid-Holland','Utrecht','Friesland','Zeeland','Noord-Brabant','Overijssel','Gelderland','Drenthe','Groningen','Friesland','Limburg'];
		
		
		
		mapAndSelectorContainer = document.createElement('div');
		mapAndSelectorContainer.id = 'mapAndSelectorContainer';
		mapAndSelectorContainerInner = document.createElement('div');
		mapAndSelectorContainerInner.id = 'mapAndSelectorContainerInner';
		mapAndSelectorContainer.appendChild(mapAndSelectorContainerInner);
		mapAndSelectorContainerInnerInner = document.createElement('div');
		mapAndSelectorContainerInnerInner.id = 'mapAndSelectorContainerInnerInner';
		mapAndSelectorContainerInner.appendChild(mapAndSelectorContainerInnerInner);
		
		document.getElementById('content').insertBefore(mapAndSelectorContainer, document.getElementById('aanbiedersTab'));
		
		// build map
		mapContainer = document.createElement('div');
		mapContainer.id = 'mapContainer';
		for (var i=0; i<states.length; i++) {
			var newState = document.createElement('div');
			newState.id = states[i] + 'Map';
			mapContainer.appendChild(newState);
		}
		mapAndSelectorContainerInnerInner.appendChild(mapContainer);
		// build checkboxes containers

		selectionContainer = document.createElement('form');
		selectionContainer.id = 'selectionContainer';

		var selectionHeader = document.createElement('h2');
		selectionHeader.id = 'selectionHeader';
		selectionContainer.appendChild(selectionHeader);
		var selectionSubHeader = document.createElement('h3');
		selectionSubHeader.id = 'selectionSubHeader';
		selectionContainer.appendChild(selectionSubHeader);

		selectionSubContainer1 = document.createElement('fieldset');
		selectionSubContainer1.id = 'selectionSubContainer1';
		selectionSubContainer2 = document.createElement('fieldset');
		selectionSubContainer2.id = 'selectionSubContainer1';
		
		selectionContainer.appendChild(selectionSubContainer1);
		selectionContainer.appendChild(selectionSubContainer2);
					
		for (var i=0; i<states.length; i++) {
			var newStateLabel = document.createElement('label');
			newStateLabel.id = states[i] + 'SelectorLabel';
			
			var newStateOption = document.createElement('input');
			newStateOption.type = 'checkbox';
			newStateOption.name = states[i] + 'Selector';
			newStateOption.id   = states[i] + 'Selector';
			
			newStateOption.onclick = function() {
				var targetByID1 = document.getElementById(this.id.replace('Selector','Map'));
				((targetByID1.style.display ==  'block') || (targetByID1.style.display ==  '')) ? targetByID1.style.display =  'none': targetByID1.style.display =  'block';
				/*var targetByID2 = document.getElementById(this.id.replace('Selector','Text'));					
				var targetByID3 = document.getElementById(this.id.replace('Selector','List'));					


				((targetByID2.style.display ==  'block') || (targetByID2.style.display ==  '')) ? targetByID2.style.display =  'none': targetByID2.style.display =  'block';
				((targetByID3.style.display ==  'block') || (targetByID3.style.display ==  '')) ? targetByID3.style.display =  'none': targetByID3.style.display =  'block';*/
			}
			
			newStateLabel.appendChild(newStateOption);

			var newStateText = document.createElement('span');
			newStateLabel.appendChild(newStateText);
			if(i<6) {
				selectionSubContainer1.appendChild(newStateLabel);
			} else {
				selectionSubContainer2.appendChild(newStateLabel);
			}
		}
		mapAndSelectorContainerInnerInner.appendChild(selectionContainer);

		
		for (var i=0; i<states.length; i++) {
			document.getElementById(states[i] + 'SelectorLabel').getElementsByTagName('span')[0].innerHTML = statesExt[i];
	                document.getElementById(states[i] + 'Selector').checked = true;
		}
		document.getElementById('selectionHeader').innerHTML = ' Zoek Aanbieders';
		document.getElementById('selectionSubHeader').innerHTML =' met Vaste vertrekplaats IN:';


		var zoekLink = document.createElement('button');
		zoekLink.id = 'zoekButton';
		zoekLink.onclick = processSelected;
		zoekLink.title = 'geef de aanbieders met startplaatsen in de geselecteerde provincies weer';
		
		document.getElementById('mapAndSelectorContainerInnerInner').appendChild(zoekLink);

	
	}
	
	function insertAfter(newNode, targetNode) {
		if (targetNode.nextSibling) {
			targetNode.parentNode.insertBefore(newNode, targetNode.nextSibling);
		} else {
			targetNode.parentNode.appendChild(newNode);
		}
	}


	
	/* hide actief in voor JS visitors zij gebruiken kaart */
	function removeActiefIn() {
		var tds = document.getElementsByTagName('td');
		for (var i=0; i <tds.length; i++) {
			if (tds[i].className == 'actiefIn') {
			    tds[i].style.display = 'none';
			}
		}
		if (document.getElementById('actiefInHeader')) {
			document.getElementById('actiefInHeader').style.display = 'none';
		}
		
	}

	
function getProvinciesByRow(n) {
	var aanbieders = document.getElementById('aanbiederTabel').getElementsByTagName('tbody')[0].getElementsByTagName('tr');
	var provincieSpans = aanbieders[n].getElementsByTagName('span');
	var found = [];
	for (var i=0; i < provincieSpans.length; i++) {
		if (provincieSpans[i].className != '') found.push(provincieSpans[i].className);
	}
	
	return found;
}
function crosscheckProvincies(a,b) {
    var found = false;
	for (var i=0; i < a.length; i++) {
		for (var j=0; j < b.length; j++) {
		   if (a[i]== b[j]) {
		       found = true;
			   break;
		   }
		 }
		 if (found) break;
	}
	return found;
}

	function processSelected() {
		var states = ['nh','zh','ut','fl','zl','nb','ov','gl','dr','gr','fr','lb'];
		selectedStates = [];
		for (var i=0; i < states.length; i++) {
			if (document.getElementById(states[i]+'Selector').checked) {
				selectedStates.push(states[i]);
			}
		}
  
		
		var aanbieders = document.getElementById('aanbiederTabel').getElementsByTagName('tbody')[0].getElementsByTagName('tr');
              

		for (var i=0; i < aanbieders.length; i++) {
		    var provinciesAanbieder = getProvinciesByRow(i);

			if (crosscheckProvincies(provinciesAanbieder, selectedStates)) {
                              if(document.all) {
                                 aanbieders[i].style.display = 'block';
                              } else {
				aanbieders[i].style.display = 'table-row';
                              }
                                			} else {
				aanbieders[i].style.display = 'none';
			}
		}
		redoZebraStyling();
	}
	
	function redoZebraStyling() {
		var aanbieders = document.getElementById('aanbiederTabel').getElementsByTagName('tbody')[0].getElementsByTagName('tr');
		var lastOne = 'even';
		for (var i=0; i < aanbieders.length; i++) {
			if(aanbieders[i].style.display == 'none') {
			 	/*skip this one */
			} else {
				if (lastOne == 'even') {
					lastOne = 'odd';
					aanbieders[i].className = lastOne;
				} else {
					lastOne = 'even';
					aanbieders[i].className = lastOne;
				}
			}
		}
	}
    

