
function RefreshImage(valImageId) { //CAPTCHA
	var objImage = document.images[valImageId];
	if (objImage == undefined) {
		return;
	}
	var now = new Date();
	objImage.src = objImage.src.split('?')[0] + '?x=' + now.toUTCString();
}

function findPosX(obj){
	var curleft = 0;
	if (obj.offsetParent){
		while (obj.offsetParent){
			curleft += obj.offsetLeft;
			obj = obj.offsetParent;
		}
	}
	else if (obj.x){
		curleft += obj.x;
	}
	return curleft;
}
function findPosY(obj){
	var curtop = 0;
	if (obj){
		if (obj.offsetParent){
			while (obj.offsetParent){
				curtop += obj.offsetTop;
				//curtop -= obj.scrollTop;
				obj = obj.offsetParent;
			}
		}
		else if (obj.y){
			curtop += obj.y;
		}
		return curtop;
	}
}

function fnCheckArea(CheckAreaEvent,field,howmany){ //limits number of characters user can type in
	key = CheckAreaEvent.keyCode || CheckAreaEvent.which;
	if (key==8 || key==46){
		return true;
	}else{
		if (field.value.length < howmany){
			return true;
		}else{
			tmpStr = field.value;
			field.value = tmpStr.substr(0,howmany);
			return true;
		}
	}
}
function fnCheck(field,type){
	switch(type){
	case ('numeric'): return fnChecknumeric(field); break;
	case ('email'): return fnCheckemail(field); break;
	case ('pass'): return fnCheckpassword(field); break;
	default: return fnCheckall(field);	
	}
}

function fnCheckpassword(i){
	x2 = true;
	if (i.value.toString() == i.form.elements[i.name+'2'].value.toString()){
		MM_showHideLayers('lyr'+i.form.name+i.name+'2','','hide');
	}else{
		MM_showHideLayers('lyr'+i.form.name+i.name+'2','','show');
		x2 = false;
	}
	if (fnCheckpasswordStrength(i) >= 0){
		MM_showHideLayers('lyr'+i.form.name+i.name,'','hide');
	}else{
		MM_showHideLayers('lyr'+i.form.name+i.name,'','show');
		x2 = false;
	}
	return x2;
}
function fnCheckpasswordStrength(i){
	//strength
	passwordString = i.value.toString();
	passwordStrengthSpan = MM_findObj(i.form.name+i.name+'passwordstrength');
	passwordStrength = passwordString.length / 2;
	alfaString = 'abcdefghijklmnopqrstuvwxyzABSDEFGHIJKLMNOPQRSTUVWXYZ';
	numericString = '1234567890';
	passwordHasAlfa = 0;
	for (k = 0; k < passwordString.length; k++){
		passwordChar = passwordString.charAt(k);
		if (alfaString.indexOf(passwordChar) != -1){
			passwordHasAlfa = 1;
			break;
		}
	}
	passwordHasNumeric = 0;
	for (k = 0; k < passwordString.length; k++){
		passwordChar = passwordString.charAt(k);
		if (numericString.indexOf(passwordChar) != -1){
			passwordHasNumeric = 1;
			break;
		}
	}
	passwordHasWeird = 0;
	for (k = 0; k < passwordString.length; k++){
		passwordChar = passwordString.charAt(k);
		if (alfaString.indexOf(passwordChar) == -1 && numericString.indexOf(passwordChar) == -1){
			passwordHasWeird = 1;
			break;
		}
	}
	passwordHas = passwordHasAlfa + passwordHasNumeric + passwordHasWeird;
	switch(passwordHas){
		case (2): passwordStrength += passwordStrength / 2; break;
		case (3): passwordStrength += passwordStrength; break;
	}
	passwordStrength = parseInt(passwordStrength);
	if (passwordStrength > 10){ passwordStrength = 10; }
	passwordStrengthSpan.innerHTML = passwordStrength;
	passwordStrengthSpan.style.fontWeight = 'bold';
	passwordStrengthSpan.style.color = '#ff0000';
	if (passwordStrength > 6){
		passwordStrengthSpan.style.color = '#ffcc00';
	}
	if (passwordStrength > 8){
		passwordStrengthSpan.style.color = '#00cc00';
	}
	return passwordStrength;
}
function fnCheckall(i){
	var reg = /\w+/
	if (!reg.test(i.value)){ MM_showHideLayers('lyr'+i.form.name+i.name,'','show'); return false; }else{ MM_showHideLayers('lyr'+i.form.name+i.name,'','hide'); return true; }
}
function fnChecknumeric(i){
	invoer = i.value;
	var reg = /^\d+$/;
	if (!reg.test(invoer)){ MM_showHideLayers('lyr'+i.form.name+i.name,'','show'); return false; }else{ MM_showHideLayers('lyr'+i.form.name+i.name,'','hide'); }
}
function fnChecktel(i){
	invoer = i.value;
	while (invoer.indexOf('-') != -1){ invoer = invoer.replace('-',''); }
	while (invoer.indexOf(' ') != -1){ invoer = invoer.replace(' ',''); }
	var reg = /\d{10}/;
	if (!reg.test(invoer)){ MM_showHideLayers('lyr'+i.form.name+i.name,'','show'); return false; }else{ MM_showHideLayers('lyr'+i.form.name+i.name,'','hide'); }
}
function fnCheckzip(i){
	var reg = /\d{4}\s?\w+/;
	if (!reg.test(i.value)){ MM_showHideLayers('lyr'+i.form.name+i.name,'','show'); return false;}else{ MM_showHideLayers('lyr'+i.form.name+i.name,'','hide'); }
}
function fnCheckemail(i){
	//email ok until proven ontherwise, hide warning
	MM_showHideLayers('lyr'+i.form.name+i.name,'','hide');
	invoer = i.value;
	//controle op format
	var reg= /^[A-Za-z0-9._-]*@[A-Za-z0-9.-]*\.[A-Za-z]{2,}$/;
	//   /.[@].+[.]\w{2,}$/;
	if (!reg.test(invoer)){
		MM_showHideLayers('lyr'+i.form.name+i.name,'','show');
		return false; }
	//verwijder toegelaten speciale tekens uit mailadres	
	for (i=1;i<invoer.length;i++){ 
		var invoer = invoer.replace(/[@.-]/,"");
	}
	//controle op niet (alpha)numerieke tekens
	reg = /\W/;
	if (reg.test(invoer)){
		MM_showHideLayers('lyr'+i.form.name+i.name,'','show');
		return false; }
}
function fnCheckList(list,lyr){
	if (!list){
		MM_showHideLayers('lyr'+lyr,'','show');return false;
	}else if (!list.type){ //radio buttons or checkboxes
		for (i=0;i<list.length;i++){
			if (list[i].checked && list[i].value != ''){
				MM_showHideLayers('lyr'+lyr,'','hide');return true;
			}
		}
		MM_showHideLayers('lyr'+lyr,'','show');return false;
	}else if(list.type=='radio' || list.type=='checkbox'){ //one radio or one checkbox
		if (list.checked && list.value != ''){
			MM_showHideLayers('lyr'+lyr,'','hide');return true;
		}else{
			MM_showHideLayers('lyr'+lyr,'','show');return false;
		}
	}else{
		for (i=0;i<list.length;i++){
			if (list.options[i].selected && list.options[i].value != ''){
				MM_showHideLayers('lyr'+list.form.name+list.name,'','hide');return true;
			}
		}
		MM_showHideLayers('lyr'+list.form.name+list.name,'','show');return false;
	}
}

function fnCheckListOLD(list,lyr){
	if (list.type == undefined){ //radio buttons or checkboxes
		for (i=0;i<list.length;i++){
			if (list[i].checked){
				MM_showHideLayers(lyr,'','hide');return true;
			}
		}
		MM_showHideLayers(lyr,'','show');return false;
	}else{
		for (i=0;i<list.length;i++){
			if (list.options[i].selected){
				MM_showHideLayers(lyr,'','hide');return true;
			}
		}
		MM_showHideLayers(lyr,'','show');return false;
	}
}

CurrencyLayerDisplayed = '';
CurrencyLayerTimeOut = setTimeout('',2000);
clearTimeout(CurrencyLayerTimeOut);
function DisplayCurrencies(which){
	clearTimeout(CurrencyLayerTimeOut);
	if (which){
		TheLayer = which.parentElement.children(1);
		if (CurrencyLayerDisplayed){ positionLayer(CurrencyLayerDisplayed,-400,-400); }
		DisplayCurrenciesY = findPosY(which);
		DisplayCurrenciesX = findPosX(which);
		scrollTop = document.body.scrollTop || window.scrollY || window.pageYOffset || 0;
		scrollLeft = document.body.scrollLeft || window.scrollX || window.pageXOffset || 0;
		if (DisplayCurrenciesY + TheLayer.offsetHeight > h + scrollTop){ DisplayCurrenciesY = h - TheLayer.offsetHeight + scrollTop; }
		if (DisplayCurrenciesX + TheLayer.offsetWidth > w + scrollLeft){ DisplayCurrenciesX = w - TheLayer.offsetWidth + scrollLeft; }
		positionLayer(TheLayer,DisplayCurrenciesX,DisplayCurrenciesY,100);// - scrollTop);
		CurrencyLayerDisplayed = TheLayer;
	}else{
		if (CurrencyLayerDisplayed){
			CurrencyLayerTimeOut = setTimeout('positionLayer(\'' + CurrencyLayerDisplayed.id + '\',-400,-400);CurrencyLayerDisplayed = false;',500);
		}
	}
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}