var maxLastminutes = 3;
var maxShowPages = 5; //altijd oneven.
var lastMinuteData = false;
var currentItem = 0;
var currentPage = 0;
var lastMinutes = new Array();
var islastminutes = false;
var sendFlashArray = new Array();
var hoofdgroep = "";

// flash functions
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 && navigator.userAgent.indexOf("Windows") != -1 && navigator.userAgent.indexOf("Windows 3.1") == -1)
{
      document.write('<SCRIPT LANGUAGE=VBScript\> \n');
      document.write('on error resume next \n');
      document.write('Sub kaart_FSCommand(ByVal command, ByVal args)\n');
      document.write(' call kaart_DoFSCommand(command, args)\n');
      document.write('end sub\n');
      document.write('</SCRIPT\> \n');
} 

function kaart_DoFSCommand(command, args)
{
	var intro = getEl('introcontent');
	var kiesland = getEl('kieslandtekst');
	var introkop = getEl('introkop');
	var landenLijst = getEl('landenLijst');
	
	if (command == 'help') { alert(args); }
	
	switch (command)
	{
		case 'resetFlashArray':
			sendFlashArray = new Array();
			break;
		case 'lastminutes_start':
		    clearParkInfo();
			lastMinuteData = true;
			lastMinutes = new Array();

			//We zitten in last minute modus.
			islastminutes = true;

			break;
		
		case 'lastminute':
			if (lastMinuteData)
			{
				currentItem = lastMinutes.length;
				lastMinutes[currentItem] = new Array();
			}		
			break;
		
		case 'lastminutes_end':
			lastMinuteData = false;
			setLastminuteParkinfo(lastMinutes[0]);
			gotoLastminute(0);
			break;
		
		case 'parkinfo_start':
		    clearParkInfo();
			lastMinuteData = true;
			lastMinutes = new Array();
			break;
		
		case 'parkinfo':
			currentItem = lastMinutes.length;
			lastMinutes[currentItem] = new Array();

			//We zitten in standaard modus.
			islastminutes = false;
			break;

		case 'parkinfo_end':
			lastMinuteData = false;

			//Sort data:
			lastMinutes.sort(sortData);

			setLastminuteParkinfo(lastMinutes[0]);
			gotoLastminute(0);
			break;
		
		// ------------------------------------------------------------------------------------------------- \\
		
		case 'showoverlay':
			showOverlay(args,"","");
			break;
		
		case 'disableMenu':
			
			toggleInput(false);

			break;

		case 'enableMenu':
		
			toggleInput(true);
			toggleInputVisibility('visible');

			break;

		case 'inCountry':
			
			//getEl('zoekin').style.visibility = 'visible';

			//intro.style.display = 'block';
			if (kiesland)
			{
				kiesland.style.display = 'none';
				landenLijst.style.display = 'none';
			}
			
			if (intro)
			{
				intro.innerHTML = ''; //Zoom uit om een ander land te kiezen';
			}
			
			
			if (introkop) introkop.innerHTML = 'Maak uw keuze';
			
			toggleInputVisibility('visible');

			break;

		case 'outCountry':

			//intro.style.display = 'none';
			if (kiesland)
			{
				kiesland.style.display = 'block';
				landenLijst.style.display = 'block';
			}

	
			toggleInput(false);
			toggleInputVisibility('hidden');

			if (introkop) introkop.innerHTML = 'Landkaart';
			
			
			break;
		case 'outCountry_pre':
			
			toggleInput(false);
			toggleInputVisibility('hidden');

			if (introkop) introkop.innerHTML = 'Landkaart';
			
			
			break;
		// ------------------------------------------------------------------------------------------------- \\
		
		default:

			if (!lastMinuteData)
			{	
				if (command == 'parknaam') { getEl('parknaamVal').value = args; }
				else if (command == 'urlinfo') { getEl('urlinfoVal').value = args; }
				else if (command == 'urlprijsopgave') { getEl('urlprijsopgaveVal').value = args; }
				else if (command == 'urlboeken') { getEl('urlboekenVal').value = args; }
				else if (command == 'vkbklant') { getEl('vkbklantVal').value = args; }
				else if (command == 'gotoPark') { gotoPark(); }
				else { lastMinutes[currentItem][command] = args; alert(command + " => " + args); }
				//if (command == 'switchTo') { planDatum.zoekIn.selectedIndex = args; }
				//alert(command + ' ' + args);
			} else {
				//alert(command + ' ' + args);
				// load data into javascript array
				if(lastMinutes[currentItem])
				{
				  lastMinutes[currentItem][command] = args;
				}
				//alert(command);
				//alert('Even wat testen: ' + args);
	    	}
			break;
	}

}


function sortData(a, b)
{
	var x = a["beschikbaar"];
	var y = b["beschikbaar"];
	return ((x < y) ? -1 : ((x > y) ? 1 : 0));
}



function startRes(i)
{
	if (inDebug) {
		alert("startRes");
	}
	
	window.open(lastMinutes[i]['urlboeken'] + affiliateurl, 'VR', 'toolbar=0,location=0,status=1,menubar=0,scrollbars=0,width=850,height=550,top=20,left=20');
}

function startPrijsOpg(i)
{
	if (inDebug) {
		alert("startPrijsOpg");
	}
	window.open(lastMinutes[i]['urlprijsopgave'] + affiliateurl, 'VR', 'toolbar=0,location=0,status=1,menubar=0,scrollbars=0,width=850,height=550,top=20,left=20');
}


function setLastminuteParkinfo(parkinfo)
{
	if (inDebug) {
		alert("setLastminuteParkinfo");
	}
	if (parkinfo != undefined)
	{
		if ( parkinfo['parknaam'] != undefined)
		{
			getEl('dummy_title').innerHTML = 'Vakantiekaart - ' + parkinfo['parknaam'];
		}

		getEl('parknaamVal').value = parkinfo['parknaam'];
		getEl('urlinfoVal').value = parkinfo['urlinfo'];
		getEl('vkbklantVal').value = parkinfo['vkbklant'];
		
		getEl('boxtitle').innerHTML = getEl('parknaamVal').value;

	} else {

		if (getEl('pagenumbers'))
		{
			getEl('pagenumbers').style.visibility = 'hidden';
		}

	}
}


function sendFlashVar(aVarName, aVarValue)
{
	var flashMovie=getFlashMovieObject('kaart');
	
	flashMovie.SetVariable("/:"+aVarName, aVarValue);
}


function getFlashMovieObject(movieName)
{
	if (inDebug) {
		alert("getFlashMovieObject");
	}
	
	if (window.document[movieName]) return window.document[movieName];
	
	if (navigator.appName.indexOf("Microsoft Internet")==-1)
	{
		if (document.embeds && document.embeds[movieName]) return document.embeds[movieName]; 
	} else  { // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
		return document.getElementById(movieName);
	}
}

function SendDataToFlashMovie(date,days)
{
	if (inDebug) {
		alert("SendDataToFlashMovie");
	}
	
	var flashMovie=getFlashMovieObject('kaart');
	if (flashMovie) 
	{
		//if ((flashMovie.GetVariable('startDate') != date) || (flashMovie.GetVariable('numDays') != days))
		{
			clearParkInfo();
			clearLastminuteInfo();
			
			//alert( lastMinute + ' - ' + vkbKlant + ' ' + eigenPlek);
			//getEl('debug').innerHTML = 'vkb: ' + vkbKlant;

			flashMovie.SetVariable("/:lastMinute", lastMinute);
			flashMovie.SetVariable("/:vkbKlant", vkbKlant);
			flashMovie.SetVariable("/:eigenPlek", eigenPlek);
			
			flashMovie.SetVariable("/:startDate", date);
			flashMovie.SetVariable("/:numDays", days);
			flashMovie.SetVariable("/:hoofdgroep", hoofdgroep);
		
			//reload flashmovie
			flashMovie.GotoFrame(1);
			
			flashMovie.SetVariable("/:dataChanged", "yes")
			
		//} else {
			
			//de waarden die opgevraagd worden zijn reeds gezet.. even geduld aub?  
		}
	}	
}


function getEl(id)
{
	if(typeof document.getElementById(id))
	{
		return document.getElementById(id);
	}
}

function clearParkInfo()
{

	if (inDebug) {
		alert("clearParkInfo");
	}

	getEl('dummy_title').innerHTML = 'Vakantiekaart';
//	getEl('parknaam').innerHTML = '';
	getEl('urlinfo').innerHTML = '';
	getEl('urlprijsopgave').innerHTML = '';
	getEl('urlboeken').innerHTML = '';
	getEl('objectsoort').innerHTML = '';
	getEl('datum').innerHTML = '';
	getEl('moreInfo').innerHTML = '';
	getEl('urllminfo').innerHTML = '';
	getEl('websiteURL').innerHTML = '';
	getEl('websiteURL').style.display = 'none';
	getEl('lastminute_objecten').innerHTML = '';
	getEl('terug').style.display					= 'none';
//	getEl('parknaam').style.display					= 'none';
	getEl('urlinfo').style.display					= 'none';
	getEl('urlprijsopgave').style.display			= 'none';
	getEl('urlboeken').style.display				= 'none';
	getEl('objectsoort').style.display				= 'none';
	getEl('datum').style.display 					= 'none';
	getEl('moreInfo').style.display='none';
	getEl('urllminfo').style.display 				= 'none';
	getEl('lastminute_objecten').style.display 		= 'none';
	if(getEl('pagenumbers'))
	{
		getEl('pagenumbers').style.display				= 'none';
	}
}

function clearLastminuteInfo()
{
	if (inDebug) {
		alert("clearLastminuteInfo");
	}
	
	var lastminute_objecten = getEl('lastminute_objecten');

	lastminute_objecten.innerHTML = '';
	lastminute_objecten.style.display		 = 'none';
}


function changeMap()
{
	if (inDebug) {
		alert("changeMap");
	}
	
	var flashMovie=getFlashMovieObject('kaart');
	
	if (flashMovie)
	{
		if(flashMovie.GetVariable('geladenKaart') != planDatum.zoekIn.value)
		{

			//geladen kaart is niet gelijk aan gevraagde kaart. switch!
			flashMovie.SetVariable("/:geladenKaart", planDatum.zoekIn.value);
			//reload flashmovie
			flashMovie.GotoFrame(1);
		}
	}
}


 function fillLastminutePark()
{
//	var parknaam = 	getEl('parknaam');
//	var urlinfo = 	getEl('urlinfo');
//	alert(getEl('parknaamVal').value);
//	getEl('boxtitle').innerHTML = getEl('parknaamVal').value;
		/*
	if (lastMinutes[0]['begindatum'] == undefined)
	{
		parknaam.innerHTML = ''; //'<hr style="height:1px; color:#FDA601;">';	
	} else {
		parknaam.innerHTML = '';	
	}

	parknaam.innerHTML += '<div id="parknaam">'+ getEl('parknaamVal').value+'</div>';

	parknaam.innerHTML += '<br>';
	var url =  getEl('urlinfoVal').value + affiliateurl; // Nieuw, voeg affiliate ID toe!
	urlinfo.innerHTML = '<a href="'+url+'" target="_blank">Meer informatie</a>';
	parknaam.style.display		 = 'block';
	urlinfo.style.display		 = 'block';*/
} 

function lastMinuteNext(pos)
{
	gotoLastminute(pos);
}

function lastMinutePrev(pos)
{
	gotoLastminute(pos);
}

function refreshcurrentPage()
{
	if (inDebug) {
		alert("refreshcurrentPage");
	}
	
	//var startpage = (currentPage);
	gotoLastminute(currentPage + 10);
}


function prevNextLinks(start, stop, len)
{
	if (inDebug) {
		alert("prevNextLinks");
	}
	
	var html = "";
	if (stop >= maxLastminutes)
	{
	
		var pages = Math.ceil(len / maxLastminutes)
		var showprevdots = false;
		var shownextdots = true;
		var startpage = (start / maxLastminutes)

		if (startpage > (maxShowPages / 2))
		{
			showprevdots = true;
		}

		if (startpage  >= pages - (maxShowPages / 2))
		{
			shownextdots = false;
		}

		
		if (pages <= maxShowPages)
		{
			startpage = 0;
			shownextdots = false;
			showprevdots = false;
		}
		

		html = "<span id='pagenumbers'>";
		if (start > 0)
		{
			if (start > 0)
			{
				pos = start - maxLastminutes;
			} else {
				pos = 0;
			}
			html += "<a id='pageprev' href='' onClick='javascript:lastMinuteNext("+pos+"); return false;'><<</a> ";
			
			if (showprevdots)
			{
				html += " ... ";
			}

		} else {
			html += "";
		}


		if (pages > 1)
		{
			var loopstart =  Math.ceil(startpage - (maxShowPages / 2));
			if (loopstart < 0) loopstart = 0;
			
			var loopend =  Math.ceil(loopstart + (maxShowPages - loopstart));
			if (loopstart > 0)
			{
				loopend =  Math.ceil(loopstart + (maxShowPages));
			}
			if (loopend > pages) loopend = pages;

			for (i = loopstart; i < loopend; i++)
			{ 
				pos = i * maxLastminutes;
				if (pos == start)
				{
				  html += "<span id='pagecurrent'>" + (i+1) + "</span> ";

				} else {
				
				  html += "<a onClick='javascript:lastMinuteNext("+pos+"); return false;'>"+(i+1)+"</a> ";

				}
			}
		}
			
		if (stop < len)
		{
			if (shownextdots)
			{
				html += " ... ";
			}

			html += "<a id='pagenext' href='' onClick='javascript:lastMinuteNext("+stop+"); return false;'>>></a> ";

	

		}
	
	}

	html += "</span>";
	
	
	return html;
}


function gotoLastminute(start)
{
	if (inDebug) {
		alert("gotoLastminute");
	}
	
	if (lastMinutes[0] == undefined)
	{
		return;
	}

	currentPage = start;

	var lastminute_objecten = getEl('lastminute_objecten');
	
	if (lastMinutes[0]['begindatum'] != undefined && lastMinutes[0]['minute'] == 'true')
	{
		objectType = "lastminute(s)";  
	} else {
		objectType = "object(en)";  
	}

	if (islastminutes == true)
	{
		selectlastminute();
	}

	lastminute_objecten.innerHTML = '<div id="gevondenobjecten">'+lastMinutes.length+' '+objectType+' gevonden:</div>';
	if (start+maxLastminutes > lastMinutes.length)
	{
		len = lastMinutes.length;
	} else {
		len = maxLastminutes+start; 
	}

	if (lastMinutes.length > maxLastminutes)
	{
		lastminute_objecten.innerHTML += '<div id="paginering">Item ' + (start+1)+' t/m '+len+'</div>'; 
	}

	for (var i = start; i < len; i++)
	{

		if (((lastMinutes[i]['omschrijving'] != 'undefined') && (lastMinutes[i]['omschrijving'] != undefined)) || ((lastMinutes[i]['objectsoort'] != undefined) && (lastMinutes[i]['objectsoort'] != 'undefined')))
		{
			lastMinutes[i]['omschrijving'] = lastMinutes[i]['objectsoort'];

			if (lastMinutes[i]['begindatum'] != undefined && lastMinutes[0]['minute'] == 'true')
			{
				datumString = "<div class='datumstring'>" + lastMinutes[i]['begindatum'] + " t/m " + lastMinutes[i]['einddatum'] + "</div>";
			} else {
				datumString = "";	
			}
			
			var strclass = 'parkitem_nietbeschikbaar';
			
			/*for(thing in lastMinutes[i])
			{
				lastminute_objecten.innerHTML += thing + " => " + lastMinutes[i][thing] + "--\n";
			}*/
			
			if (lastMinutes[i]['beschikbaar'] == '1')
			{
				strclass = 'parkitem_beschikbaar';
			}
			if(lastMinutes[i]['vkbklant'] == '1')
  		{
  			strclass += "_vkb";
  		}
			
			//Override for lastminutes?
			if (islastminutes == true)
			{
				selectlastminute();

				strclass = 'lastminuteitem_nietbeschikbaar';
				if (lastMinutes[i]['beschikbaar'] == '1')
				{
					strclass = 'lastminuteitem_beschikbaar';
					if(lastMinutes[i]['vkbklant'] == '1')
					{
						strclass += "_vkb";
					}
				} 
			}


			var omschrijving = "<span class='omschrijving'>";
			if (lastMinutes[i]['omschrijving'].lastIndexOf('00') == lastMinutes[i]['omschrijving'].length-2)
			{
				var pos = lastMinutes[i]['omschrijving'].lastIndexOf(' ');
				omschrijving += lastMinutes[i]['omschrijving'].substring(0,pos);
				omschrijving += "</span>";

				totaleomschrijving = lastMinutes[i]['omschrijving'];
				var prijs = lastMinutes[i]['omschrijving'].substr(pos+1,lastMinutes[i]['omschrijving'].length);
				prijs = prijs.replace(".",",");
				prijs = prijs.replace(",00",",-");
				omschrijving += " &euro;&nbsp;" + prijs;

			} else {
				
				totaleomschrijving = lastMinutes[i]['omschrijving'];
				omschrijving += trimtext(lastMinutes[i]['omschrijving']);
				omschrijving += "</span>";
			}
			
			/*for(thing in lastMinutes[i])
			{
				lastminute_objecten.innerHTML += thing + " => " + lastMinutes[i][thing] + " || ";
			}*/
			
			lastminute_objecten.innerHTML += "<div title='" + totaleomschrijving + "' class='" + strclass + "' id='"+lastMinutes[i]['beschikbaar']+"parkitem_"+i+"' onMouseOver='javascript:changeToOver(this.id);' onMouseOut='changeToNormal(this.id);' onClick='javascript:lastminuteDetails("+i+");' >" +  (omschrijving) + datumString + "</div>";
		}
	}
	
	
	
	lastminute_objecten.innerHTML = '<div id="resultaten">' + lastminute_objecten.innerHTML + '</div>';

	
	if (getEl('bottom'))
	{
		getEl('bottom').innerHTML = prevNextLinks(start,len,lastMinutes.length);
	}
	lastminute_objecten.style.display		 = 'inline';
//	getEl('introtext').style.display		 = 'none';

}

function trimtext(str)
{
	var length = str.length;
	var txt = str;

	//Do we have to cut the text?

	if (length > 30)
	{
		for (var i = 35; i > 0 ; i-- )
		{
			var char = txt.charAt(i);
			if (char == ',' || char == ' ')
			{
				str = txt.substring(0, i);
				
				/// ... toevoegen:
				str += ' ...';
				return str;
			}

		}
	
	}

	return str;
	
}


function lastminuteDetails(i)
{

	if (inDebug) {
		alert("lastminuteDetails");
	}

	if (inDebug) {
		alert("lastminuteDetails");
	}
	
	var objectsoort			= getEl('objectsoort');
	var urlinfoVal			= getEl('urlinfoVal');
	var urllminfo			= getEl('urllminfo');
	var websiteURL			= getEl('websiteURL');
	var urlprijsopgave		= getEl('urlprijsopgave');
	var datum				= getEl('datum');
	var terug				= getEl('terug');
	var urlboeken			= getEl('urlboeken');
	var lastminute_objecten = getEl('lastminute_objecten');
	var pagenumbers			= getEl('pagenumbers');
	var moreInfo 			= getEl('moreInfo');
	
	objectsoort.innerHTML = lastMinutes[i]['objectsoort'];
	
	if (urlinfoVal.value != lastMinutes[i]['urlinfo'])
	{
		urllminfo.innerHTML = '<a href="'+lastMinutes[i]['urlinfo']+'" target="_blank">Meer informatie</a>';
		urllminfo.style.display		 = 'block';
	}

	urlprijsopgave.innerHTML = '<a href="javascript:startPrijsOpg('+i+');">Prijsopgave</a>';
	websiteURL.innerHTML = '<a href="'+urlinfoVal.value+'" target="_blank">Ga naar website park</a>';
	websiteURL.style.display = 'block';
	
	//alert(lastMinutes[i]['vkbklant'] + " => " + lastMinutes[i]['begindatum']);
	
	if (lastMinutes[i]['begindatum'] != undefined && lastMinutes[0]['minute'] == 'true')
	{
		datum.innerHTML = lastMinutes[i]['begindatum']+' t/m '+lastMinutes[i]['einddatum'];
		datum.style.display	 		 = 'block';	
	}
	
	if(lastMinutes[i]['begindatum'] != undefined && (lastMinutes[0]['minute'] == 'false' || lastMinutes[0]['minute'] == undefined))
	{
		// If hotelbon (afilliate2_id 2037) the show different text
		if (affiliate == 2037)
		{
		  moreInfo.innerHTML = "<br />Met uw hotelbonjaarkaart krijgt u, wanneer uw boeking volledig in de periode <b>"+ lastMinutes[i]['begindatum']+" t/m " + lastMinutes[i]['einddatum'] +"</b> valt, 25% korting. Buiten deze periode ontvangt u geen korting.\n";
		  moreInfo.style.display = 'block';
		}
		else
		{
		  moreInfo.innerHTML = "<br />De kortingsbon is geldig van<br />\n";
		  moreInfo.innerHTML += "<b>" + lastMinutes[i]['begindatum']+' t/m '+lastMinutes[i]['einddatum'] + "</b>";
		  moreInfo.style.display = 'block';
		}
	}

	//alert(lastMinutes[i]['begindatum'] + ", " + lastMinutes[0]['minute']);
	
	urlboeken.innerHTML			 = '<a href="javascript:startRes('+i+');">Direct boeken</a>';
	terug.innerHTML				 = "<div class='btnterug' onClick=\"hideLastMinuteDetails(); getEl('lastminute_objecten').style.display ='block'\" onMouseOver='this.style.cursor=\"pointer\";'>Terug</div>";
	terug.style.display			 ='block';
	objectsoort.style.display	 = 'block';
	urlprijsopgave.style.display = 'block';
	urlboeken.style.display		 = 'block';
	lastminute_objecten.style.display = 'none';
	pagenumbers.style.display = 'none';
	
	if (getEl('pagenumbers'))
	{
		getEl('pagenumbers').style.display = 'none';
	}

}

function hideLastMinuteDetails()
{
	if (inDebug) {
		alert("hideLastMinuteDetails");
	}

	
	//Verberg de last minute details...
	getEl('lastminute_objecten').style.display='block';
	getEl('terug').style.display='none';
	getEl('objectsoort').style.display='none';
	getEl('urlboeken').style.display='none'; 
	getEl('urlprijsopgave').style.display='none';
	getEl('websiteURL').style.display='none';
	getEl('datum').style.display='none';
	getEl('moreInfo').style.display='none';
//	getEl('introtext').style.display		 = 'block';

	if (getEl('pagenumbers'))
	{
		getEl('pagenumbers').style.display = 'block';
	}
}

function changeToOver(target)
{
	document.getElementById(target).style.cursor="pointer";
}

function changeToNormal(target)
{

}




function checkElements()
{
	
	if (inDebug) {
		alert("checkElements");
	}
	
	var aankomst = new Date();
	var today = new Date();
	
	
	var aankomstJaar = getEl('aankomstJaar');
	var aankomstDag = getEl('aankomstDag');
	var aankomstMaand = getEl('aankomstMaand');

	var mnd = (aankomstMaand.value)-1;

	var vertrekJaar = getEl('vertrekJaar');
	var vertrekDag = getEl('vertrekDag');
	var vertrekMaand = getEl('vertrekMaand');


	aankomst.setFullYear(aankomstJaar.value,mnd,aankomstDag.value);
	aankomstJaar.selectedIndex = Math.min(Math.max((aankomst.getFullYear() - today.getFullYear()),0),1);
	aankomstMaand.selectedIndex = aankomst.getMonth()+1;
	aankomstDag.selectedIndex = aankomst.getDate();

	var vertrek = new Date();
	mnd = (vertrekMaand.value)-1;
	vertrek.setFullYear(vertrekJaar.value,mnd,vertrekDag.value);
	vertrekJaar.selectedIndex = Math.min(Math.max((vertrek.getFullYear() - today.getFullYear()),0),1);
	vertrekMaand.selectedIndex = vertrek.getMonth()+1;
	vertrekDag.selectedIndex = vertrek.getDate();
	if (aankomst<today)
	{
		aankomstJaar.selectedIndex = (today.getFullYear() - today.getFullYear());
		aankomstMaand.selectedIndex = today.getMonth()+1;
		aankomstDag.selectedIndex = today.getDate();
	}

	var temp = new Date();
	temp.setFullYear(aankomst.getFullYear(),aankomst.getMonth(), aankomst.getDate()+1);
	if (vertrek<temp)
	{
		vertrekJaar.selectedIndex = Math.min(Math.max((temp.getFullYear() - today.getFullYear()),0),1);
		vertrekMaand.selectedIndex = temp.getMonth()+1;
		vertrekDag.selectedIndex = temp.getDate();
	}
}

function days_between(date1, date2)
{
	var ONE_DAY = 1000 * 60 * 60 * 24;
	var date1_ms = date1.getTime();
	var date2_ms = date2.getTime();
	var difference_ms = Math.abs(date1_ms - date2_ms);
	return Math.round(difference_ms/ONE_DAY);
}

function getCampingKaartHTML(stDate, numDays)
{
	
	if (inDebug) {
		alert("getCampingKaartHTML");
	}
	
	var flashvars = "startDate="+stDate+"&numDays="+numDays+"&geladenKaart="+planDatum.zoekIn.value+"&lastMinute="+lastMinute+"&vkbKlant="+vkbKlant+"&eigenPlek="+eigenPlek+"&hoofdgroep="+hoofdgroep;
	result = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="450" height="450" id="kaart">';
	result += '<param name="movie" value="campingKaart5.swf">';
	result += '<param name="quality" value="high">';
	result += '<param name="wmode" value="transparent">';
	result += '<param name="flashvars" value="'+flashvars+'">';
	result += '<embed src="campingKaart5.swf" flashvars='+flashvars+' quality="high" swliveconnect="true" name="kaart"  pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="450" height="450"></embed></object>';
	return result;
}

function getfilter(vkbsection, eigenpleksection)
{
	var filterobj = getEl('zoekin');
	if (!filterobj) return;	//No object, return.

	var index = filterobj.options[filterobj.selectedIndex].value;
	
	/*
	Bepaal filter.
	0 = geen
	1 = 25% korting
	2 = kies uw eigen plek
	3 = last minute
	*/

	//Reset eerst alles:
	//lastMinute	= 0;
	//vkbKlant	= 0;
	//eigenPlek	= 0;
	
	if(vkbsection == 1)
	{
	 	vkbKlant = 1;
		eigenPlek = 0;
		lastMinute = 0;
	}
	else if(eigenpleksection == '1')
	{
	  lastMinute = 0;
		vkbKlant = 0;
		eigenPlek = 1;
	}
	else if (index == 0)
	{
		vkbKlant = 0;
		eigenPlek = 0;
		lastMinute = 0;
	}
	else if (index == 1)
	{
		vkbKlant = 1;
		eigenPlek = 0;
		lastMinute = 0;
	}
	else if (index == 2) 
	{
		eigenPlek = 1;
		vkbKlant = 0;
		lastMinute = 0;
	}
	else if (index == 3)
	{
		lastMinute = 1;
		vkbKlant = 0;
		eigenPlek = 0;
	}

}


function verstuurData(vkbsection, eigenpleksection)
{
	if (inDebug) {
		alert("verstuurData");
	}
	
	var aankomstJaar = getEl('aankomstJaar');
	var aankomstDag = getEl('aankomstDag');
	var aankomstMaand = getEl('aankomstMaand');

	var vertrekJaar = getEl('vertrekJaar');
	var vertrekDag = getEl('vertrekDag');
	var vertrekMaand = getEl('vertrekMaand');

	var aankomst = new Date();
	aankomst.setFullYear(aankomstJaar.value,aankomstMaand.value,aankomstDag.value)
	
	var vertrek = new Date();
	vertrek.setFullYear(vertrekJaar.value,vertrekMaand.value,vertrekDag.value)
	
	//Update filter keuze:
	getfilter(vkbsection, eigenpleksection);

	var dif = days_between(aankomst,vertrek);
	var maand = aankomstMaand.value;
	var stDate = aankomstDag.value + "-"+ maand+"-" + aankomstJaar.value;
	if (!xMac)
	{
		SendDataToFlashMovie(stDate,dif)
	}
	else
	{
		var campingKaart = xGetElementById("campingKaart");
		if (campingKaart) campingKaart.innerHTML = getCampingKaartHTML(stDate, dif);
	}

	//hideoverlay();
}


function doResize()
{
	if (inDebug) {
		alert("doResize");
	}
	
	obj = document.getElementById("sizer");
	obj3 = document.getElementById("sizer2");
	calvis = false;
	obj2 = document.getElementById("calendar");
	if (obj2) if (obj2.style) calvis=(obj2.style.visibility=="hidden")?false:true;
	if (calvis==false) obj2.style.left=0;
	if (obj) if (parent) if (parent.resizeFrame) parent.resizeFrame(obj.offsetWidth+24+(calvis?140:0), Math.max(490,obj3.offsetHeight+40));
}


function changefilter(obj)
{
	if (inDebug) {
		alert("changefilter");
	}
	
	if(obj.options[obj.selectedIndex].text == "geen voorkeur")
		document.getElementById("boxtitle_right").innerHTML = "Direct boeken";
	else
		document.getElementById("boxtitle_right").innerHTML = "<span style=\"font-size: 10px;\">"+obj.options[obj.selectedIndex].text+"</span>";
	
	if (obj.options[obj.selectedIndex].value == '3')
	{
		//Verstuur meteen bij 'last minute'
		getEl('dateselect').style.display = 'none';
		
		hideLastMinuteDetails();	
		hideoverlay();

		verstuurData();
	} 
	else 
	{
		getEl('dateselect').style.display = 'block';
		clearParkInfo();
		clearLastminuteInfo();

		hideoverlay();
		hideLastMinuteDetails();
	}

}

function changeVerblijfSoort(obj)
{
	hoofdgroep = getEl('verblijfsoort').value;
	verstuurData();
}

function selectlastminute()
{
	if (inDebug) {
		alert("selectlastminute");
	}
	
	getEl('zoekin').selectedIndex = 1;

	//Verstuur meteen bij 'last minute'
	getEl('dateselect').style.display = 'none';
	
	if (getEl('pagenumbers'))
	{
		getEl('pagenumbers').style.visibility = 'hidden';
	}
}

function changeCountry()
{
	if (inDebug) {
		alert("changeCountry");
	}
	
	clearParkInfo();
	clearLastminuteInfo();

	//By een land wisseling verbergen we alles:
	hideoverlay();
	hideLastMinuteDetails();

}


function flashEvent(eventname, params)
{
	
	if (inDebug) {
		alert("flashEvent: eventname: "+eventname+" - params: "+params);
	}
	
	var intro = getEl('introcontent');
	var kiesland = getEl('kieslandtekst');
	var introkop = getEl('introkop');
	var landenLijst = getEl('landenLijst');
	//alert(eventname);
	switch (eventname)
	{
		case 'disableMenu':
			
			toggleInput(false);

			break;

		case 'enableMenu':
		
			toggleInput(true);
			toggleInputVisibility('visible');

			break;

		case 'inCountry':
			
			//getEl('zoekin').style.visibility = 'visible';

			//intro.style.display = 'block';
			if (kiesland)
			{
				kiesland.style.display = 'none';
				landenLijst.style.display = 'none';
			}
			
			if (intro)
			{
				intro.innerHTML = ''; //Zoom uit om een ander land te kiezen';
			}
			
			
			if (introkop) introkop.innerHTML = 'Maak uw keuze';
			
			toggleInputVisibility('visible');

			break;

		case 'outCountry':

			//intro.style.display = 'none';
			if (kiesland)
			{
				kiesland.style.display = 'block';
				landenLijst.style.display = 'block';
			}

	
			toggleInput(false);
			toggleInputVisibility('hidden');

			if (introkop) introkop.innerHTML = 'Landkaart';
			
			
			break;


	}

}

function toggleInput(toggle)
{

	//Invert:
	toggle = !toggle;

	getEl('verblijfsoort').disabled = toggle;
	getEl('zoekin').disabled = toggle;
	getEl('aankomstDag').disabled = toggle;
	getEl('aankomstMaand').disabled = toggle;
	getEl('aankomstJaar').disabled = toggle;
	getEl('vertrekDag').disabled = toggle;
	getEl('vertrekMaand').disabled = toggle;
	getEl('vertrekJaar').disabled = toggle;
	getEl('btnverstuur').disabled = toggle;
}


function toggleInputVisibility(toggle)
{
	getEl('verblijfkop').style.visibility = toggle;
	getEl('verblijfsoort').style.visibility = toggle;
	getEl('verblijfsoortDiv').style.visibility = toggle;
	getEl('zoekin').style.visibility = toggle;
	getEl('searchin').style.visibility = toggle;
	//getEl('dateselect').style.visibility = toggle;
	getEl('dateselect').style.display = ((toggle=='visible')?'block':'none');
	getEl('lastminute_objecten').style.visibility = toggle;
	if(getEl('pagenumbers'))
	{
		getEl('pagenumbers').style.display	= toggle;
	}
}

