
	globalDagen = 0;
	globalArrangement = 0;
	globalBoot = 0;
	globalPickdate = 0;
	globalWindowOpen = false;
	globalMenuArray = Array();
	indexColor = Array();
	lastMenu = 0;


	/* ########################## Begin of XML function ########################### */	
	
	function xmlObject() {
	
		if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		    xmlObj = new XMLHttpRequest();
		} else if (window.ActiveXObject) { // IE
		    xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
		return xmlObj;
	
	}
	
	function doRequest(xmlUrl, functionName) {

		
		xmlObj = new xmlObject();
		
		xmlObj.onreadystatechange = function() {
			
			if (xmlObj.readyState == 4) {
				
				
				
				if (functionName == 'datumCheck') {
					parseDate(xmlObj.responseText);
				}
				
				if (functionName == 'dataCheck') {
					parseArrangement(xmlObj.responseText);
				}

				if (functionName == 'setDays') {
					setDays(xmlObj.responseText);
				} 
			}

		}
		
		xmlObj.open('GET', xmlUrl , true);
		xmlObj.send(null);
	
	}
	
	
	function getBoats() {
	
		xmlObj = new xmlObject();
		xmlObj.onreadystatechange = function() {
			
			if (xmlObj.readyState == 4) {
			
				document.getElementById('tab_3').innerHTML = xmlObj.responseText;
				document.getElementById('tab_2').style.display = 'none';
				document.getElementById('tab_3').style.display = 'inline';		
			}


		}
		
		xmlObj.open('GET', 'xml_boten.php?bootId=' + globalBoot , true);
		xmlObj.send(null);
	
	
	}
	
	function putHistory(id,isHistory,doWhat) {
	
		xmlObj = new xmlObject();
		
		xmlObj.open('GET', 'xml_actions.php?action=' + doWhat + '&id=' + id + '&history=' + isHistory);
		xmlObj.send(null);
	
	}
	
	function wisBetaling(id) {
	
		xmlObj = new xmlObject();
		xmlObj.onreadystatechange = function() {
			
			if (xmlObj.readyState == 4) {
				window.location.reload(true);				
			}
		}
		xmlObj.open('GET', 'xml_actions.php?action=wisbetaling&id=' + id);
		xmlObj.send(null);
	
	}
	
	function wisprovbetaling(id) {
	
		xmlObj = new xmlObject();
		xmlObj.onreadystatechange = function() {
			
			if (xmlObj.readyState == 4) {
				window.location.reload(true);				
			}
		}
		xmlObj.open('GET', 'xml_actions.php?action=wisprovbetaling&id=' + id);
		xmlObj.send(null);
		
	}
	
	function doXmlRequest(xmlUrl, functionByValue) {

		
		xmlObj = new xmlObject();
		xmlObj.onreadystatechange = function() {
			
			if (xmlObj.readyState == 4) {
				globalXmlData = xmlObj.responseText;
				functionByValue();
			}

		}
		
		xmlObj.open('GET', xmlUrl , true);
		xmlObj.send(null);
	
	}

		
	
	function parseArrangement(xmlText) {
		
		responseSplit = xmlText.split(' ');
			
		if (responseSplit[0] == 'false_data') {
			messageString = xmlText.split(responseSplit[0]);
			alert(messageString[1]);
		}
		
		if (responseSplit[0] == 'data_ok') {

			globalDagen = responseSplit[1];
			globalArrangement = arrangementType;
			globalBoot = bootId;
							
			document.forms[0].submit();
		}
	}
	
	function parseDate(xmlText) {

		responseSplit = xmlText.split(';^;');
		
		if (responseSplit[0] == 'false_data') {
			
			messageString = xmlText.split(responseSplit[0]);
			
		}
		
	
		if (responseSplit[0] == 'alternative_data') {
			
			xHTML = String(responseSplit[1]);
			document.getElementById('dagtijdAlternatief').innerHTML = xHTML;
			
		}
		
		if (responseSplit[0] == 'data_ok') {
			document.forms['dateForm'].submit();			
		}

	}
	
	/* ########################## End of XML function ########################### */	
	
	function setNewDate(datum) {

		
		
		datum = trim(datum);
		datum = datum.split(' ');
		dag = datum[0];
		maand = datum[1];
		jaar = datum[2];
		
		selDag = document.getElementById('vertrek_dag');
		selMaand = document.getElementById('vertrek_maand');
		selJaar = document.getElementById('vertrek_jaar');
				
		for (i = 0; i < selDag.options.length; i++) {
			if (selDag.options[i].value == dag) {
				selDag.options[i].selected = true;
			}
		}
		
		for (i = 0; i < selMaand.options.length; i++) {
			if (selMaand.options[i].value == maand) {
				selMaand.options[i].selected = true;
			}
		}
		
		for (i = 0; i < selJaar.options.length; i++) {
			if (selJaar.options[i].value == jaar) {
				selJaar.options[i].selected = true;
			}
		}
	}
	


		
	function parseMenu(xmlText) {
			
		document.getElementById('button_4').className = 'tabItemHighlight';
		document.getElementById('tab_3').style.display = 'none';
		document.getElementById('tab_4').style.display = 'inline';		
	
	}
	
	
	
	function checkArrangement() {
		
		//arrangement
		if(document.forms[0].arrangement_type.length) {
	
			for (i = 0; i < document.forms[0].arrangement_type.length; i++) {
				obj = document.forms[0].arrangement_type[i];
				
					arrangementType = obj.value;
			}
		} else {
			arrangementType = 	document.forms[0].arrangement_type.value;
		}
		
			
		
		//boot
		if(document.forms[0].boot_id.length) {
			
		
			for (i = 0; i < document.forms[0].boot_id.length; i++) {
				obj = document.forms[0].boot_id[i];
					bootId = obj.value;
			}
			
		} else {
			bootId = 	document.forms[0].boot_id.value;
		}
				
		if (arrangementType == '') {
			alert('U heeft geen arrangement geselecteerd');
			return false;
		}
		
		if (bootId == '') {
			alert('U heeft geen boot geselecteerd');
			return false;
		}
		
		doRequest('xml_check_data.php?step=1&bootId=' + bootId + '&arrangement=' + arrangementType + '&aantal=0', 'dataCheck');		
	
	}
	
	function controleerVertrekdatum() {
	
		vertrekDag = document.getElementById('vertrek_dag').value;
		vertrekMaand = document.getElementById('vertrek_maand').value;
		vertrekJaar = document.getElementById('vertrek_jaar').value;
		
		doRequest('xml_controleer_datum.php?vertrekDag=' + vertrekDag + '&vertrekMaand=' + vertrekMaand + '&vertrekJaar=' + vertrekJaar, 'datumCheck');		
		
	
	}
	
	
	
	function selectMenu(menuId) {
		
		if (window['lastMenuId'] != null) {
			document.getElementById('menuContent_' + lastMenuId).style.display = 'none';
		}
		
		document.getElementById('menuContent_' + menuId).style.display = 'inline';
		lastMenuId = menuId;
	
	}

	
	
	function setMenuAmount(menuId) {
	
		aantal = document.getElementById('menuAantal_' + menuId).value;
		
		if (isNaN(aantal) || aantal == 0) {
			document.getElementById('menuAantal_' + menuId).value = '';
			aantal = 0;
		}
		
		globalMenuArray[menuId] = aantal;
		
	}	
	
	function saveMenu() {
		
		formCatering = document.forms['cateringForm'];
		
		for (i = 0; i < formCatering.elements.length; i++) {
			
			formElement = formCatering.elements[i];
			
			xId = formElement.id.split('_');
			
			if (xId[0] == 'menuAantal') {
				setMenuAmount(xId[1]);
			}
			
		}
	
	
		getString = '';
	
		for (i in globalMenuArray) {
			
			if (globalMenuArray[i] != 0) {
			
				if (getString == '') {
					getString = i + ',' + globalMenuArray[i];
				} else {
					getString += ';' + i + ',' + globalMenuArray[i];
				}
			
			}
		
		}
		
		getString = escape(getString);	
		
		document.getElementById('menuText').value = getString;
		document.forms[0].submit();
		
	}
	
	
	function trim(str) { 
       
        var m; 
        var rx; 
        
        str = String(str);

        rx = new RegExp('^(( |r|n)*)','gi'); 
        str = str.replace(rx,''); 

        rx = new RegExp('(( |r|n)*)$','gi'); 
        returnString = str.replace(rx,''); 

        return returnString; 

     } 
	
	function goNext(maxjaar){
	
		maand = parseInt(document.getElementById('vertrek_maand').value);
		jaar = parseInt(document.getElementById('vertrek_jaar').value);
	
		if (maand >= 12){
			
			newmaand = 1;
			newjaar = jaar + 1 ; 
			 
		}else{	
			 
		 	newmaand = maand + 1 ;
		 	newjaar = jaar;
		 }
			 	 
		if (maxjaar >= newjaar){				 
		  
			document.getElementById('vertrek_maand').value = newmaand;
			document.getElementById('vertrek_jaar').value = newjaar;

			laadDatums();
		}
	}

	
   	function goPrevious(minjaar){
	
		maand = parseInt(document.getElementById('vertrek_maand').value);
		jaar = parseInt(document.getElementById('vertrek_jaar').value);
		 
		if (maand <= 1){
		
			newmaand = 12;
			newjaar = jaar -1; 
		 
		}else{	 
	 		
			newmaand = maand - 1;
			newjaar = jaar;
			 
	 	}
	 
		 if (minjaar <= newjaar){
		 
		 	document.getElementById('vertrek_maand').value = newmaand;
			document.getElementById('vertrek_jaar').value = newjaar;
			 
	    	laadDatums();
    	}
	}

     	
     function laadDatums() {

		parseInt(maand = document.getElementById('vertrek_maand').value);
		parseInt(jaar = document.getElementById('vertrek_jaar').value);
		curdate = new Date()
		
		if (maand == 0){
			document.getElementById('vertrek_maand').value = curdate.getMonth() + 1;
			document.getElementById('vertrek_jaar').value = curdate.getFullYear();
		}	
		
		if (maand < (curdate.getMonth() + 1) && jaar == curdate.getFullYear() ){
			document.getElementById('vertrek_maand').value = curdate.getMonth() + 1;
		}
		
		getCalendar();

	}
	
	function setTypeBoeking() {
		
		var typeBoeking;
		var x;
		
		typeBoeking = document.forms['confirmForm'].type_boeking;
		
		for (i = 0; i < typeBoeking.length; i++) {
			if (typeBoeking[i].checked) {
				x = typeBoeking[i].value;
			}
		}
		
		if (x == 'zakelijk') {
			document.getElementById('bedrijfsBoeking').style.display = 'inline';
		} else {
			document.getElementById('bedrijfsBoeking').style.display = 'none';
		}
	
	}


	function getCalendar() {

		vertrekDag = document.getElementById('vertrek_dag').value;
		vertrekMaand = document.getElementById('vertrek_maand').value;
		vertrekJaar = document.getElementById('vertrek_jaar').value;
		oldIndex = -1;
		oldColor = -1;
		//WD: veroorzaakt fouten, en in een js bestand PHP aanroepen werk niet.
		doXmlRequest('kalender.php?PHPSESSID=&vertrekDag='+vertrekDag + '&vertrekMaand=' + vertrekMaand + '&vertrekJaar=' + vertrekJaar, 
			function() { 
				setCalendar();
			} 
		);


	}

	function setCalendar() {
		document.getElementById('kalender').innerHTML = globalXmlData;
	}

		
	
	function moveMenuline(line, direction) {
		doXmlRequest('xml_actions.php?action='+direction+'&line='+line,
			function() { 
				response = globalXmlData.split(';^;');
				getMenuline(response[0],response[1]);
			} 
		);
		
	}	

	
	
	function getMenuline(line,lineNew) {
			
		doXmlRequest('xml_actions.php?action=setMenuLine&line='+line,
			function() { 
				setLine(line);
				
				doXmlRequest('xml_actions.php?action=setMenuLine&line='+lineNew,
					function() { 
					setLine(lineNew);
					} 
				);
			} 
		);
	}
	
	function moveArrline(line, direction) {
		doXmlRequest('xml_actions.php?action='+direction+'&line='+line,
			function() { 
				response = globalXmlData.split(';^;');
				getArrline(response[0],response[1]);
			} 
		);
		
	}	

	
	
	function getArrline(line,lineNew) {
		doXmlRequest('xml_actions.php?action=setArrLine&line='+line,
			function() { 
				setLine(line);
				
				doXmlRequest('xml_actions.php?action=setArrLine&line='+lineNew,
					function() { 
					setLine(lineNew);
					} 
				);
			} 
		);
	}
	
	function setLine(line) {
		responseSplit = globalXmlData.split(';^;');
		
		for (i=0; i < responseSplit.length; i++) {
			document.getElementById('rowCol'+(i+1)+'-'+line).innerHTML = responseSplit[i];
		}
	}
	
	
	function setStyle(dagIndex, action, specificDay, outcolor) {
	     outcolor = typeof(outcolor) != 'undefined' ? outcolor : '#c5f9ca';


		if (action == 'in' && document.getElementById('index_' + dagIndex).style.backgroundColor == '#c5f9ca') {
			document.getElementById('index_' + dagIndex).style.backgroundColor = '#4983ba';
		} 
		
		if (action == 'out' && document.getElementById('index_' + dagIndex).style.backgroundColor == '#4983ba') {
			//document.getElementById('index_' + dagIndex).style.backgroundColor = '#c5f9ca';
			document.getElementById('index_' + dagIndex).style.backgroundColor = outcolor;
		}
		
	}

	
	function pickDate(index, selectedDate, totalDays, maxIndex,outcolor) {
	   outcolor = typeof(outcolor) != 'undefined' ? outcolor : '#c5f9ca';
      globalPickdate = selectedDate;
		doAbort = false;
		
		if (window['oldIndex'] && oldIndex >= 0) {

			oldIndex=parseFloat(oldIndex)
			
			for (i=oldIndex; i < (oldIndex + totalDays); i++) {
				
				if (i > maxIndex){break;}
				
				document.getElementById('index_' + i).style.backgroundColor = indexColor[i];
			}
			
			document.getElementById('index_' + oldIndex).style.backgroundColor = oldColor;
		}

		for (i=index; i < (index + totalDays); i++) {
			
			if (i > maxIndex){break;}
			
			indexColor[i] = document.getElementById('index_' + i).style.backgroundColor;
			document.getElementById('index_' + i).style.backgroundColor = '#b1cde8';
		}
		
		newEventDate = selectedDate;
		oldIndex = ''+ index + '';
		oldColor = outcolor;
	}


	function setNewEvent() {

		if (!window['newEventDate']) {
			alert('U heeft nog geen datum uitgekozen');
			return false;
		}

		if (window['newEventDate'] == '') {
			alert('U heeft nog geen datum uitgekozen');
			return false;
		}

		dates = newEventDate.split('-');

		document.getElementById('idVertrekDag').value = dates[2];
		document.getElementById('idVertrekMaand').value = dates[1];
		document.getElementById('idVertrekJaar').value = dates[0];

		return true;
	}
	
	function checkPersHaven() {
      if(document.getElementById('aantal_personen')) {
         apers = document.getElementById('aantal_personen').value;
      }else{
         apers = parseInt(document.getElementById('aantal_man').value)+parseInt(document.getElementById('aantal_vrouw').value);
      }
		if (apers == '0') {
			alert('U heeft het aantal personen niet ingevuld');
			return false;
		}	
		
		if (document.getElementById('vertrek_locatie_id').value == '-1' || 
			document.getElementById('aankomst_locatie_id').value == '-1') {
			alert('Eén of beide geselecteerde havens is niet correct');
			return false;
		}	
		
		var arr = document.getElementById('arrangement_type').value;
		var tijd = document.getElementById('tijden_'+arr).value;
		var vertrek = document.getElementById('vertrek_locatie_id').value;
		var aankomst = document.getElementById('aankomst_locatie_id').value;
		var boot = document.getElementById('schip').value;
		var  result = "-1";
		
		xmlObj = new xmlObject();
		xmlObj.onreadystatechange = function() {
			
			if (xmlObj.readyState == 4) {
				result = xmlObj.responseText;

				if (result == '0'){
					alert("De vaartijd tussen de havens is te lang\nvoor het gekozen arrangement.\nKies een andere vertrek- en/of aankomsthaven...");
				}else{
					document.getElementById('clicked_button').value='1';
					document.forms["arrForm"].submit();
				}
			}
		}
		
		xmlObj.open('GET', 'xml_check_arrangement.php?schip='+boot+'&arr='+arr+'&tijd='+tijd+'&vertrek='+vertrek+'&aankomst='+aankomst,true);
		xmlObj.send(null);
		
	}
	
	function checkHavenTijden() {
		
		var arr = document.getElementById('arrangement_type').value;
		var tijd = document.getElementById('tijden_'+arr).value;
		var vertrek = document.getElementById('vertrek_locatie_id').value;
		var aankomst = document.getElementById('aankomst_locatie_id').value;
		var boot = document.getElementById('schip').value;
		var  result = "-1";
		
		xmlObj = new xmlObject();
		xmlObj.onreadystatechange = function() {
			
			if (xmlObj.readyState == 4) {
				result = xmlObj.responseText;
                                //    alert(xmlObj.responseText);
				if (result == '0'){
					alert("De vaartijd tussen de havens is te lang\nvoor het gekozen arrangement.\nKies een andere vertrek- en/of aankomsthaven...");
				}
				document.forms["arrForm"].submit();
			}
		}
		
		xmlObj.open('GET', 'xml_check_arrangement.php?schip='+boot+'&arr='+arr+'&tijd='+tijd+'&vertrek='+vertrek+'&aankomst='+aankomst,true);
		xmlObj.send(null);
		
	}
		
	function checkEmail(){
		
		if (document.getElementById('login_email').value == ''){
			alert('U heeft nog geen email adres ingevuld');
			return false;
		}
		
		if (document.getElementById('login_email').value.length < 5 || 
			document.getElementById('login_email').value.search('@') == -1){ 
			alert('U heeft geen correct email adres ingevuld');
			return false;
		}
		
		if (document.getElementById('login_email').value != document.getElementById('email_herhaal').value){
			alert('U heeft het email adres niet correct herhaald');
			return false;
		}
	
				
	return true;		
		
	}
	
	function checkOption() {
		
		obj	= document.getElementsByName('type_boeking')[0];
				
		if (obj.checked){
			arr = Array('voornaam', 'achternaam', 'telefoon', 'login_email');
		}else{
			arr = Array('voornaam', 'achternaam', 'telefoon', 'login_email', 'bedrijfsnaam');
		}
		
		doContinue = true;
		
		for (i=0;i<arr.length;i++) {
			
			if (document.getElementById(arr[i]).value == '') {
				document.getElementById('lbl_'+arr[i]).style.color = '#ff0000';
				doContinue = false;
			} else {
				document.getElementById('lbl_'+arr[i]).style.color = '#000000';
			}
		
		}
		
		return doContinue;
	
	}
	
	
	function open_new_window(cIndex,schip) {
		
		new_window = open("kalender_detail.php?cIndex="+cIndex+"&schip="+schip,"details","width=350,height=300,left=700,top=200,statusbar=no");
		
 		globalWindowOpen = true;
	}

	function close_window() {
		if (globalWindowOpen){
			globalWindowOpen = false;
			new_window.close();
		}
	}
	
