function updateBilling(curID) {
	var theID = document.getElementById(curID);
	
	if(theID.checked)
	{
		document.getElementById('f_address').value = document.getElementById('address').value;
		document.getElementById('f_address_nr').value = document.getElementById('address_nr').value;
		document.getElementById('f_address_add').value = document.getElementById('address_add').value;
		document.getElementById('f_zipcode').value = document.getElementById('zipcode').value;
		document.getElementById('f_zipcode_nr').value = document.getElementById('zipcode_nr').value;
		document.getElementById('f_city').value = document.getElementById('city').value;
	}
	else
	{
		document.getElementById('f_address').value = "";
		document.getElementById('f_address_nr').value = "";
		document.getElementById('f_address_add').value = "";
		document.getElementById('f_zipcode').value = "";
		document.getElementById('f_zipcode_nr').value = "";
		document.getElementById('f_city').value = "";
	}
}

function findPosY(obj)                          
{                                               
	var curtop = 0;                                 
	if(obj.offsetParent)                           
	{                                       
			while(obj.offsetParent)        
			{                                       
					curtop += obj.offsetTop         
					obj = obj.offsetParent;                 
			}                                               
	}                                                       
	else if (obj.y)                                         
			curtop += obj.y;                        
	return curtop;                                  
}

function MoveHelp(TargBox) {
	var marginPlus;
	Pos = findPosY(document.getElementById(TargBox)) - findPosY(document.getElementById('content'));
	
	if(navigator.appName == "Microsoft Internet Explorer")
	{
				if(document.getElementById("invoiceOverview").offsetHeight > 62)
				{
					marginPlus = -(document.getElementById("invoiceOverview").offsetHeight - 10);
				}
				else
				{
					marginPlus = 23;
				}
	}
	else
	{
		if(document.getElementById("invoiceOverview").offsetHeight > 0)
		{
			marginPlus = -(document.getElementById("invoiceOverview").offsetHeight - 8);
		}
		else
		{
			marginPlus = 13;
		}
		
		/*marginPlus = (document.getElementById("invoiceOverview").offsetHeight == 0) ? 13 : 8;*/
	}
	
	hlpBox.style['marginTop'] = Pos + marginPlus + "px";
}

var hlp = new Object();
hlp['companyname'] = new Array("companyDetail", "<h2>Naam bedrijf</h2><p>Vul hier de naam van het bedrijf in.</p>");
hlp['address'] = new Array("companyDetail", "<h2>Adres</h2><p>Vul hier uw straatnaam in.</p>");
hlp['address_nr'] = new Array("companyDetail", "<h2>Adres</h2><p>Vul hier uw huisnummer in.</p>");
hlp['address_add'] = new Array("companyDetail", "<h2>Adres</h2><p>Vul hier uw huisnummer toevoegingen in.</p>");
hlp['zipcode'] = new Array("companyDetail", "<h2>Postcode</h2><p>Vul hier de cijfers van uw postcode in.</p><p class=\"small\">bv. 1111</p>");
hlp['zipcode_nr'] = new Array("companyDetail", "<h2>Postcode</h2><p>Vul hier de letters van uw postcode in.</p><p class=\"small\">bv. AA</p>");
hlp['city'] = new Array("companyDetail", "<h2>Plaats</h2><p>Vul hier uw plaats in.</p>");
hlp['regnr'] = new Array("companyDetail", "<h2>KVK nummer</h2><p>Vul hier uw KVK nummer in.</p><p class=\"small\">Uw KVK nummer moet numeriek zijn.</p>");

hlp['sameAddress'] = new Array("billingDetail", "<h2>Facturatiegegevens</h2><p>Facturatiegegevens zijn hetzelfde als bedrijfsgegevens.</p>");
hlp['f_address'] = new Array("billingDetail", "<h2>Adres</h2><p>Vul hier uw straatnaam in.</p>");
hlp['f_address_nr'] = new Array("billingDetail", "<h2>Adres</h2><p>Vul hier uw huisnummer in.</p>");
hlp['f_address_add'] = new Array("billingDetail", "<h2>Adres</h2><p>Vul hier uw huisnummer toevoegingen in.</p>");
hlp['f_zipcode'] = new Array("billingDetail", "<h2>Postcode</h2><p>Vul hier de cijfers van uw postcode in.</p><p class=\"small\">bv. 1111</p>");
hlp['f_zipcode_nr'] = new Array("billingDetail", "<h2>Postcode</h2><p>Vul hier de letters van uw postcode in.</p><p class=\"small\">bv. AA</p>");
hlp['f_city'] = new Array("billingDetail", "<h2>Plaats</h2><p>Vul hier uw plaats in.</p>");
hlp['f_postbus'] = new Array("billingDetail", "<h2>Postbus</h2><p>Vul hier uw postbus in.</p><p>U kunt dit veld leeg laten als u geen postbus hebt.</p>");

hlp['p_sex'] = new Array("personalDetail", "<h2>Geslacht</h2><p>Selecteer man of vrouw.</p>");
hlp['p_firstname'] = new Array("personalDetail", "<h2>Voornaam</h2><p>Vul hier uw voornaam in.</p>");
hlp['p_insertion'] = new Array("personalDetail", "<h2>Tussenvoegsel(s)</h2><p>Vul hier uw tussenvoegsels in.</p>");
hlp['p_lastname'] = new Array("personalDetail", "<h2>Achternaam</h2><p>Vul hier uw achternaam in.</p>");
hlp['p_phonenr'] = new Array("personalDetail", "<h2>Telefoonnummer</h2><p>Vul hier uw telefoonnummer in.</p><p class=\"small\">Het telefoonnummer moet numeriek zijn en uit 10 cijfers bestaan.<br />bv. 0123456789</p>");
hlp['p_email'] = new Array("personalDetail", "<h2>E-mailadres</h2><p>Vul hier uw e-mailadres in.</p>");
hlp['p_oldpassword'] = new Array("personalDetail", "<h2>Oud wachtwoord</h2><p>Vul hier uw oude wachtwoord in.</p>");
hlp['p_password'] = new Array("personalDetail", "<h2>Wachtwoord</h2><p>Vul hier uw wachtwoord in.</p>");
hlp['p_password2'] = new Array("personalDetail", "<h2>Herhaal wachtwoord</h2><p>Herhaal uw wachtwoord.</p>");
hlp['knowus'] = new Array("personalDetail", "<h2>Hoe kent u ons?</h2><p>Selecteer hier hoe u ons kent.</p>");
hlp['p_generalTerms'] = new Array("personalDetail", "<h2>Voorwaarden</h2><p>U dient eerst akkoord te gaan met de algemene voorwaarden.</p>");

hlp['oldpassword'] = new Array("lostpassDetail", "<h2>Oud wachtwoord</h2><p>Vul hier uw oude wachtwoord in.</p>");
hlp['password'] = new Array("lostpassDetail", "<h2>Nieuw wachtwoord</h2><p>Vul hier uw nieuwe wachtwoord in.</p>");
hlp['password2'] = new Array("lostpassDetail", "<h2>Herhaal wachtwoord</h2><p>Herhaal uw wachtwoord.</p>");

hlp['login_email'] = new Array("loginDetails", "<h2>E-mailadres</h2><p>Vul hier uw e-mailadres in.</p>");
hlp['login_password_main'] = new Array("loginDetails", "<h2>Wachtwoord</h2><p>Vul hier uw wachtwoord in.</p>");

hlp['employee_sex'] = new Array("employeeCard", "<h2>Geslacht</h2><p>Selecteer man of vrouw.</p>");
hlp['employee_initials'] = new Array("employeeCard", "<h2>Initialen</h2><p>Vul hier de initialen van uw werknemer in.</p>");
hlp['employee_insertion'] = new Array("employeeCard", "<h2>Tussenvoegsel(s)</h2><p>Vul hier de tussenvoegsel(s) van uw werknemer in.</p>");
hlp['employee_lastname'] = new Array("employeeCard", "<h2>Achternaam</h2><p>Vul hier de achternaam van uw werknemer in.</p>");
hlp['employee_address'] = new Array("employeeCard", "<h2>Adres</h2><p>Vul hier de straatnaam van uw werknemer in.</p><p class=\"small\">Dit adres wordt gebruikt om de Utrecht Bereikbaar pas naar toe te sturen.</p>");
hlp['employee_address_nr'] = new Array("employeeCard", "<h2>Adres</h2><p>Vul hier het huisnummer van uw werknemer in.</p><p class=\"small\">Dit adres wordt gebruikt om de Utrecht Bereikbaar pas naar toe te sturen.</p>");
hlp['employee_address_add'] = new Array("employeeCard", "<h2>Adres</h2><p>Vul hier de huisnummer toevoegingen van uw werknemer in.</p><p class=\"small\">Dit adres wordt gebruikt om de Utrecht Bereikbaar pas naar toe te sturen.</p>");
hlp['employee_zipcode'] = new Array("employeeCard", "<h2>Postcode</h2><p>Vul hier de cijfers van de postcode van uw werknemer in.</p><p class=\"small\">bv. 1111</p><p class=\"small\">Dit adres wordt gebruikt om de Utrecht Bereikbaar pas naar toe te sturen.</p>");
hlp['employee_zipcode_nr'] = new Array("employeeCard", "<h2>Postcode</h2><p>Vul hier de letters van de postcode van uw werknemer in.</p><p class=\"small\">bv. AA</p><p class=\"small\">Dit adres wordt gebruikt om de Utrecht Bereikbaar pas naar toe te sturen.</p>");
hlp['employee_city'] = new Array("employeeCard", "<h2>Plaats</h2><p>Vul hier de plaats van uw werknemer in.</p><p class=\"small\">Dit adres wordt gebruikt om de Utrecht Bereikbaar pas naar toe te sturen.</p>");
hlp['employee_email'] = new Array("employeeCard", "<h2>E-mailadres</h2><p>Vul hier het e-mailadres van uw werknemer in.</p>");
hlp['employee_phonenr'] = new Array("employeeCard", "<h2>Telefoonnummer</h2><p>Vul hier het telefoonnummer van uw werknemer in.</p><p class=\"small\">Het telefoonnummer moet numeriek zijn en uit 10 cijfers bestaan.<br />bv. 0123456789</p>");
hlp['employee_birthday'] = new Array("employeeCard", "<h2>Geboortedatum</h2><p>Vul hier de geboortedatum van uw werknemer in.</p><p class=\"small\">bv. 01-01-2000</p>");
hlp['employee_birthday_day'] = new Array("employeeCard", "<h2>Geboortedag</h2><p>Selecteer hier de geboortedag van uw werknemer.</p>");
hlp['employee_birthday_month'] = new Array("employeeCard", "<h2>Geboortemaand</h2><p>Selecteer hier de geboortemaand van uw werknemer.</p>");
hlp['employee_birthday_year'] = new Array("employeeCard", "<h2>Geboortejaar</h2><p>Selecteer hier het geboortejaar van uw werknemer.</p>");

hlp['lostpass_email'] = new Array("lostpassDetails", "<h2>E-mailadres</h2><p>Vul hier uw e-mailadres in.</p>");

hlp['amountEmployees'] = new Array("amountEmployees", "<h2>Aantal medewerkers</h2><p>Vul hier het totaal aantal medewerkers in.</p>");
hlp['amountMobileEmployees'] = new Array("amountEmployees", "<h2>Mobiele functie</h2><p>Vul hier het aantal medewerkers in met een mobiele functie.</p>");
hlp['amountOVEmployees'] = new Array("amountEmployees", "<h2>OV abonnement</h2><p>Vul hier het aantal medewerkers in dat al in het bezit is van een OV abonnement.</p>");
hlp['start'] = new Array("amountEmployees", "<h2>Startdatum pas</h2><p>Selecteer hier uw startdatum</p>");
hlp['end'] = new Array("amountEmployees", "<h2>Einddatum pas</h2><p>Selecteer hier uw einddatum</p>");

hlp['sex'] = new Array("dailypassDetail", "<h2>Geslacht</h2><p>Selecteer man of vrouw.</p>");
hlp['firstname'] = new Array("dailypassDetail", "<h2>Voornaam</h2><p>Vul hier uw voornaam in.</p>");
hlp['insertion'] = new Array("dailypassDetail", "<h2>Tussenvoegsel(s)</h2><p>Vul hier uw tussenvoegsels in.</p>");
hlp['lastname'] = new Array("dailypassDetail", "<h2>Achternaam</h2><p>Vul hier uw achternaam in.</p>");
hlp['email'] = new Array("dailypassDetail", "<h2>E-mailadres</h2><p>Vul hier uw e-mailadres in.</p>");
hlp['birthday'] = new Array("dailypassDetail", "<h2>Geboortedatum</h2><p>Vul hier uw geboortedatum in.</p><p class=\"small\">bv. 01-01-2000</p>");
hlp['datepicker'] = new Array("dailypassDetail", "<h2>Geldigheidsdatum</h2><p>Selecteer hier uw geldigheidsdatum</p><p class=\"small\">bv. 01-01-2000</p>");

hlp['login_password'] = new Array("eventLogin", "<h2>Wachtwoord</h2><p>Vul hier uw wachtwoord in.</p>");

function showHelp(targ) {
	hlpBox = document.getElementById('helpBox');
	hlpTxt = document.getElementById('helpText');
    
	hlpBox.style.display = '';
	
	hlpDef = hlp[targ];
	
	MoveHelp(hlpDef[0]);
	hlpTxt.innerHTML = hlpDef[1];
}

// OPEN WINDOW //
	function popup(url, name, specs, replace)
	{
		window.open(url, name, specs, replace);
	}
// END OPEN WINDOW //

// OVERLAY BOX //
	function overlayBox(content, bWidth) {
		var overlay = document.getElementById("overlay");
		var overlayBox = document.getElementById("overlayBox");
		var screenWidth = screen.width;
		
		overlay.style.display = 'block';
		overlay.style.height = getPageSize('height');
		overlay.style.width = getPageSize('width');
		
		overlayBox.innerHTML = content;
		overlayBox.style.display = 'block';
		overlayBox.style.width = bWidth+'px';
		overlayBox.style.left = Math.round((screenWidth / 2) - (bWidth / 2))+'px';
	}
	
	function getPageSize(returnType) {
		var xScroll, yScroll;
		var windowWidth, windowHeight;
		
		if (window.innerHeight && window.scrollMaxY) {	
			xScroll = window.innerWidth + window.scrollMaxX;
			yScroll = window.innerHeight + window.scrollMaxY;
		} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}
		
		if (self.innerHeight) {	// all except Explorer
			if(document.documentElement.clientWidth){
				windowWidth = document.documentElement.clientWidth; 
			} else {
				windowWidth = self.innerWidth;
			}
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) { // other Explorers
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}

		if(yScroll < windowHeight){
			pageHeight = windowHeight;
		} else { 
			pageHeight = yScroll;
		}
		
		if(xScroll < windowWidth){	
			pageWidth = xScroll;		
		} else {
			pageWidth = windowWidth;
		}
		
		if(returnType == 'width')
		{
			return pageWidth+'px';
		}
		else
		{
			return pageHeight+'px';
		}	
	}
// END OVERLAY BOX //

// DATE PICKER //
	function show_calendar(str_target, str_datetime) {
		var arr_months = ["Januari", "Febriari", "Maart", "April", "Mei", "Juni",
			"Juli", "Augustus", "September", "Oktober", "November", "December"];
		var week_days = ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za"];
		var n_weekstart = 1; // day week starts from (normally 0 or 1)

		var dt_datetime = (str_datetime == null || str_datetime =="" ?  new Date() : str2dt(str_datetime));
		var dt_prev_month = new Date(dt_datetime);
		dt_prev_month.setMonth(dt_datetime.getMonth()-1);
		var dt_next_month = new Date(dt_datetime);
		dt_next_month.setMonth(dt_datetime.getMonth()+1);
		var dt_firstday = new Date(dt_datetime);
		dt_firstday.setDate(1);
		dt_firstday.setDate(1-(7+dt_firstday.getDay()-n_weekstart)%7);
		var dt_lastday = new Date(dt_next_month);
		dt_lastday.setDate(0);
		
		// html generation (feel free to tune it for your particular application)
		// print calendar header
		var str_buffer = new String (
			"<html>\n"+
			"<head>\n"+
			"	<title>Calendar</title>\n"+
			"</head>\n"+
			"<body bgcolor=\"White\">\n"+
			"<table class=\"clsOTable\" cellspacing=\"0\" border=\"0\" width=\"100%\">\n"+
			"<tr><td bgcolor=\"#4682B4\">\n"+
			"<table cellspacing=\"1\" cellpadding=\"3\" border=\"0\" width=\"100%\">\n"+
			"<tr>\n	<td bgcolor=\"#4682B4\"><a href=\"javascript:window.opener.show_calendar('"+
			str_target+"', '"+ dt2dtstr(dt_prev_month)+"'+document.cal.time.value);\">"+
			"<img src=\"prev.gif\" width=\"16\" height=\"16\" border=\"0\""+
			" alt=\"previous month\"></a></td>\n"+
			"	<td bgcolor=\"#4682B4\" colspan=\"5\">"+
			"<font color=\"white\" face=\"tahoma, verdana\" size=\"2\">"
			+arr_months[dt_datetime.getMonth()]+" "+dt_datetime.getFullYear()+"</font></td>\n"+
			"	<td bgcolor=\"#4682B4\" align=\"right\"><a href=\"javascript:window.opener.show_calendar('"
			+str_target+"', '"+dt2dtstr(dt_next_month)+"'+document.cal.time.value);\">"+
			"<img src=\"next.gif\" width=\"16\" height=\"16\" border=\"0\""+
			" alt=\"next month\"></a></td>\n</tr>\n"
		);

		var dt_current_day = new Date(dt_firstday);
		// print weekdays titles
		str_buffer += "<tr>\n";
		for (var n=0; n<7; n++)
			str_buffer += "	<td bgcolor=\"#87CEFA\">"+
			"<font color=\"white\" face=\"tahoma, verdana\" size=\"2\">"+
			week_days[(n_weekstart+n)%7]+"</font></td>\n";
		// print calendar table
		str_buffer += "</tr>\n";
		while (dt_current_day.getMonth() == dt_datetime.getMonth() ||
			dt_current_day.getMonth() == dt_firstday.getMonth()) {
			// print row heder
			str_buffer += "<tr>\n";
			for (var n_current_wday=0; n_current_wday<7; n_current_wday++) {
					if (dt_current_day.getDate() == dt_datetime.getDate() &&
						dt_current_day.getMonth() == dt_datetime.getMonth())
						// print current date
						str_buffer += "	<td bgcolor=\"#FFB6C1\" align=\"right\">";
					else if (dt_current_day.getDay() == 0 || dt_current_day.getDay() == 6)
						// weekend days
						str_buffer += "	<td bgcolor=\"#DBEAF5\" align=\"right\">";
					else
						// print working days of current month
						str_buffer += "	<td bgcolor=\"white\" align=\"right\">";

					if (dt_current_day.getMonth() == dt_datetime.getMonth())
						// print days of current month
						str_buffer += "<a href=\"javascript:window.opener."+str_target+
						".value='"+dt2dtstr(dt_current_day)+"'; window.close();\">"+
						"<font color=\"black\" face=\"tahoma, verdana\" size=\"2\">";
					else 
						// print days of other months
						str_buffer += "<a href=\"javascript:window.opener."+str_target+
						".value='"+dt2dtstr(dt_current_day)+"'+document.cal.time.value; window.close();\">"+
						"<font color=\"gray\" face=\"tahoma, verdana\" size=\"2\">";
					str_buffer += dt_current_day.getDate()+"</font></a></td>\n";
					dt_current_day.setDate(dt_current_day.getDate()+1);
			}
			// print row footer
			str_buffer += "</tr>\n";
		}
		// print calendar footer
		str_buffer +=
			
			"</table>\n" +
			"</tr>\n</td>\n</table>\n" +
			"</body>\n" +
			"</html>\n";

		var vWinCal = window.open("", "Calendar", 
			"width=200,height=250,status=no,resizable=yes,top=200,left=200");
		vWinCal.opener = self;
		var calc_doc = vWinCal.document;
		calc_doc.write (str_buffer);
		calc_doc.close();
	}
	
	function str2dt (str_datetime) {
		var re_date = /^(\d+)\-(\d+)\-(\d+)$/;
		if (!re_date.exec(str_datetime))
			return alert("Invalid Datetime format: "+ str_datetime);
		return (new Date (RegExp.$3, RegExp.$2-1, RegExp.$1, RegExp.$4, RegExp.$5, RegExp.$6));
	}
	
	function dt2dtstr (dt_datetime) {
		return (new String (
				dt_datetime.getDate()+"-"+(dt_datetime.getMonth()+1)+"-"+dt_datetime.getFullYear()+" "));
	}
	
	function dt2tmstr (dt_datetime) {
		return (new String (
				dt_datetime.getHours()+":"+dt_datetime.getMinutes()+":"+dt_datetime.getSeconds()));
	}
// END DATE PICKER //
// BEGIN DIFFRENT REGISTER FIELD //
	function showDiffrent(currentSelection) {
		if(currentSelection == 'Anders') {
			document.getElementById("list-knowusdiffrent").style.display = '';
		}
	}
// END DIFFRENT REGISTER FIELD //
