var http=false;

// initiate an xmlhttp socket
function createXMLHTTPsocket()
{
// INIT XMLHTTP SOCKET
var xmlhttp=false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
// JScript gives us Conditional compilation, we can cope with old IE versions.
// and security blocked creation of the objects.
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E)
{
xmlhttp = false;
}
}
@end @*/
if (!xmlhttp && typeof XMLHttpRequest!='undefined')
{
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}

function ShowDealerInfo(field)
{
	var el;
	v = field.value;
	document.forms[0].dealer.value = v;
	if (v < 1)
	{
		el = element('dealerinfo');
		if (el) el.innerHTML = '';
		return;
	}

	el = element('submitdealer');
	if (el) el.style.display = 'block';

	if (!http)
		http = createXMLHTTPsocket();
	http.open('get', 'dealerinfo.php?id=' + v);
	http.onreadystatechange = dataHandleDealer;
	http.send(null);
}

function dataHandleDealer()
{
	if (http.readyState == 4)
	{
		var response = http.responseText;
		document.getElementById('dealerinfo').innerHTML = response;
	}
}



function test_form(f)
{
response = '';
adr = f.email.value;
gd = Number(f.gd.value); if (isNaN(gd)) gd = 0;
gm = Number(f.gm.value); if (isNaN(gm)) gm = 0;
gy = Number(f.gy.value); if (isNaN(gy)) gy = 0;
if (
(f.firstname.value=="") ||
(f.lastname.value=="") ||
(f.address.value=="") ||
(f.postcode.value=="") ||
(f.city.value=="") ||
(f.tel.value=="") ||
(f.gd.value=="") ||
(f.gm.value=="") ||
(f.gy.value=="") ||
(f.email.value=="") ||
(f.login.value=="") ||
(f.pass1.value=="") ||
(f.pass2.value=="")
)
{
	response = '<li>Nog niet alle velden zijn ingevuld.';
	if (f.pass2.value=="") f.pass2.focus();
	if (f.pass1.value=="") f.pass1.focus();
	if (f.login.value=="") f.login.focus();
	if (f.email.value=="") f.email.focus();
	if (f.gy.value=="") f.gy.focus();
	if (f.gm.value=="") f.gm.focus();
	if (f.gd.value=="") f.gd.focus();
	if (f.tel.value=="") f.tel.focus();
	if (f.city.value=="") f.city.focus();
	if (f.postcode.value=="") f.postcode.focus();
	if (f.address.value=="") f.address.focus();
	if (f.lastname.value=="") f.lastname.focus();
	if (f.firstname.value=="") f.firstname.focus();
}
else if (gd < 1 || gd > 31 || gm < 1 || gm > 12 || gy < 1900)
{
	if (gy < 1900)
	{
		response = "<li>Het geboortejaar is nog niet juist.";
	}
	else
	{
		response = "<li>De geboortedatum is nog niet juist.";
	}
	if (gm < 1 || gm > 12) f.gm.focus();
	if (gd < 1 || gd > 31) f.gd.focus();
	if (gy < 1900) f.gy.focus();
}
else if (!f.gender[0].checked && !f.gender[1].checked)
{
	response = "<li>Kies a.u.b. uw geslacht.";
}
else if (adr.length < 6) // minstens a@d.xx
{
	response = "<li>Vult u a.u.b. een geldig e-mail adres in.";
	f.email.focus();
}
else if (adr.indexOf("@")==-1) // moet @ in staan
{
	response = "<li>Het e-mail adres bevat geen @.";
	f.email.focus();
}
else if (adr.indexOf("@")==0) // @ staat vooraan
{
	response = "<li>Het e-mail adres bevat geen naam.";
	f.email.focus();
}
else if (adr.indexOf(".", adr.indexOf("@")+2) == -1)
{
	response = "<li>Het e-mail adres heeft geen domeinnaam.";
	f.email.focus();
}
else if (f.pass1.value != f.pass2.value)
{
	response = "<li>De wachtwoorden zijn niet hetzelfde.";
	f.pass1.focus();
}
if (response != '')
{
	response = 'Helaas kunnen uw gegevens nog niet verwerkt worden:<br><ul>' + response + '</ul>';
	var el = document.getElementById('forminfo');
	if (el)
	{
		el.innerHTML = response;
		el.style.display = (response.length > 0 ? 'block' : 'none');
		el.style.border = '2px solid #ff3020';
		//el.style.backgroundColor = '#ff3020';
	}
}
else
{
	serversidecheck(f);
}
return false;
}

function serversidecheck(f)
{
	var el = document.getElementById('forminfo');
	if (el)
	{
		el.innerHTML = 'Gegevens worden gecontroleerd...';
		el.style.display = 'block';
		el.style.border = '0px';
	}
	if (!http)
		http = createXMLHTTPsocket();
	http.open('post', 'order_checkdata.php');
	http.onreadystatechange = dataHandle;
	http.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	var s = "firstname=" + f.firstname.value;
	s += "&lastname=" + f.lastname.value;
	s += "&address=" + f.address.value;
	s += "&postcode=" + f.postcode.value;
	s += "&city=" + f.city.value;
	s += "&tel=" + f.tel.value;
	if (f.gender[0].checked) s += "&gender=m";
	if (f.gender[1].checked) s += "&gender=v";
	s += "&birth=" + f.gd.value + '-' + f.gm.value + '-' + f.gy.value;
	s += "&email=" + f.email.value;
	s += "&login=" + f.login.value;
	http.send(s);
}

function dataHandle()
{
	if (http.readyState == 4)
	{
		var response = http.responseText;
		if (response.substr(0,2) == 'OK')
		{
			//document.getElementById('napform').style.display = 'none';
			//document.getElementById('napmessage').innerHTML = response.substr(2);
			//response = '';
			document.forms[0].submit();
		}
		else
		{
			var el = document.getElementById('forminfo');
			if (el)
			{
				el.innerHTML = response;
				el.style.display = (response.length > 0 ? 'block' : 'none');
				el.style.border = '2px solid #ff3020';
			}
		}
	}
}

function element(ID)
{
	if (document.getElementById)
		return document.getElementById(ID);
	else
		return document.all[ID];
}

function ShowDealers(regionid)
{
	for(id=1;id<=12;id++)
	{
		var el = element('dealer' + id);
		if (el)
		{
			if (id == regionid)
				el.style.display = 'inline';
			else
				el.style.display = 'none';
		}
	}
	document.forms[0].dealerprov.value = regionid;
}

function CheckPackage(id,package_id)
{
	var el;
	
	/*
	n = 0;
	el = element('submit' + n);
	while(el)
	{
		el.style.display = 'none';
		n++;
		el = element('submit' + n);
	}
	el = element('pakket' + id);
	if (el)
	{
		el.checked = true;
	}
	*/

	n = 0;
	el = element('pkeuze' + n);
	while(el)
	{
		el.style.backgroundColor = '#75aad1';
		n++;
		el = element('pkeuze' + n);
	}
	n = 0;
	el = element('pijl' + n);
	while(el)
	{
		el.style.display = 'none';
		n++;
		el = element('pijl' + n);
	}
	el = element('pkeuze' + id);
	if (el)
		el.style.backgroundColor = '#0b3e64'; //'#aad175';
	
	el = element('pijl' + id);
	if (el)
		el.style.display = 'block';

	el = element('submitpackage');
	if (el)
		el.style.display = 'block';

	document.forms[0].pakket.value = package_id;
}


function OpenPopup(url,w,h)
{
	var nw = window.open(url, '_blank', 'width='+w+',height='+h);
}

var hide_id = false;
function ShowInfo(id)
{
	if (id == hide_id) hide_id = false; // cancel unhighlight
	else HideInfoDelayed(); // else hide other element
	var el = element(id);
	if (el)
		el.style.display='block';
}

function HideInfo(id)
{
	hide_id = id;
	setTimeout(HideInfoDelayed, 200);
}

function HideInfoDelayed()
{
	if (hide_id)
	{
		var el = element(hide_id);
		if (el) el.style.display='none';
	}
	hide_id = false;
}

var hl_el = false;

function OverMap(hl)
{
 	if (hl_el != hl)
	 	OutMap();
	
	var el = element(hl);
	if (el)
	{
		el.style.zIndex=2;
		hl_el = el;
	}
}
function OutMap()
{
	if (hl_el) hl_el.style.zIndex = -1;
	hl_el = false;
}


