function cmsvenster(theURL,winName,features) {
  window.open(theURL,winName,features);
}


function parseDec(val,places,sep) {

	// This function takes two arguments:
	//   (string || number)  val
	//            (integer)  places
	//             (string)  sep
	// val is the numeric string or number to parse
	// places represents the number of decimal
	// places to return at the end of the parse.
	// sep is an optional string to be used to separate
	// the whole units from the decimal units (default: '.')

	val = '' + val;
		// Implicitly cast val to (string)
	
	if (!sep) {
		sep = '.';
		// If separator isn't specified, then use a decimal point '.'
	}
	
	if (!places) { places = 0; }
	places = parseInt(places);
		// Make sure places is an integer
	
	if (!parseInt(val)) {
		// If val is null, zero, NaN, or not specified, then
		// assume val to be zero.  Add 'places' number of zeros after
		// the separator 'sep', and then return the value.  We're done here.
		val = '0';
		if (places > 0) {
			val += sep;
			while (val.substring((val.indexOf(sep))).length <= places) {
				val += '0';
			}
		}
		return val;
	}
	
	if ((val.indexOf('.') > -1) && (sep != '.')) {
		val = val.substring(0,val.indexOf('.')) + sep + val.substring(val.indexOf('.')+1);
			// If we're using a separator other than '.' then convert now.
	}
		
	if (val.indexOf(sep) > -1) {
		// If our val has a separator, then cut our value
		// into pre and post 'decimal' based upon the separator.
		pre = val.substring(0,val.indexOf(sep));
		post = val.substring(val.indexOf(sep)+1);
	} else {
		// Otherwise pre gets everything and post gets nothing.
		pre = val;
		post = '';
	}
	
	if (places > 0) {
		// If we're dealing with a decimal then...
		
		post = post.substring(0,(places+1));
			// We care most about the digit after 'places'
		
		if (post.length > places) {
			// If we have trailing decimal places then...
			
			//alert (parseInt(post.substring(post.length - 1)));

			if ( parseInt(post.substring(post.length - 1)) > 4 ) {
				post = '' + Math.round(parseInt(post) / 10);
				//post = '' + post.substring(0,post.length - 2) + (1/Math.pow(10,places));
				//post = ('' + post.substring(0,post.length - 2)) + (parseInt(post.substring(post.length - 1)) + 1);
			} else {
				post = '' + Math.round(parseInt(post));
			}
		}
		
		if (post.length > places) {
			post = '' + Math.round(parseInt(post.substring(0,places)));
		} else if (post.length < places) {
			while (post.length < places) {
				post += '0';
			}
		}
	
	} else {

		if (parseInt((post.substring(0,1))) > 4) {
			pre = '' + (parseInt(pre) + 1);
		} else {
			pre = '' + (parseInt(pre));	
		}
		post = '';
	}
	
	sep = (post.length > 0) ? sep : '';
		// Should we use a separator?

	val = pre + sep + post;
		// Rebuild val

	return val;
}

function parseMoney(val,sep) {

	// Specialized version of parseDec useful for
	// parsing money-related data.  Arguments:
	//   (string || number)  val
	//             (string)  sep
	// val is the monetary value to be parsed,
	// sep is an optional decimal separator (default: '.')
	
	return parseDec(val,2,sep);
}

function sepToDec(val,sep) {

	val = '' + val;

	if ((val.indexOf(sep) > -1) && (sep != '.')) {
		val = val.substring(0,val.indexOf(sep)) + '.' + val.substring(val.indexOf(sep)+1);
	}
	
	return val;
}

function decToSep(val,sep) {

	val = '' + val;
	sep = '' + sep;

	if ((val.indexOf('.') > -1) && (sep.length > 0)) {
		val = val.substring(0,val.indexOf('.')) + sep + val.substring(val.indexOf('.')+1);
	}

	return val;
}


function showrestofvraagtypeformbackup() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.addform.type.options.length; i++) {
		var waarde = document.addform.type.options[i].value;
		if (waarde = "__TYPE__99__") {
			if (document.addform.type.options[i].selected) {
				togglelayer('formpart_'+waarde, 'block');
			} else {
				togglelayer('formpart_'+waarde, 'none');
			}
		}
	}
}

function showrestofvraagtypeform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.addform.elements['type[]'].options.length; i++) {
		var waarde = document.addform.elements['type[]'].options[i].value;
		if (waarde = "__TYPE__99__") {
			if (document.addform.elements['type[]'].options[i].selected) {
				togglelayer('formpart_'+waarde, 'block');
			} else {
				togglelayer('formpart_'+waarde, 'none');
			}
		}
	}
}


function showrestofprovform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.addform.provincie.options.length; i++) {
		var waarde = document.addform.provincie.options[i].value;
		if (document.addform.provincie.options[i].selected) {
			togglelayer('formpart_'+waarde, 'block');
			if (waarde != "__PROV__99__") {
				document.addform.provincie_manual.value = "";
			}
		} else {
			togglelayer('formpart_'+waarde, 'none');
		}
	}
}


function showrestofeigendomform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.addform.eigendom.options.length; i++) {
		var waarde = document.addform.eigendom.options[i].value;
		if (document.addform.eigendom.options[i].selected) {
			togglelayer('formpart_'+waarde, 'block');
			if (waarde != "__EIGENDOM__9__") {
				document.addform.eigendom_manual.value = "";
			}
		} else {
			togglelayer('formpart_'+waarde, 'none');
		}
	}
}

function showrestofbudgetform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.userform.usr_budget.options.length; i++) {
		var waarde = document.userform.usr_budget.options[i].value;
		if (document.userform.usr_budget.options[i].selected) {
			togglelayer('formpart_'+waarde, 'block');
			if (waarde != "__BUDG__99__") {
				document.userform.usr_budget_manual.value = "";
			}
		} else {
			togglelayer('formpart_'+waarde, 'none');
		}
	}
}

function showrestofrelatieform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.userform.usr_relatie.options.length; i++) {
		var waarde = document.userform.usr_relatie.options[i].value;
		if (document.userform.usr_relatie.options[i].selected) {
			togglelayer('formpart_'+waarde, 'block');
			if (waarde != "__RELA__99__") {
				document.userform.usr_relatie_manual.value = "";
			}
		} else {
			togglelayer('formpart_'+waarde, 'none');
		}
	}
}



function showrestofrelatieadminform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.userform.usr_relatie_admin.options.length; i++) {
		var waarde = document.userform.usr_relatie_admin.options[i].value;
		if (document.userform.usr_relatie_admin.options[i].selected) {
			togglelayer('formpart_'+waarde, 'block');
			if (waarde != "__RELA__ADM__99__") {
				document.userform.usr_relatie_admin_manual.value = "";
			}
		} else {
			togglelayer('formpart_'+waarde, 'none');
		}
	}
}



function showrestofzoektypeform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.zoekopdrachteditform.zoektype.options.length; i++) {
		var waarde = document.zoekopdrachteditform.zoektype.options[i].value;
		if (document.zoekopdrachteditform.zoektype.options[i].selected) {
			togglelayer('formpart_'+waarde, 'block');
			if (waarde != "__TYPE__99__") {
				document.zoekopdrachteditform.zoektype_manual.value = "";
			}
		} else {
			togglelayer('formpart_'+waarde, 'none');
		}
	}
}



function showrestoftypeform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.userform.usr_type.options.length; i++) {
		var waarde = document.userform.usr_type.options[i].value;
		if (document.userform.usr_type.options[i].selected) {
			togglelayer('formpart_'+waarde, 'block');
			if (waarde != "__TYPE__99__") {
				document.userform.usr_type_manual.value = "";
			}
		} else {
			togglelayer('formpart_'+waarde, 'none');
		}
	}
}





function showrestofstatusform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}
	for (var i = 0; i < document.addform.status.options.length; i++) {
		var waarde = document.addform.status.options[i].value;
		if (document.addform.status.options[i].selected) {
			if (waarde == "v") {
				var status_verkocht_tonen = 1;
			}
		}
	}
	if (status_verkocht_tonen == 1) {
		togglelayer('formpart_status_verkocht', 'block');
	} else {
		togglelayer('formpart_status_verkocht', 'none');
	}

	for (var i = 0; i < document.addform.status.options.length; i++) {
		var waarde = document.addform.status.options[i].value;
		if (document.addform.status.options[i].selected) {
			if (waarde == "o" || waarde == "v") {
				var salestool_tonen = 1;
			}
		}
	}
	if (salestool_tonen == 1) {
		togglelayer('formpart_status_salestool', 'block');
	} else {
		togglelayer('formpart_status_salestool', 'none');
	}

}






function showrestofhtmlmailform() {
	// toont de layer waarin de juiste formuliervelden zijn ondergebracht
	var supported = (document.getElementById || document.all);
	if (!supported)	{
		alert('De browser die je gebruikt kan helaas niet overweg met de beheertool.');
		return;
	}

	if (document.userform.abbo_mail.checked) {
		togglelayer('formpart_htmlmail_L', 'block');
		togglelayer('formpart_htmlmail_R', 'block');
	} else {
		togglelayer('formpart_htmlmail_L', 'none');
		togglelayer('formpart_htmlmail_R', 'none');
	}
}





function togglelayer(object, zichtbaarheid) {

	// maakt een onzichtbare layer zichtbaar of onzichtbaar in zoveel mogelijk browsers
	// eventuele bevattende code wordt niet meer uitgevoerd.
	if (object) {
		if (document.getElementById) {
			if (document.getElementById(object)) {
				document.getElementById(object).style.display = zichtbaarheid;
			}
		} else if (document.all) {
			if (document.all[object]) {
				document.all[object].style.display = zichtbaarheid;
			}
		}
	}

}


function togglelayer2(object, zichtbaarheid) {

	// maakt een onzichtbare layer zichtbaar of onzichtbaar in zoveel mogelijk browsers
	if (object) {
		if (document.getElementById) {
			if (document.getElementById(object)) {
				document.getElementById(object).style.visibility = zichtbaarheid;
			}
		} else if (document.all) {
			if (document.all[object]) {
				document.all[object].style.visibility = zichtbaarheid;
			}
		}
	}

}



function selecteer_geheelnl(debox) {

	// selecteert alle Nederlandse provincies in een provincie-selectbox

//	alert(debox[0].value);
//	alert(debox[0].text);

	for(var i=0; i<debox.length; i++) {
		// itereren over ieder veld van de selectbox
//		alert("iteratie: "+i);
		for(var p=1; p<=12; p++) {
			// itereren over iedere provincie [1-12]
			var thisprov = "__PROV__" + p + "__";
			if (debox[i].value == thisprov) {
				debox.options[i].selected = true;
			}
		}
	}



}
