
/* SWFObject v2.1 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
	This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
var swfobject=function(){var b="undefined",Q="object",n="Shockwave Flash",p="ShockwaveFlash.ShockwaveFlash",P="application/x-shockwave-flash",m="SWFObjectExprInst",j=window,K=document,T=navigator,o=[],N=[],i=[],d=[],J,Z=null,M=null,l=null,e=false,A=false;var h=function(){var v=typeof K.getElementById!=b&&typeof K.getElementsByTagName!=b&&typeof K.createElement!=b,AC=[0,0,0],x=null;if(typeof T.plugins!=b&&typeof T.plugins[n]==Q){x=T.plugins[n].description;if(x&&!(typeof T.mimeTypes!=b&&T.mimeTypes[P]&&!T.mimeTypes[P].enabledPlugin)){x=x.replace(/^.*\s+(\S+\s+\S+$)/,"$1");AC[0]=parseInt(x.replace(/^(.*)\..*$/,"$1"),10);AC[1]=parseInt(x.replace(/^.*\.(.*)\s.*$/,"$1"),10);AC[2]=/r/.test(x)?parseInt(x.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof j.ActiveXObject!=b){var y=null,AB=false;try{y=new ActiveXObject(p+".7")}catch(t){try{y=new ActiveXObject(p+".6");AC=[6,0,21];y.AllowScriptAccess="always"}catch(t){if(AC[0]==6){AB=true}}if(!AB){try{y=new ActiveXObject(p)}catch(t){}}}if(!AB&&y){try{x=y.GetVariable("$version");if(x){x=x.split(" ")[1].split(",");AC=[parseInt(x[0],10),parseInt(x[1],10),parseInt(x[2],10)]}}catch(t){}}}}var AD=T.userAgent.toLowerCase(),r=T.platform.toLowerCase(),AA=/webkit/.test(AD)?parseFloat(AD.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,q=false,z=r?/win/.test(r):/win/.test(AD),w=r?/mac/.test(r):/mac/.test(AD);/*@cc_on q=true;@if(@_win32)z=true;@elif(@_mac)w=true;@end@*/return{w3cdom:v,pv:AC,webkit:AA,ie:q,win:z,mac:w}}();var L=function(){if(!h.w3cdom){return }f(H);if(h.ie&&h.win){try{K.write("<script id=__ie_ondomload defer=true src=//:><\/script>");J=C("__ie_ondomload");if(J){I(J,"onreadystatechange",S)}}catch(q){}}if(h.webkit&&typeof K.readyState!=b){Z=setInterval(function(){if(/loaded|complete/.test(K.readyState)){E()}},10)}if(typeof K.addEventListener!=b){K.addEventListener("DOMContentLoaded",E,null)}R(E)}();function S(){if(J.readyState=="complete"){if(J.parentNode){J.parentNode.removeChild(J);}E()}}function E(){if(e){return }if(h.ie&&h.win){var v=a("span");try{var u=K.getElementsByTagName("body")[0].appendChild(v);u.parentNode.removeChild(u)}catch(w){return }}e=true;if(Z){clearInterval(Z);Z=null}var q=o.length;for(var r=0;r<q;r++){o[r]()}}function f(q){if(e){q()}else{o[o.length]=q}}function R(r){if(typeof j.addEventListener!=b){j.addEventListener("load",r,false)}else{if(typeof K.addEventListener!=b){K.addEventListener("load",r,false)}else{if(typeof j.attachEvent!=b){I(j,"onload",r)}else{if(typeof j.onload=="function"){var q=j.onload;j.onload=function(){q();r()}}else{j.onload=r}}}}}function H(){var t=N.length;for(var q=0;q<t;q++){var u=N[q].id;if(h.pv[0]>0){var r=C(u);if(r){N[q].width=r.getAttribute("width")?r.getAttribute("width"):"0";N[q].height=r.getAttribute("height")?r.getAttribute("height"):"0";if(c(N[q].swfVersion)){if(h.webkit&&h.webkit<312){Y(r)}W(u,true)}else{if(N[q].expressInstall&&!A&&c("6.0.65")&&(h.win||h.mac)){k(N[q])}else{O(r)}}}}else{W(u,true)}}}function Y(t){var q=t.getElementsByTagName(Q)[0];if(q){var w=a("embed"),y=q.attributes;if(y){var v=y.length;for(var u=0;u<v;u++){if(y[u].nodeName=="DATA"){w.setAttribute("src",y[u].nodeValue)}else{w.setAttribute(y[u].nodeName,y[u].nodeValue)}}}var x=q.childNodes;if(x){var z=x.length;for(var r=0;r<z;r++){if(x[r].nodeType==1&&x[r].nodeName=="PARAM"){w.setAttribute(x[r].getAttribute("name"),x[r].getAttribute("value"))}}}t.parentNode.replaceChild(w,t)}}function k(w){A=true;var u=C(w.id);if(u){if(w.altContentId){var y=C(w.altContentId);if(y){M=y;l=w.altContentId}}else{M=G(u)}if(!(/%$/.test(w.width))&&parseInt(w.width,10)<310){w.width="310"}if(!(/%$/.test(w.height))&&parseInt(w.height,10)<137){w.height="137"}K.title=K.title.slice(0,47)+" - Flash Player Installation";var z=h.ie&&h.win?"ActiveX":"PlugIn",q=K.title,r="MMredirectURL="+j.location+"&MMplayerType="+z+"&MMdoctitle="+q,x=w.id;if(h.ie&&h.win&&u.readyState!=4){var t=a("div");x+="SWFObjectNew";t.setAttribute("id",x);u.parentNode.insertBefore(t,u);u.style.display="none";var v=function(){u.parentNode.removeChild(u)};I(j,"onload",v)}U({data:w.expressInstall,id:m,width:w.width,height:w.height},{flashvars:r},x)}}function O(t){if(h.ie&&h.win&&t.readyState!=4){var r=a("div");t.parentNode.insertBefore(r,t);r.parentNode.replaceChild(G(t),r);t.style.display="none";var q=function(){t.parentNode.removeChild(t)};I(j,"onload",q)}else{t.parentNode.replaceChild(G(t),t)}}function G(v){var u=a("div");if(h.win&&h.ie){u.innerHTML=v.innerHTML}else{var r=v.getElementsByTagName(Q)[0];if(r){var w=r.childNodes;if(w){var q=w.length;for(var t=0;t<q;t++){if(!(w[t].nodeType==1&&w[t].nodeName=="PARAM")&&!(w[t].nodeType==8)){u.appendChild(w[t].cloneNode(true))}}}}}return u}function U(AG,AE,t){var q,v=C(t);if(v){if(typeof AG.id==b){AG.id=t}if(h.ie&&h.win){var AF="";for(var AB in AG){if(AG[AB]!=Object.prototype[AB]){if(AB.toLowerCase()=="data"){AE.movie=AG[AB]}else{if(AB.toLowerCase()=="styleclass"){AF+=' class="'+AG[AB]+'"'}else{if(AB.toLowerCase()!="classid"){AF+=" "+AB+'="'+AG[AB]+'"'}}}}}var AD="";for(var AA in AE){if(AE[AA]!=Object.prototype[AA]){AD+='<param name="'+AA+'" value="'+AE[AA]+'" />'}}v.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AF+">"+AD+"</object>";i[i.length]=AG.id;q=C(AG.id)}else{if(h.webkit&&h.webkit<312){var AC=a("embed");AC.setAttribute("type",P);for(var z in AG){if(AG[z]!=Object.prototype[z]){if(z.toLowerCase()=="data"){AC.setAttribute("src",AG[z])}else{if(z.toLowerCase()=="styleclass"){AC.setAttribute("class",AG[z])}else{if(z.toLowerCase()!="classid"){AC.setAttribute(z,AG[z])}}}}}for(var y in AE){if(AE[y]!=Object.prototype[y]){if(y.toLowerCase()!="movie"){AC.setAttribute(y,AE[y])}}}v.parentNode.replaceChild(AC,v);q=AC}else{var u=a(Q);u.setAttribute("type",P);for(var x in AG){if(AG[x]!=Object.prototype[x]){if(x.toLowerCase()=="styleclass"){u.setAttribute("class",AG[x])}else{if(x.toLowerCase()!="classid"){u.setAttribute(x,AG[x])}}}}for(var w in AE){if(AE[w]!=Object.prototype[w]&&w.toLowerCase()!="movie"){F(u,w,AE[w])}}v.parentNode.replaceChild(u,v);q=u}}}return q}function F(t,q,r){var u=a("param");u.setAttribute("name",q);u.setAttribute("value",r);t.appendChild(u)}function X(r){var q=C(r);if(q&&(q.nodeName=="OBJECT"||q.nodeName=="EMBED")){if(h.ie&&h.win){if(q.readyState==4){B(r)}else{j.attachEvent("onload",function(){B(r)})}}else{q.parentNode.removeChild(q)}}}function B(t){var r=C(t);if(r){for(var q in r){if(typeof r[q]=="function"){r[q]=null}}r.parentNode.removeChild(r)}}function C(t){var q=null;try{q=K.getElementById(t)}catch(r){}return q}function a(q){return K.createElement(q)}function I(t,q,r){t.attachEvent(q,r);d[d.length]=[t,q,r]}function c(t){var r=h.pv,q=t.split(".");q[0]=parseInt(q[0],10);q[1]=parseInt(q[1],10)||0;q[2]=parseInt(q[2],10)||0;return(r[0]>q[0]||(r[0]==q[0]&&r[1]>q[1])||(r[0]==q[0]&&r[1]==q[1]&&r[2]>=q[2]))?true:false}function V(v,r){if(h.ie&&h.mac){return }var u=K.getElementsByTagName("head")[0],t=a("style");t.setAttribute("type","text/css");t.setAttribute("media","screen");if(!(h.ie&&h.win)&&typeof K.createTextNode!=b){t.appendChild(K.createTextNode(v+" {"+r+"}"))}u.appendChild(t);if(h.ie&&h.win&&typeof K.styleSheets!=b&&K.styleSheets.length>0){var q=K.styleSheets[K.styleSheets.length-1];if(typeof q.addRule==Q){q.addRule(v,r)}}}function W(t,q){var r=q?"visible":"hidden";if(e&&C(t)){C(t).style.visibility=r}else{V("#"+t,"visibility:"+r)}}function g(s){var r=/[\\\"<>\.;]/;var q=r.exec(s)!=null;return q?encodeURIComponent(s):s}var D=function(){if(h.ie&&h.win){window.attachEvent("onunload",function(){var w=d.length;for(var v=0;v<w;v++){d[v][0].detachEvent(d[v][1],d[v][2])}var t=i.length;for(var u=0;u<t;u++){X(i[u])}for(var r in h){h[r]=null}h=null;for(var q in swfobject){swfobject[q]=null}swfobject=null})}}();return{registerObject:function(u,q,t){if(!h.w3cdom||!u||!q){return }var r={};r.id=u;r.swfVersion=q;r.expressInstall=t?t:false;N[N.length]=r;W(u,false)},getObjectById:function(v){var q=null;if(h.w3cdom){var t=C(v);if(t){var u=t.getElementsByTagName(Q)[0];if(!u||(u&&typeof t.SetVariable!=b)){q=t}else{if(typeof u.SetVariable!=b){q=u}}}}return q},embedSWF:function(x,AE,AB,AD,q,w,r,z,AC){if(!h.w3cdom||!x||!AE||!AB||!AD||!q){return }AB+="";AD+="";if(c(q)){W(AE,false);var AA={};if(AC&&typeof AC===Q){for(var v in AC){if(AC[v]!=Object.prototype[v]){AA[v]=AC[v]}}}AA.data=x;AA.width=AB;AA.height=AD;var y={};if(z&&typeof z===Q){for(var u in z){if(z[u]!=Object.prototype[u]){y[u]=z[u]}}}if(r&&typeof r===Q){for(var t in r){if(r[t]!=Object.prototype[t]){if(typeof y.flashvars!=b){y.flashvars+="&"+t+"="+r[t]}else{y.flashvars=t+"="+r[t]}}}}f(function(){U(AA,y,AE);if(AA.id==AE){W(AE,true)}})}else{if(w&&!A&&c("6.0.65")&&(h.win||h.mac)){A=true;W(AE,false);f(function(){var AF={};AF.id=AF.altContentId=AE;AF.width=AB;AF.height=AD;AF.expressInstall=w;k(AF)})}}},getFlashPlayerVersion:function(){return{major:h.pv[0],minor:h.pv[1],release:h.pv[2]}},hasFlashPlayerVersion:c,createSWF:function(t,r,q){if(h.w3cdom){return U(t,r,q)}else{return undefined}},removeSWF:function(q){if(h.w3cdom){X(q)}},createCSS:function(r,q){if(h.w3cdom){V(r,q)}},addDomLoadEvent:f,addLoadEvent:R,getQueryParamValue:function(v){var u=K.location.search||K.location.hash;if(v==null){return g(u)}if(u){var t=u.substring(1).split("&");for(var r=0;r<t.length;r++){if(t[r].substring(0,t[r].indexOf("="))==v){return g(t[r].substring((t[r].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(A&&M){var q=C(m);if(q){q.parentNode.replaceChild(M,q);if(l){W(l,true);if(h.ie&&h.win){M.style.display="block"}}M=null;l=null;A=false}}}}}();

var filled = 0;
var textareaspellcheck = '';
var ignoreOnBeforeUnload = false;
var tp2010_waardemeter_huis = false;
var tp2010_waardemeter_inboedel = false;

(function ($) {
  // Log all jQuery AJAX requests to Google Analytics
  $(document).ajaxSend(function(event, xhr, settings){ 
    if (typeof _gaq !== "undefined" && _gaq !== null) {
      _gaq.push(['_trackPageview', settings.url.pathname]);
    }
  });

})(jQuery);

function getObj(ev, ob)
{
	if(!ob)
	{
		var targ;
		if (!ev) var ev = window.event;
		if (ev.target) targ = ev.target;
		else if (ev.srcElement) targ = ev.srcElement;
		if (targ.nodeType == 3) // defeat Safari bug
			targ = targ.parentNode;

		return targ;
	}
	else
	{
		return ob;
	}
};

function openWin(url)
{
  var winId = window.open(url,'newwin','width=530,height=450,scrollbars=yes');
  winId.focus();
}

function openWinEuropeeschenn(url)
{
  var winId = window.open(url,'newwin','width=610,height=450,scrollbars=yes');
  winId.focus();
}

function openWinHCN(url)
{
  var winId = window.open(url,'newwin','width=1024,height=800,scrollbars=yes');
  winId.focus();
  return false;
}

function openWinCordares(url)
{
  var winId = window.open(url,'newwin','width=480,height=520,scrollbars=no');
  winId.focus();
}

function openWinClick( location, name, width, height )
{
	popup = window.open(location,name,'width='+width+',height='+height+',menubar=no,resizable=no,scrollbars=yes,status=0');
    if (window.focus) {popup.focus()}
	//return false;
}

function storeCursor(element)
{
	if ( document.all && element.createTextRange )
		element.cursorPos = document.selection.createRange().duplicate();
}

/* Initialization */

var activeAgentRow = null;
function assignDataToAgentContent( x, d )
{
	if (x.className == 'agentRow')
	{
		if(activeAgentRow)
			activeAgentRow.className = 'agentRow';
		x.className = 'agentRowActive';
		for(var i=0;i<d.length;i++)
		{
			document.getElementById('agentContentField_' + d[i]).innerHTML = d[++i];
		}
		document.getElementById('agentContentWrapper').style.display='';
		activeAgentRow = x;
	}
	else
	{
		x.className = 'agentRow';
		activeAgentRow = null;
		document.getElementById('agentContentWrapper').style.display='none';
	}
	return true;
}

/*
Add-to-favorites Script
Created by David Gardner (toolmandav@geocities.com)
No warranty of any kind comes with this script!
Permission granted to Dynamic Drive (http://dynamicdrive.com)
to post and feature this script on their DHTML archive
*/

function link2tab()
{
	document.getElementById("tab-page-europeesche").tabPage.select;
}

/*
function statusboxToggleHover(box, show)
{
	if (show)
	{
	  	box.className += ' status-box-hover';
	}
	else
	{
	    box.className = box.className.replace(/ status-box-hover/g, '');
	}
	return true;
}
*/
function statusboxToggleLog(id)
{
	img = document.getElementById('img.'+id);
	if(img.src.indexOf("images/minus.gif")>=0)
	{
		img.src="images/plus.gif";
	}
	else
	{
		img.src="images/minus.gif";
	}
	var vlog = document.getElementById(id);
	if (!vlog.className.match(/ status-hidden/g))
	{
	  	vlog.className += ' status-hidden';
	}
	else
	{
	    vlog.className = vlog.className.replace(/ status-hidden/g, '');
	}
}

function addContact()
{			
	
	if($(jq('form-reply-content')).val().length == 0)
	{
		ldt('Vul een beschrijving van het contact in.','error');
		$(jq('form-reply-content')).css('border-color','red');
		showTemp('loadingDiv');
		return false;
	}
	
	$(jq('contact_form_div')).css('border','1px solid white');
	$(jq('contact_form_div')).hide('fast');
	$(jq('contact_form_div_submitting')).show('fast');
	
	var onderwerp = $(jq('site_user_fullname')).val() + ': ' + $(jq('data[97453]') 
			+ ' option:selected').text().toLowerCase() + ' door ' + $(jq('data[97454]') 
			+ ' option:selected').text().toLowerCase() + ' over';
	
	if(appendContactToThisPolisnummer == 'relatie')
	{
		onderwerp = onderwerp + ' relatie.';
		$(jq('data[97457]')).val(onderwerp);
	}
	else
	{
		if(appendContactToThisPolisnummer.length == 0)
			appendContactToThisPolisnummer = 'onbekend';
		
		onderwerp = onderwerp + ' polis.';//(polisnummer: ' + jQuery.trim(appendContactToThisPolisnummer) + ').';
		$(jq('data[97457]')).val(onderwerp);
		$(jq('data[97458]')).val('Polisnummer: ' + appendContactToThisPolisnummer);
	}

	var url = site_script_url + '/add_contact/' + $(jq('data[00001]')).val();
		
	// datum naar anva datum
	var veaDatum = $(jq('f-contactdatum')).val();
	var anvaDatum = toAnvaDateFormat(veaDatum);
	
	//y(veaDatum + ' -> ' + anvaDatum);
	
	$(jq('f-contactdatum')).val(anvaDatum);
	// tijd naar anva tijd
	$(jq('data[97452]')).val($(jq('data[97452]')).val().replace(":",""));
	
	loadingAlert('show','Bezig met plaatsen contact...');
	var shizzle = $('#contact_plaatsen').serialize();
	$.ajax({
		type: "POST",
		url: url,
		data: shizzle,
		success: function(response,statusText){		    
		    loadingAlert('hide');
		    
		    $(jq('contact_form_div_submitting')).hide('fast',function(){
		    	$(jq('contact_form_div_succes')).show('fast');
		    });
					
		}
	});

	return;
}

var appendContactToThisPolisnummer;
function insertContactForm(id,polisnummer)
{
	appendContactToThisPolisnummer = polisnummer;
	document.getElementById(id).tabPage.select('appendContactForm');	
	return false;
}


$.strPad = function(i,l,s) {
	var o = i.toString();
	if (!s) { s = '0'; }
	while (o.length < l) {
		o = s + o;
	}
	return o;
};

function appendContactForm(domID,attribute)
{		
	
	if(typeof(attribute)=="undefined")
		attribute = 'polisid';

	var tabPageSelector = "div["+attribute+"='"+jqnd(domID)+"']";
	var tabPageId = $(tabPageSelector).attr('id');	

	$(jq(tabPageId)).find('.active').each(function(){

		$(jq('contact_form_div')).show();		
		$(jq('contact_plaatsen_fieldset')).prependTo($(this));		
		$(jq('contact_plaatsen_fieldset')).show('slow');		
		$(jq('contact_form_div_succes')).hide();
		// put in the time
		var nu = new Date();
		$(jq('data[97452]')).val($.strPad(nu.getHours(),2) + ':' + $.strPad(nu.getMinutes(),2));

		// put in the date
		var nu = new Date();
		$(jq('f-contactdatum')).val($.strPad(nu.getDate(),2) + '/' + $.strPad((nu.getMonth()+1),2) + '/' + nu.getFullYear());
	});	
	
	return;
	
}

function useExample(id)
{
	var x = $(jq(id)).html();
	x = x.replace(/\|nl\|/g, "\n");
	x = restoreHtml(x);
	$(jq('data[xml]')).text(x);
	return;	
}

function restoreHtml(html)
{
	html = html.replace(/&lt;/gi,"<");
	html = html.replace(/&gt;/gi,">");
	html = html.replace(/&quot;/gi,'"');
	html = html.replace(/&amp;/gi,'&');
	return html;
}

function testAwacs()
{
	var shizzle = $('#awacsform').serialize();
	var url = site_script_url + '/awacs_test/';
	$.ajax({
		type: "POST",
		url: url,
		data: shizzle,
		processData: false,
		success: function(data, textStatus, XMLHttpRequest){
		    
			/*
		    //for IE 
		    if (window.ActiveXObject) {
		        var string = data.xml;
		    }
		    // code for Mozilla, Firefox, Opera, etc.
		    else {
		       var string = (new XMLSerializer()).serializeToString(data);
		    }
			*/	
			$('#awacs_response').show();
		    //$('#awacsResponse').text(string);
		    $('#awacs_response').html(data);
		    loadingAlert('hide');
		    //alert(response);
		    
		   }
	});
}

function updateRelatie()
{
	var go = true;
	$('.status-box-error').each(function(index) {
		go = false;
		return;
	});
	
	if(go == false)
	{
		ldt('Nog niet alle foutmeldingen zijn opgelost.<br>Voor het opslaan moeten alle foutmeldingen opgelost zijn.','error','menu');
		showTemp('loadingDiv');
		return;
	}
	
	$('input[name=action]').val('update_relatie');
	var data = $("#relatie_form").serialize();
	
	loadingAlert('show','Bezig met opslaan...','header');
	
	$.ajax({
	  type: 'POST',
	  url: site_script_url + '/update_relatie/',
	  data: data,
	  success: function(response){
			if(response['success']==1)
			{
				$('#loadingDiv').fadeOut('slow',function(){
					loadingAlert('hide');
					ldt('De gegevens zijn succesvol opgeslagen.','ok');
					showTemp('loadingDiv');			
				});
			}
			else
			{	
				$('#loadingDiv').fadeOut('slow',function(){
					loadingAlert('hide');
					ldt('De gegevens zijn niet opgeslagen:<br>' + response['error'],'error','menu');
					showTemp('loadingDiv',5000);					
				});
			}
		},
	  dataType: 'json' 
	});
	
}

function checkEmail(id)
{
	$('#error_'+id).remove();
	var message = '';
	if(!validate_email($('#'+id).val()))
	{
		message = 'Dit is geen valide email adres. Laat het veld leeg als er geen juist email adres beschikbaar is.';
	}
	
	if(message.length > 0)
	{
		$('#'+id).before('<label id="error_'+id+'" class="status-box-error">'+message+'</label>');
		$('#'+id).focus();
	}
	return;
}

function checkBsn(id)
{
	$('#error_'+id).remove();
	var sofinr = $('#'+id).val();
	var checksum = 0; 
	var message = '';
	
	if(sofinr.length == 0)
	{
		// that is ok
	}
	else if(isNaN(sofinr) || sofinr.length!=9)
	{ 
		message = "Het BSN nummer is niet correct.<br>" + 
					"Het moet 9 cijfers lang zijn.<br> " + 
					"Indien het eerste cijfer een 0 is van uw sofinummer, moet u deze ook invullen<br>" + 
					"Laat het veld leeg als er geen juist BSN nummer beschikbaar is.<br>";
	} 
	else
	{ 
		for(i=0;i<8;i++)
		{ 
			checksum += (sofinr.charAt(i)*(9-i));
		} 
		checksum -= sofinr.charAt(8); 
		if(checksum%11!=0)
		{
			message = "Het BSN nummer is niet correct.<br>" + 
						"Het moet 9 cijfers lang zijn.<br> " + 
						"Indien het eerste cijfer een 0 is van uw sofinummer, moet u deze ook invullen<br>" + 
						"Laat het veld leeg als er geen juist BSN nummer beschikbaar is.<br>";
		} 
	} 
		
	if(message.length > 0)
	{
		// return focus
		// show message in spanalert(message);
		$('#'+id).before('<label id="error_'+id+'" class="status-box-error">'+message+'</label>');
		$('#'+id).focus();
	}
	return;
} 

function toggleProvisie(userid,showprovisie)
{
	var tekst = '';
	if(showprovisie==0){tekst = 'niet meer';}
	loadingAlert('show','De provisie wordt '+ tekst +' weergegeven...');
	$.post(site_script_url + "/edit_user_toggle_provisie", { 'data[userid]': userid, 'data[ShowProvisie]': showprovisie },
	   function(data){
			loadingAlert('show','Een moment, de pagina wordt ververst...');
	    	window.location.href=window.location.href;
	});
}

function submitComparisonSS(fieldsetid,type)
{
	var form = document.getElementById('totaalpakket');    
	/* there are multiple action-fields in the form, set only the hidden, default input field */
	form['data[fieldset_id]'].value = fieldsetid;
	ignoreOnBeforeUnload = true;
	$('#vgl_table_'+fieldsetid).show();
	$('#vgl_body_'+fieldsetid).empty(); 
	$('#vgl_voortgang_'+fieldsetid).show();	
	
	if(type == 'CMP  00001')
		var extra = '&data[comparison]=auto';
	
	if(type == 'CMP  00002')
		var extra = '&data[comparison]=rechtsbijstand';
	
	if(type == 'CMP  00004')
		var extra = '&data[comparison]=bromfiets';	
	
	$(jq('img.'+fieldsetid+'.vglloader')).attr('src',site_template_url+ 'images/ajax-loader-w.gif').show();
	var comparisonList = ['allatonce'];
	var comparisonListLength = comparisonList.length;
	var counter = 0;
	loadingAlert('show','Bezig met premievergelijking: ' + counter + '/' + comparisonListLength + '...');
	for(i=0;i<window.timeOuts.length;i++){
		window.clearTimeout(window.timeOuts[i]);}
	
	$.each(comparisonList, function(index, value) {		
		//$('#maatschappij').val(value);
		$('#totaalpakket-action').val('server_fieldset_comparison');
		var data = $("#totaalpakket").serialize() + extra;
		$.ajax({
			type: 'POST',
			url: site_script_url + '/' + value,
			data: data,
			success: function(result) {
				$('#vgl_body_'+fieldsetid).append(result);
				counter ++;
				ldt('Bezig met premievergelijking: ' + counter + '/' + comparisonListLength + '...');
				if(counter == comparisonListLength)
				{
					loadingAlert('hide','Klaar met berekeningen.');					
					$(jq('img.'+fieldsetid+'.vglloader')).attr('src',site_template_url+ 'images/accept.gif').show();
					setTimeout("$('#vgl_voortgang_"+fieldsetid+"').fadeOut();",1500);
					
					var mylist = $('#vgl_body_'+fieldsetid);
					var listitems = mylist.children('tr').get();
					listitems.sort(function(a, b) {
					   var compA = Number($(a).attr('order'));
					   var compB = Number($(b).attr('order'));
					   //var en = (Number(compA) < Number(compB));
					   //y(compA + ' - ' + compB + ' = ' + en);
					   if(compA==0 && compB!=0) return 1;
					   if(compA!=0 && compB==0) return -1;					   
					   return ((compA) < (compB)) ? -1 : ((compA) > (compB)) ? 1 : 0;
					})
					$.each(listitems, function(idx, itm) { mylist.append(itm); });
				}
			}
		}); 
	$('#totaalpakket-action').val('test_fieldset');		
	});
	
	return false;
}

function submitComparisonChoice(formid, fieldsetid, mij, branche)
{	
	// 'set_fieldset_comparison'		=> array('form_id','fieldset_formtype','fieldset_id','sort'),
	
	//var url = site_script_url + '/set_fieldset_comparison/' + formid + '/polis/' + fieldsetid + '/' + mij + '.' + branche;
	$('#totaalpakket-action').val('set_fieldset_comparison');
	//y(url);
	//$('#totaalpakket').attr('action',url);
	$('#totaalpakket').append('<input name="data[sort]" value="' + mij + '.' + branche + '">');
	//$('#totaalpakket').get(0).setAttribute('action', url);
	//y($('#totaalpakket').length);
	var form = document.getElementById('totaalpakket');
	
	form.submit();
	return false;
}

function submitComparisonTurbo(fieldsetid,type)
{
	var form = document.getElementById('totaalpakket');    
	/* there are multiple action-fields in the form, set only the hidden, default input field */
	form['data[fieldset_id]'].value = fieldsetid;
	ignoreOnBeforeUnload = true;
	/*if (checkModified())*/
	//$('#send_message_form').remove();
	// form.submit();
	/* ['ave','lon','aeg','for','gen','uni']*/	
	$('#totaalpakket-action').val('server_fieldset_comparision');
	$('#vgl_table_'+fieldsetid).show();
	$('#vgl_body_'+fieldsetid).empty(); 
	$('#vgl_voortgang_'+fieldsetid).show();
	
	
	if(type == 'CMP  00001')
		var extra = '&data[comparison]=auto';
	
	if(type == 'CMP  00002')
		var extra = '&data[comparison]=rechtsbijstand';
	
	if(type == 'CMP  00004')
		var extra = '&data[comparison]=bromfiets';		
	
	$(jq('img.'+fieldsetid+'.vglloader')).attr('src',site_template_url+ 'images/ajax-loader-w.gif').show();
	//var comparisonList = ['amr','for','alz','orm','zee','aeg','lon','rea','nn','ave','gen','uni'];
	var comparisonList = ['amr,for','alz,orm','zee,aeg','lon,rea','nn,ave','gen,uni'];
	//var comparisonList = ['amr,for,alz,orm','zee,aeg,lon,rea','nn,ave,gen,uni'];
	//var comparisonList = ['amr,for,alz','orm,zee,aeg','lon,rea,nn','ave,gen,uni'];
	var comparisonListLength = comparisonList.length;
	var counter = 0;
	loadingAlert('show','Bezig met premievergelijking: ' + counter + '/' + comparisonListLength + '...');
	for(i=0;i<window.timeOuts.length;i++){
		window.clearTimeout(window.timeOuts[i]);}
	$.each(comparisonList, function(index, value) {		
		$('#maatschappij').val(value);
		$('#totaalpakket-action').val('single_fieldset_comparison');
		var data = $("#totaalpakket").serialize();
		$.ajax({
			type: 'POST',
			url: site_script_url + '/' + value,
			data: data,
			success: function(result) {
				$('#vgl_body_'+fieldsetid).append(result);
				counter ++;
				ldt('Bezig met premievergelijking: ' + counter + '/' + comparisonListLength + '...');
				if(counter == comparisonListLength)
				{					
					loadingAlert('hide','Klaar met berekeningen.');					
					$(jq('img.'+fieldsetid+'.vglloader')).attr('src',site_template_url+ 'images/accept.gif').show();
					setTimeout("$('#vgl_voortgang_'+fieldsetid).fadeOut();",1500);
					//$('#vgl_info').fadeIn();
					
					var mylist = $('#vgl_body_'+fieldsetid);
					var listitems = mylist.children('tr').get();
					listitems.sort(function(a, b) {
					   var compA = Number($(a).attr('order'));
					   var compB = Number($(b).attr('order'));
					   //var en = (Number(compA) < Number(compB));
					   //y(compA + ' - ' + compB + ' = ' + en);					   
					   if(compA==0 && compB!=0) return 1;
					   if(compA!=0 && compB==0) return -1;					   
					   return ((compA) < (compB)) ? -1 : ((compA) > (compB)) ? 1 : 0;
					})
					$.each(listitems, function(idx, itm) { mylist.append(itm); });
					
				}
			}
		}); 
	$('#totaalpakket-action').val('test_fieldset');		
	});
	return false;
}


function gotoComparison(form_id,fieldset_id,comparer)
{
	ignoreOnBeforeUnload = true;
	window.location.replace(site_script_url + '/set_fieldset_comparison/' + form_id + '/polis/'+fieldset_id+'/' + comparer);
}

function chooseCarInComparison(form_id,fieldset_id,v10001,v10142)
{
	ignoreOnBeforeUnload = true;
	window.location.replace(site_script_url + '/set_fieldset_comparison/' + form_id + '/polis/' + fieldset_id + '/' + v10001 + '.' + v10142);
}

function submitComparison(fieldsetid)
{
	var form = document.getElementById('totaalpakket');
    loadingAlert('show','Bezig met berekening premievergelijking...');
	/* there are multiple action-fields in the form, set only the hidden, default input field */
 	document.getElementById('totaalpakket-action').value = 'test_fieldset_comparison';
	form['data[fieldset_id]'].value = fieldsetid;
	ignoreOnBeforeUnload = true;
	/*if (checkModified())*/
	$('#send_message_form').remove();
	form.submit();
	return false;
}

function checkModified()
{
	return;
	var form = document.getElementById('totaalpakket');

	var field;
	var fcount = 0;
	var dcount = 0;
	var counted = false;

	for(var i = 0; i < form.elements.length; i++)
	{
		counted = false;
		field = form.elements[i];

		if(field.tagName == 'INPUT' && elemHasAttribute(field,'currentvalue'))
		{
			if(field.className == 'required' || field.type == 'submit')
				continue;

			fcount++;

			switch(field.type)
			{
				case 'hidden':
				case 'text':
					if(elemHasAttribute(field,'currentvalue') && field.value == field.getAttribute('currentvalue'))
					{
						field.disabled = 'disabled';
						dcount++;
						counted = true;
					}
				break;
				case 'checkbox':
				case 'radio':
					if(elemHasAttribute(field,'currentvalue'))
					{
						if(field.checked == (field.getAttribute('currentvalue') == 'true'))
						{
							field.disabled = 'disabled';
							dcount++;
							counted = true;
						}
					}
				break;
			}
		}
		else if(field.tagName == 'SELECT')
		{
			fcount++;

			if(elemHasAttribute(field,'currentvalue'))
			{
				if(field.value == field.getAttribute('currentvalue'))
				{
					field.disabled = 'disabled';
					dcount++;
					counted = true;
				}
			}
		}
		//alert(counted);
		//if(counted) alert('deze is niet gemist: ' + field.id);
	}

	if(fcount == dcount)
	{
		return confirm('Er zijn geen wijzigingen gevonden, wilt u toch opslaan?');
	}
	/*else
	{
		return confirm('Joehoe, er zijn ' + fcount + ' - ' + dcount + ' velden aangepast.');
	} */

	loadingAlert('show','Bezig met bevestigen...');

	return true;
}

function elemHasAttribute(elem,attr)
{
	return (
		elem.hasAttribute ?
		elem.hasAttribute(attr) :
		elem.getAttribute(attr) != null
	);
}

function storeCurrentFormValues()
{

	var form = document.getElementById('totaalpakket');
	var field, z;

	if(!form) return false;

	for(var i = 0; i < form.elements.length; i++)
	{
		field = form.elements[i];

		if(field.tagName == 'INPUT')
		{
			if(elemHasAttribute(field,'value') && !elemHasAttribute(field,'currentvalue'))
			{
				switch(field.type)
				{
					case 'hidden':
					case 'text':
						z = document.createAttribute('currentvalue');
						z.value = field.value;
						field.setAttributeNode(z);
					break;
					case 'checkbox':
					case 'radio':
						z = document.createAttribute('currentvalue');
						z.value = field.checked ;//
						field.setAttributeNode(z);
					break;
				}
			}
		}
		else if(field.tagName == 'SELECT')
		{
			if(!elemHasAttribute(field,'null') && !elemHasAttribute(field,'currentvalue'))
			{
				z = document.createAttribute('currentvalue');
				z.value = field.value;
				field.setAttributeNode(z);
			}
		}
	}
}

function updateCaravanDekking(el, ob)
{
	var x = getObj(el,ob);
	var fieldsetID = x.fieldsetID;

	var caravan_uitgebreid = document.getElementById('caravan-uitgebreid');
	var caravan_beperkt = document.getElementById('caravan-beperkt');

	moveOutOfDOM(caravan_uitgebreid);
	moveOutOfDOM(caravan_beperkt);

	// Uitgebreid
	if(x.checked)
	{
		if(x.value == '1')
		{
			moveIntoDOM('caravan-uitgebreid');
		}
		else if(x.value == '2')
		{
			moveIntoDOM('caravan-beperkt');
			//var uitbreiding = document.getElementById('f-' + fieldsetID + '.89124');
			//uitbreiding.value = '00002';
			//uitbreiding.disabled = 'disabled';
		}
	}
}

function caravanDekkingBeperkt(el, ob)
{
    /*
	var x = getObj(el,ob);
	var fieldsetID = x.fieldsetID;

	var dekkingen = document.caravanDekkingBeperktFields[fieldsetID];

	var enabled = 0, j;
	var dekkingChecked;

	for(var i = 0; i < 3; i++)
	{
		for(j = 0; j < 2; j++)
		{
			x = dekkingen[i][j];
			if(i != 0)
				x.disabled = '';

			if(x.value == '1' && x.checked)
			{
				enabled++;
				dekkingChecked = i;
			}
		}
	}

	if(enabled == 0)
	{
		alert('Er moet ten minste 1 dekking geselecteerd zijn');
	}
    */
}

function caravanVerzekerdBedrag(el, ob)
{
	var x = getObj(el,ob);
	var fieldsetID = x.fieldsetID;
	var field;
	var sum = 0;

	var fields = Array('89121', 'V0053', 'V0054');

	for(var i = 0; i < fields.length; i++)
	{
		field = document.getElementById('f-' + fieldsetID + '.' + fields[i]);
		sum += isNaN(parseInt(field.value)) ? 0 : parseInt(field.value);
	}

	field = document.getElementById('f-' + fieldsetID + '.89122');
	field.value = sum;
}

function enabledAlert(status)
{
	alert('Om over te gaan op de status \'' + status +
	'\' moeten eerst\neen aantal velden aangepast worden.');
	gotoNextErrorLabel('first');
}
function enabledAlertOnVD(status)
{
	alert('Om over te gaan op de status \'' + status +
	'\' moet eerst\ncontact opgenomen worden met V.C.N. i.v.m. acceptatienormen.');
}

function oldTimerToggleExtraEigenRisico(el, ob)
{
	var x = getObj(el,ob);
	var taxWaarde = document.getElementById('f-' + x.fieldsetID + '.10040').value;

	if (document.getElementById('f-' + x.fieldsetID + '.V9001').value == "2" && taxWaarde >= 7000 && taxWaarde <= 150000)	{

		var startKorting = 0;

		if (taxWaarde >= 7000 && taxWaarde <= 50000) {
			startKorting = 20;
		} else if (taxWaarde >= 50001 && taxWaarde <= 75000){
			startKorting = 15;
		} else if (taxWaarde >= 75001 && taxWaarde <= 150000){
			startKorting = 5;
		}

		var V0599 = document.getElementById('f-' + x.fieldsetID + '.V0599');

		if (startKorting != 0) {
			V0599.options[0].text = '0 EUR - geen korting';
			V0599.options[1].text = '500 EUR - ' + startKorting + '% korting';
			V0599.options[2].text = '750 EUR - ' + (startKorting+5) + '% korting';
			V0599.options[3].text = '1000 EUR - ' + (startKorting+10) + '% korting';
			V0599.options[4].text = '1500 EUR - ' + (startKorting+15) + '% korting';
			V0599.options[5].text = '2000 EUR - ' + (startKorting+20) + '% korting';
		}

		V0599.style.display = '';
		V0599.previousSibling.style.display = '';
		document.getElementById('f-' + x.fieldsetID + '.V0599').style.display = '';
	} else {
		var V0599 = document.getElementById('f-' + x.fieldsetID + '.V0599');
		V0599.options[0].selected = true;
		V0599.style.display = 'none';
		V0599.previousSibling.style.display = 'none';
		document.getElementById('f-' + x.fieldsetID + '.V0599').style.display = 'none';
	}

}

function relatieDisablePlaatsWoonplaats(el,ob){

	var x = getObj(el,ob);
	var postcode = document.getElementById('f-' +  x.fieldsetID + '.00011').value;

	if(postcode==''){
		document.getElementById('f-' + x.fieldsetID + '.00008').disabled = true;
		document.getElementById('f-' + x.fieldsetID + '.00010').disabled = true;
	} else {
		$('checkAdres').style.display = 'none';
	}
}

function changePremieBetalingDela(current,changeTo){

	var theSelects = document.getElementsByTagName('select');
	for (i=0;i < theSelects.length; i++){
	  		if(theSelects[i].id.indexOf("89682")>0){
			var dekkingFieldSetId = (theSelects[i].id.replace(/f-|.89682/g,""));
			if(current != theSelects[i].id){
				document.getElementById('f-'+dekkingFieldSetId+'.89682').value = changeTo;
				//$('#f-'+dekkingFieldSetId+'.89682').val(changeTo);
			}
		}
	}
}

function onChangePremieBetalingDela(el,ob){
	var theSelects = document.getElementsByTagName('select');
	var doStuff = false;
	for (i=0;i < theSelects.length; i++){
  		if(theSelects[i].id.indexOf("89682")>0){
			var dekkingFieldSetId = (theSelects[i].id.replace(/f-|.89682/g,""));
			var theSelect = document.getElementById('f-'+dekkingFieldSetId+'.89682');
			if ((theSelect.value == '00009' || theSelect.getAttribute('currentvalue') == '00009') && theSelect.getAttribute('currentvalue') != theSelect.value) {
				doStuff = true;
				//theSelect.getAttribute('currentvalue').value = '';
			}
		}
	}
	
	var changeTo='00001';
	if(doStuff){
		if(this.value=='00009'){
			changeTo='00009';
		}
		changePremieBetalingDela(this.id,changeTo);
	}
	return;
}

function monutaInsured(personNumber)
{
	// loop all where fieldset_parent_id_ + personNumber = the same...
	var verzekerd = [];
	if($(jq('personNumber_' + personNumber)).length > 0)
	{
		var fieldsetId = $(jq('personNumber_' + personNumber)).val();
		verzekerd[0] = $(jq('x-' + fieldsetId + '.V0640')).attr('checked');
		var geld = $(jq('x-' + fieldsetId + '.V0641')).attr('checked')
	}
}

// function monuta hangt aan alle checkboxes op het formulier
function monuta(el,ob)
{
	var x = getObj(el,ob);
	var fieldsetId = x.fieldsetID;
	var checked = x.checked;
	var personNumber = $(jq('f-'+fieldsetId+'.V9008')).val();
	var labelClicked = x.id.match(/[^\.]*$/)[0];
	var monutaProduct = 'geld';
	var verzekerdLabel = 'V0641';
	var gratisLabel = 'V0639';
	if (labelClicked == 'V0640' || labelClicked == 'V0638') monutaProduct = 'uitgebreid';
	var verzekeringClicked = false;
	if (labelClicked == 'V0640' || labelClicked == 'V0641') verzekeringClicked = true;
	if (monutaProduct=='uitgebreid') {verzekerdLabel = 'V0640'; gratisLabel = 'V0638';}
	var parentOneFieldSetId = $(jq('personNumber_' + 0)).val();

	var parentTwoFieldSetId = false;
	if($(jq('personNumber_' + 1)).length > 0)
		parentTwoFieldSetId = $(jq('personNumber_' + 1)).val();

	var changeToStatus = (x.checked) ? 1 : 2;

	//if(labelClicked=='V0638') alert(changeToStatus);

	if($(jq('x-' + parentOneFieldSetId + '.' + verzekerdLabel)).length > 0)
		var parentOneInsured = $(jq('x-' + parentOneFieldSetId + '.' + verzekerdLabel)).attr('checked');
	else
		var parentOneInsured = false;

	if ($(jq('f-' + parentTwoFieldSetId + '.' + verzekerdLabel).length > 0) && $(jq('f-' + parentTwoFieldSetId + '.' + 'V9008')).val() == 1)
		var parentTwoInsured = $(jq('x-' + parentTwoFieldSetId + '.' + verzekerdLabel)).attr('checked');
	else
		var parentTwoInsured = false;

	if (personNumber <= 1 && verzekeringClicked)
	{
		if(parentOneInsured == false && parentTwoInsured == false)
		{
			var setKidsToGratis = 0;
			monutaToggleKids(monutaProduct,2,parentOneFieldSetId,verzekerdLabel,gratisLabel,parentOneInsured,parentTwoInsured,labelClicked);
		}
		if( (parentOneInsured == true && parentTwoInsured == false && personNumber == 0) || (parentOneInsured == false && parentTwoInsured == true && personNumber == 1) )
		{
			var setKidsToGratis = 1;
			monutaToggleKids(monutaProduct,1,parentOneFieldSetId,verzekerdLabel,gratisLabel,parentOneInsured,parentTwoInsured,labelClicked);
		}

		monutaToggleAddToPolis(monutaProduct,parentOneFieldSetId,parentOneInsured,parentTwoInsured);

	}

	// toggle verzekering
	if(verzekeringClicked)
	{
		monutaToggleVerzekering(monutaProduct,personNumber,changeToStatus,parentOneFieldSetId,verzekerdLabel,gratisLabel);
	}

	// toggle gratis
	if(!verzekeringClicked && labelClicked != 'V0642')
	{
		monutaToggleGratisZelfstandig(monutaProduct,personNumber,changeToStatus,parentOneFieldSetId,fieldsetId,verzekerdLabel,gratisLabel);
	}

	// carenzclausule
	if(labelClicked == 'V0642')
	{
		if($(jq('gezondheidsverklaring_' + fieldsetId)).length > 0)
			$(jq('gezondheidsverklaring_' + fieldsetId)).css('display',(changeToStatus == 1) ? 'none' : '');
		// Geen optierecht mogelijk bij carenzjaren
		if($(jq('f-' + fieldsetId + '.V0637')).length > 0)
		{
			$(jq('f-' + fieldsetId + '.V0637')).val((changeToStatus == 1) ? 2 : 1);
			$(jq('x-' + fieldsetId + '.V0637')).attr('checked',(changeToStatus == 1) ? false : true);
		}
	}

	if($(jq('x-' + fieldsetId + '.V0637')).length>0)
		$(jq('x-' + fieldsetId + '.V0637')).attr("disabled","disabled");

}

function monutaSetupAddPolisTo(el,ob)
{

	var x = getObj(el,ob);
	var fieldsetId = x.fieldsetID;

	var verzekerde = $(jq('personName_' + 0)).val();
	var partner = false

	if($(jq('personName_' + 1)).length > 0)
		partner = $(jq('personName_' + 1)).val();
	monutaProduct = 'geld';

	if($(jq('gratis_' + monutaProduct + '_' + fieldsetId)).length > 0)
	{
		//if($$('label:([for=f-' + fieldsetId + '.V0647.0])')[0])
			$('label[for=f-' + fieldsetId + '.V0647.0]').html(verzekerde);
		//if($$('label:([for=f-' + fieldsetId + '.V0648.0])')[0])
			$('label[for=f-' + fieldsetId + '.V0648.0]').html(verzekerde);

		if(partner)
		{
			//if($$('label:([for=f-' + fieldsetId + '.V0647.1])')[0])
				$('label[for=f-' + fieldsetId + '.V0647.1]').html(partner);
			//if($$('label:([for=f-' + fieldsetId + '.V0648.1])')[0])
				$('label[for=f-' + fieldsetId + '.V0648.1]').html(partner);
		}
	}

	for(i=0;i<8;i++)
	{
		if ($(jq('personNumber_'+i)).length > 0)
			fieldsetId = $(jq('personNumber_'+i)).val();
		else
			fieldsetId = 0;

		// Show the premies next to the verzekerings checkboxes
		if(fieldsetId > 0)
		{

			$(jq('rightLabel_'+ fieldsetId + '.V0640')).html('');
			if($(jq('f-'+ fieldsetId + '.V0651')).val() != '0')
				$(jq('rightLabel_'+ fieldsetId + '.V0640')).html('&euro; ' + $(jq('f-'+ fieldsetId + '.V0651')).val());


			if($(jq('rightLabel_'+ fieldsetId + '.V0641')).length > 0)
				$(jq('rightLabel_'+ fieldsetId + '.V0641')).html('');
				if($(jq('f-'+ fieldsetId + '.V0652')).length > 0)
					if($(jq('f-'+ fieldsetId + '.V0652')).val()!= '0')
						$(jq('rightLabel_'+ fieldsetId + '.V0641')).html('&euro; ' + $(jq('f-'+ fieldsetId + '.V0652')).val());

			if(i==0)
			{
				if($(jq('x-'+ fieldsetId + '.V0640')).length > 0)
				var parentOneInsuredUitgebreid = $(jq('x-'+ fieldsetId + '.V0640')).attr('checked');
			if($(jq('x-'+ fieldsetId + '.V0641')).length > 0)
				var parentOneInsuredGeld = $(jq('x-'+ fieldsetId + '.V0641')).attr('checked');
			}

			if(i==1)
			{
				var parentTwoInsuredUitgebreid = $(jq('x-'+ fieldsetId + '.V0640')).attr('checked');
				var parentTwoInsuredGeld = $(jq('x-'+ fieldsetId + '.V0641')).attr('checked');
			}

			if($(jq('gratis_uitgebreid_' + fieldsetId)).length > 0)
			{
				$(jq('f-' + fieldsetId + '.' + 'V0647' + '.0')).attr('disabled',(parentOneInsuredUitgebreid == true) ? '' : 'disabled');
				$(jq('f-' + fieldsetId + '.' + 'V0647' + '.1')).attr('disabled',(parentTwoInsuredUitgebreid == true) ? '' : 'disabled');

				if(!(parentOneInsuredUitgebreid == true || parentTwoInsuredUitgebreid == true))
				{
					$(jq('x-' + fieldsetId + '.V0638')).removeAttr("checked");
					$(jq('f-' + fieldsetId + '.V0638')).val(2);
					$(jq('x-' + fieldsetId + '.V0638')).attr('disabled','disabled');

				}

			}

			if($(jq('gratis_geld_' + fieldsetId)).length > 0)
			{
				$(jq('f-' + fieldsetId + '.' + 'V0648' + '.0')).attr('disabled',(parentOneInsuredGeld == true) ? '' : 'disabled');
				$(jq('f-' + fieldsetId + '.' + 'V0648' + '.1')).attr('disabled',(parentTwoInsuredGeld == true) ? '' : 'disabled');

				if(parentOneInsuredGeld == false && parentTwoInsuredGeld == false)
				{
					$(jq('x-' + fieldsetId + '.V0639')).removeAttr("checked");
					$(jq('f-' + fieldsetId + '.V0639')).val(2);
					$(jq('x-' + fieldsetId + '.V0639')).attr('disabled','disabled');
				}

			}

		}
	}
}

function monutaToggleAddToPolis(monutaProduct,parentOneFieldSetId,parentOneInsured,parentTwoInsured)
{
	for(i=0;i<6;i++)
	{
		if ($(jq('personNumber_'+i)).length > 0)
			fieldsetId = $(jq('personNumber_'+i)).val();
		else
			fieldsetId = 0;

		if($(jq('gratis_' + monutaProduct + '_' + fieldsetId)).length > 0)
		{
			// setup 'meeverzekeren op polis van'
			relateToLabel = 'V0648';
			if(monutaProduct == 'uitgebreid')
				relateToLabel = 'V0647';

			$(jq('f-' + fieldsetId + '.' + relateToLabel + '.0')).attr('disabled',(parentOneInsured == true) ? '' : 'disabled');
			$(jq('f-' + fieldsetId + '.' + relateToLabel + '.1')).attr('disabled',(parentTwoInsured == true) ? '' : 'disabled');

			if($(jq('f-' + fieldsetId + '.' + relateToLabel + '.0')).attr('disabled'))
				$(jq('f-' + fieldsetId + '.' + relateToLabel + '.0')).removeAttr("checked");

			if($(jq('f-' + fieldsetId + '.' + relateToLabel + '.1')).attr('disabled'))
				$(jq('f-' + fieldsetId + '.' + relateToLabel + '.1')).removeAttr("checked");

			if((parentOneInsured && !parentTwoInsured) || (!parentOneInsured && parentTwoInsured))
				if(parentOneInsured)
					$(jq('f-' + fieldsetId + '.' + relateToLabel + '.0')).attr('checked','checked');
				else
					$(jq('f-' + fieldsetId + '.' + relateToLabel + '.1')).attr('checked','checked');
		}
	}
}

function monutaToggleKids(monutaProduct,changeToStatus,parentOneFieldSetId,verzekerdLabel,gratisLabel,parentOneInsured,parentTwoInsured,labelClicked)
{
	// loop through all fieldsets
	for(i=0;i<8;i++)
	{
		if ($(jq('personNumber_'+i)).length > 0)
			fieldsetId = $(jq('personNumber_'+i)).val();
		else
			fieldsetId = 0;

		if($(jq('gratis_' + monutaProduct + '_' + fieldsetId)).length > 0 && $(jq('f-' + fieldsetId + '.10251')).val() < 18)
		{
			var personNumber = $(jq('f-' + fieldsetId + '.V9008')).val();
			// als gratis ook uitzetten...
			//alert('x-' + fieldsetId + '.' + gratisLabel + ': ' + $('x-' + fieldsetId + '.' + gratisLabel).checked + ', changeToStatus: ' + changeToStatus);

			gratisLabelValue = $(jq('x-' + fieldsetId + '.' + gratisLabel)).attr('checked');

			//alert('x-' + fieldsetId + '.' + gratisLabel + ': ' + $('x-' + fieldsetId + '.' + gratisLabel).checked + ', changeToStatus: ' + changeToStatus);
			//if(!($('x-' + fieldsetId + '.' + gratisLabel).checked == false && changeToStatus == 2))
			/* */
			//if(gratisLabelValue == true || changeToStatus == 1)
			if(
				(gratisLabelValue == true  && changeToStatus == 2)
				||
				(gratisLabelValue == true  && changeToStatus == 1)
				||
				(gratisLabelValue == false && changeToStatus == 1)
				)
			{
				monutaToggleGratisZelfstandig(monutaProduct,personNumber,changeToStatus,parentOneFieldSetId,fieldsetId,verzekerdLabel,gratisLabel);
				monutaToggleVerzekering(monutaProduct,personNumber,changeToStatus,parentOneFieldSetId,verzekerdLabel,gratisLabel);
			}

			// disable gratis optie
			if(parentOneInsured == false && parentTwoInsured == false)
			{
				$(jq('x-' + fieldsetId + '.' + gratisLabel)).removeAttr("checked");
				$(jq('f-' + fieldsetId + '.' + gratisLabel)).val(2);
				$(jq('x-' + fieldsetId + '.' + gratisLabel)).attr('disabled','disabled');
			}
			else
			{
				$(jq('x-' + fieldsetId + '.' + gratisLabel)).removeAttr("disabled");
			}

		}
	}
}

function monutaToggleVerzekering(monutaProduct,personNumber,changeToStatus,parentOneFieldSetId,verzekerdLabel,gratisLabel)
{
	var fieldsetId = $(jq('personNumber_' + personNumber)).val();
	$(jq(monutaProduct + '_' + fieldsetId)).css('display',(changeToStatus == 1) ? '' : 'none');
	$(jq('x-' + fieldsetId + '.' + verzekerdLabel)).attr('checked',(changeToStatus == 1) ? true : false);
	$(jq('f-' + fieldsetId + '.' + verzekerdLabel)).val((changeToStatus == 1) ? 1 : 2);

	if($(jq('carenzclausule_' + fieldsetId)).length > 0 && $(jq('x-' + fieldsetId + '.' + 'V0641')).length)
		$(jq('carenzclausule_' + fieldsetId)).css('display',(Number($(jq('f-' + fieldsetId + '.' + '10251')).val()) >= 25 && ($(jq('x-' + fieldsetId + '.' + 'V0640')).attr('checked') == true || $(jq('x-' + fieldsetId + '.' + 'V0641')).attr('checked') == true)) ? '' : 'none');

	var carenzclausule = false;
	if($(jq('x-' + fieldsetId + '.' + 'V0642')).length > 0)
 		carenzclausule = $(jq('x-' + fieldsetId + '.' + 'V0642')).attr('checked');

	if($(jq('gezondheidsverklaring_' + fieldsetId)).length > 0)
		if($(jq('x-' + fieldsetId + '.' + 'V0640')).attr('checked') == false && $(jq('x-' + fieldsetId + '.' + 'V0641')).attr('checked') == false || carenzclausule)
			$(jq('gezondheidsverklaring_' + fieldsetId)).hide();
		else
			$(jq('gezondheidsverklaring_' + fieldsetId)).show();

	if(monutaProduct == 'geld')
	{
		if($(jq('zelfstandig_'+ monutaProduct +'_begunstigde_' + fieldsetId)).length > 0)
		{
			$(jq('zelfstandig_'+ monutaProduct +'_begunstigde_' + fieldsetId)).css('display',(changeToStatus == 1) ? '' : 'none');
		}
	}

}

function monutaToggleGratisZelfstandig(monutaProduct,personNumber,changeToStatus,parentOneFieldSetId,fieldsetId,verzekerdLabel,gratisLabel)
{
	// alert('product: ' + monutaProduct + ', fieldsetId: ' + fieldsetId + ', changeToStatus: ' + changeToStatus + ', gratisLabel: ' + gratisLabel)

	// show some respect for the niet gratis meeverzerde.. keep that value intact...
	gratisLabelValue = $(jq('x-' + fieldsetId + '.' + gratisLabel)).attr('checked');

	var premieLabel = (gratisLabel == 'V0638') ? 'V0651' : 'V0652';
	var hasPremie = (Number($(jq('f-' + fieldsetId + '.' + premieLabel)).val()) > 0)

	// verzekerde is set to not gratis, zelfstandig

	//alert($('f-' + fieldsetId + '.10145').value + ' - ' + $('f-' + fieldsetId + '.V0653').value + ' - ' + fieldsetId + ' gratis: ' + gratisLabelValue + ', premie? ' + hasPremie)

	//if(gratisLabelValue != false && hasPremie)
	//{
		$(jq('zelfstandig_' + monutaProduct + '_' + fieldsetId)).css('display',(changeToStatus == 1) ? 'none' : '');
		$(jq('gratis_' + monutaProduct + '_polis_' + fieldsetId)).css('display',(changeToStatus == 1) ? '' : 'none');
		$(jq('x-' + fieldsetId + '.' + gratisLabel)).attr('checked',(changeToStatus == 1) ? 'checked' : '');
		$(jq('f-' + fieldsetId + '.' + gratisLabel)).val((changeToStatus == 1) ? 1 : 2);

		if($(jq('zelfstandig_begunstigde_' + fieldsetId)).length > 0)
		{
			$(jq('zelfstandig_begunstigde_' + fieldsetId)).css('display',(changeToStatus == 1) ? 'none' : '');
		}

	//}
}


function monutaCalcEndDate(el,ob)
{
	if(!$(jq('fieldset_parent_id_0')).length > 0)
		return;

	var x = getObj(el,ob);
	var fieldsetId    = x.fieldsetID;
	var ingangsDatum  = $(jq('f-' + $(jq('fieldset_parent_id_0')).val() + '.10008')).val();
	var ingangsJaar   = ingangsDatum.substring(6,10);
	var ingangsMaand  = ingangsDatum.substring(3,5);
	var ingangsDag    = ingangsDatum.substring(0,2);

	// V0635 en V0636 -> premiebetalingstermijnen
	// eerst periode bepalen...
	for(i=0;i<8;i++)
	{
		fieldsetId = 0;
		if ($(jq('personNumber_'+i)).length > 0)
			fieldsetId = $(jq('personNumber_'+i)).val();

		if($(jq('f-' + fieldsetId + '.V0635')).length > 0)
		{
			var geboorteDatum = $(jq('f-'+fieldsetId+'.10633')).val();
			var geboorteJaar  = geboorteDatum.substring(6,10);
			var geboorteMaand = geboorteDatum.substring(3,5);
			var geboorteDag   = geboorteDatum.substring(0,2);

			var ingangsMaandDag  = ingangsMaand + ingangsDag;
			var geboorteMaandDag = geboorteMaand + geboorteDag;

			x = Number((Number(ingangsMaandDag) >= Number(geboorteMaandDag)) ? 0 : -1);
			var leeftijdBijIngangsdatum = (ingangsJaar - geboorteJaar + x );

			// update text and hidden labels on screen...
			if($(jq('personAge_' + i)).length > 0)
			{
				$(jq('personAge_' + i)).html('<strong>' + leeftijdBijIngangsdatum + '</strong>');
				$(jq('f-' + fieldsetId + '.10251')).val(leeftijdBijIngangsdatum);
			}
			// loop V0635 and V0636
			var premieBetalingsLabels = new Array("V0635","V0636");

			for(var pbl=0; pbl<premieBetalingsLabels.length; pbl++ )
			{

				var y = Number((Number(ingangsMaandDag) >= Number(geboorteMaandDag)) ? 0 : -1);

				if($(jq('f-' + fieldsetId + '.' + premieBetalingsLabels[pbl])).length > 0)
				{
					var labelValue = $(jq('f-' + fieldsetId + '.' + premieBetalingsLabels[pbl])).val();
					var delta;
					var dag;
					var maand;
					switch(labelValue)
					{
						// koopsom
						case 'k':
						case '2010':
							delta = 0;
							dag = ingangsDag;
							maand = ingangsMaand;
						break;
						// tot 60 jarige leeftijd
						case '60':
						case '2023':
						case '2013':
							delta = (60 - leeftijdBijIngangsdatum + y);
							dag = geboorteDag;
							maand = geboorteMaand;
						break;
						// tot 65 jarige leeftijd
						case '65':
						case '2024':
						case '2014':
							delta = (65 - leeftijdBijIngangsdatum + y);
							dag = geboorteDag;
							maand = geboorteMaand;
						break;
						// tot 85 jarige leeftijd
						case '85':
						case '2025':
						case '2015':
							delta = (85 - leeftijdBijIngangsdatum + y);
							dag = geboorteDag;
							maand = geboorteMaand;
						break;
						case '15':
							delta = 15;
							dag = ingangsDag;
							maand = ingangsMaand;
						break;
						case '20':
							delta = 20;
							dag = ingangsDag;
							maand = ingangsMaand;
						break;
						case '25':
							delta = 25;
							dag = ingangsDag;
							maand = ingangsMaand;
						break;
						case '30':
							delta = 30;
							dag = ingangsDag;
							maand = ingangsMaand;
						break;
					}
					if(delta >= 0)
					{
						var endYear = (delta + Number(ingangsJaar));
						var endDateLabel = (premieBetalingsLabels[pbl] == 'V0635') ? 'V0649' : 'V0650';
						// enddate
						$(jq('f-' + fieldsetId + '.' + endDateLabel)).val(dag + '/' + maand + '/' + endYear);
					}
				}

			}
		}
	}
}

function monutaGetPremies(fieldsetId)
{
	var url = site_script_url + '/get_monuta_premie/' + $('#form_id').val() + '/' + fieldsetId + '/';

	// reset all premies
	var polisFieldsetId = Number($(jq('fieldset_parent_id_0')).val());
	$(jq('fro-'+ polisFieldsetId + '.10145')).html('0');
	$(jq('f-'+ polisFieldsetId + '.10145')).val('0');
	$(jq('f-'+ polisFieldsetId + '.V0653')).val('0');
	$(jq('premie_tab_' + polisFieldsetId)).html('<div class="priceTab">&euro; 0</div><img src="images/tick.gif" width="16" height="12" border="0" align="absmiddle" />Monuta uitvaart');
	
	//$(jq('premie_title_' + polisFieldsetId)+' > .priceTab').html('&euro; 0');
	//$(jq('premie_title_' + polisFieldsetId)).find('.priceTab').html('&euro;t 0');
	
	$(jq('fro-' + polisFieldsetId + '.10145')).html('&euro; 0');


	for(i=-1;i<7;i++)
	{
		var dekkingFieldsetId = 0;
		if ($(jq('personNumber_'+i)).length > 0)
			dekkingFieldsetId = $(jq('personNumber_'+i)).val();

		if(dekkingFieldsetId > 0)
		{
			// premie uitgebreid
			$(jq('f-'+ dekkingFieldsetId + '.V0651')).val(0);
			$(jq('f-'+ dekkingFieldsetId + '.V0652')).val(0);
			$(jq('f-'+ dekkingFieldsetId + '.V0653')).val(0);
			$(jq('f-'+ dekkingFieldsetId + '.10145')).val(0);
			$(jq('person_title_' + dekkingFieldsetId)).html('');
			$(jq('rightLabel_' + dekkingFieldsetId + '.V0640')).html('');
			$(jq('rightLabel_' + dekkingFieldsetId + '.V0641')).html('');
		}
	}

	// get the subset of the form
	//var shizzle = Form.serializeElements($$('#monutaForm input,#monutaForm [class*=input]'));
	var shizzle = $("form #monutaForm input,#monutaForm [class*=input]").serialize();

	/* */
	// mmmhh, we are now posting the whole form cause some stuff on pakket level needs to be updated too...
	var oldAction = $(jq('totaalpakket-action')).val();
	$(jq('totaalpakket-action')).val('get_monuta_premie');

   	/*
	$('totaalpakket-action').disable();
	$('fieldset_id').disable();
	$('form_id').disable();
	$('sm').disable();
	$('content').disable();
	*/
	//$('fieldset_id').value = polisFieldsetId;
    jQuery.each(['totaalpakket-action','fieldset_id','form_id','sm'], function(){$(jq(this)).attr('disable','disable'); });
	var shizzle = $('#totaalpakket').serialize();

	$('#totaalpakket-action').val(oldAction);
	jQuery.each(['totaalpakket-action','fieldset_id','form_id','sm'], function(){$(jq(this)).removeAttr("checked"); });

	$.ajax({
		type: "POST",
		url: url,
		data: shizzle,
		success: function(response,statusText){
		    handleResponse(response,statusText);
		   }
	});

	return;
}

function y(content)
{
	$('#debugBox').show();
	$('#debugBox').append(content+'<br>');
}

function handleResponse(response,statusText)
{
		var json = response; //eval('(' + response + ')');
		// var json = transport.responseText.evalJSON();
		loadingAlert('hide');
		ldt('Ophalen premies succesvol.','ok','menu');
		showTemp('loadingDiv');
		var msg;

		jQuery.each(json, function(id) {

			var dekkingfieldsetId = id.replace(/\..+$/,'');
			var labelId = id.replace(/^.+\./,'');

			polisFieldsetId = json['monutaPolisFieldsetid']; //Number($('fieldset_parent_id_0').value);
			pakketFieldsetId = json['pakketFieldsetid']; // Number($('f-' + polisFieldsetId + '.pakketFieldsetid').value);

		  	msg = msg + '\ndekkingfieldsetId: ' + dekkingfieldsetId + ', labelId: ' + labelId + ', value: ' + json[id];

			if(labelId == 'koopsom')
			{
				koopsom = json[id];
			}
			if(labelId == 'faultcode')
			{
				alert('Don\'t panic.');
			}

			/*
			if(labelId == '10145' || labelId == 'V0653' && !(Number(dekkingfieldsetId) == polisFieldsetId))
			{
				$('f-' + dekkingfieldsetId + '.' + labelId).value = json[id];
				// $('f-' + dekkingfieldsetId + '.V0653').value = Number($('f-' + dekkingfieldsetId + '.V0653').value) + Number(koopsom);
			}*/

			//if(labelId == 'V0651p' || labelId == 'V0652p' || labelId == 'V0651k' || labelId == 'V0652k' || labelId == 'V0651' || labelId == 'V0652')
			if(labelId == 'V0651' || labelId == 'V0652')
			{

				if(dekkingfieldsetId==142500)
					alert('got it');

				$(jq('f-'+ dekkingfieldsetId + '.' + labelId)).val(json[id]);
				var verzekerdLabelId = (labelId == 'V0651') ? 'V0640' : 'V0641';
				$(jq('rightLabel_'+ dekkingfieldsetId + '.' + verzekerdLabelId)).html('');
				if(Number(json[id]) != '0')
					$(jq('rightLabel_'+ dekkingfieldsetId + '.' + verzekerdLabelId)).html('&euro; ' + json[id]);

				/* // if p then put in 10145 (periodiek), if k put in V0653 (koopsom)
				if(IsNumeric(json[id]))
				{
					if(premieBetaling == 'p')
						$('f-'+ dekkingfieldsetId + '.' + '10145').value = Number($('f-'+ dekkingfieldsetId + '.' + '10145').value) + Number(json[id]);
					else
						$('f-'+ dekkingfieldsetId + '.' + 'V0653').value = Number($('f-'+ dekkingfieldsetId + '.' + 'V0653').value) + Number(json[id]);
				}*/
			}

			if(labelId == 'monutaResolved')
			{
				$(jq('monutaResolved')).html('<pre>'+json[id]+'</pre>');
			}

			if(labelId == 'monutaRequest')
			{
				$(jq('monutaRequest')).html('<pre>'+json[id]+'</pre>');
			}

			if(labelId == 'monutaResponse')
			{
				$(jq('monutaResponse')).html(json[id]);
			}


			if(labelId == '10145' && (Number(dekkingfieldsetId) == polisFieldsetId))
			{
				if($(jq('fro-'+ polisFieldsetId + '.' + labelId)).length > 0)
				{
					var kpsm = ''; var koopsom = 0;
					if(Number(json[polisFieldsetId + '.V0653']) > 0)
					{
						var koopsom = json[polisFieldsetId + '.V0653'];
						kpsm = " / &euro; " + koopsom + '';
					}
					icon = 'tick'; var melding = '';
					var e = $(jq('label[for=f-'+ polisFieldsetId + '.87293]'));

					// remove any error on screen
					if($(jq('f-' + polisFieldsetId + '.87293.error')).length > 0)
						$(jq('f-' + polisFieldsetId + '.87293.error')).remove();

					if(json[polisFieldsetId + '.melding'])
					{
						melding = '<br>' + json[polisFieldsetId + '.melding'];
						if(json[polisFieldsetId + '.87293'] == '00001')
						{
							icon = 'bullet_error';
							e.innerHTML = 'Acceptatie-indicatie <a class="error">' + melding + '</a>';
							$(jq('fro-' + polisFieldsetId + '.87293')).html('Niet acceptabel');
						}
					}
					else
					{
						$(jq('fro-' + polisFieldsetId + '.87293')).html('Acceptabel');
						e.html('Acceptatie-indicatie');
					}

					// update polis
					$(jq('f-'+ polisFieldsetId + '.' + 'V0655')).val(json[polisFieldsetId + '.V0655']);
					$(jq('f-'+ polisFieldsetId + '.' + labelId)).val(json[polisFieldsetId + '.' + labelId]);
					$(jq('f-'+ polisFieldsetId + '.' + 'V0653')).val(json[polisFieldsetId + '.' + 'V0653']);
					
					$(jq('premie_tab_' + polisFieldsetId)).html('<div class="priceTab" style="float:right;">&euro; ' + json[id] + kpsm + '</div><img src="images/' + icon + '.gif" width="16" height="12" border="0" align="absmiddle" />Monuta uitvaart');
					$(jq('premie_tab_' + polisFieldsetId+' > .priceTab')).attr('class','tabx acceptatie_' + json[polisFieldsetId + '.87293']);
					$(jq('premie_title_' + polisFieldsetId)).html('&euro; ' + json[polisFieldsetId + '.10145'] + kpsm);
					$(jq('fro-' + polisFieldsetId + '.10145')).html('&euro; ' + json[polisFieldsetId + '.10145'] + kpsm);

					// update pakket
					var koopsomPakket         = json[pakketFieldsetId + '.V0653'];
					var nettopremiePakket     = json[pakketFieldsetId + '.10145'];
					var incassoPakket         = json[pakketFieldsetId + '.10019'];
					var brutopremie           = json[pakketFieldsetId + '.10020'];
					var assurantiebelasting   = json[pakketFieldsetId + '.10083'];
					var kpsmp = (Number(koopsomPakket) > 0) ? " / &euro; " + koopsom + '': '';

					$(jq('premie_tab_' + pakketFieldsetId)).html('<div class="priceTab" style="float:right;">&euro; ' + nettopremiePakket + kpsmp + '</div><img src="images/' + icon + '.gif" width="16" height="12" border="0" align="absmiddle" />Totaalpakket');

					//$(jq('premie_tab_' + pakketFieldsetId)).prev().addClass('notloaded');
					
					if($(jq('fro-' + pakketFieldsetId + '.10145')).length > 0 && typeof(pakketSetToReload)=='undefined')
					{
						var pakketSetToReload = true;
						//$(jq('fieldset-'+ pakketFieldsetId)).attr('loaded','false');
						$(jq('fieldset-'+ pakketFieldsetId)).removeAttr('loaded');
						$(jq('fieldset-'+ pakketFieldsetId)).html('<div class="dynamic-tab-pane-control tab-pane"><div class="tab-row"></div><center>Bezig met laden pakketgegevens...</center></div>');
					}
				}
			}

		});

	// remove the loaded attribute from the progress tab
	$('#progress').attr('loaded','false');
	//$('progress').innerHTML = "<div class='tab-page' id='progress' progress='1'><h2 class='tab notloaded'><span class='tabx'>Voortgang</span></h2>	<div class='tab-pane'><center>Bezig met laden voortgang...</center></div></div>";
	//$('#progress').html('<div class="dynamic-tab-pane-control tab-pane"><div class="tab-row"></div><center>Bezig met laden polis...</center></div>');

}


function replyBalloon()
{
	if($('#private').attr('checked'))
	{
		$('#form-reply-content').css('borderColor','#666666');
		$('#balloonPoint').attr('class','private');
	}
	else
	{
		$('#form-reply-content').css('borderColor','#e4e4e4');
		$('#balloonPoint').attr('class','arrow');
	}
}


maxL=256;
var bName = navigator.appName;
function taLimit(taObj) {
	if (taObj.value.length==maxL) return false;
	return true;
}

function taCount(taObj,Cnt) {
	objCnt=createObject(Cnt);
	objVal=taObj.value;
	if (objVal.length>maxL) objVal=objVal.substring(0,maxL);
	if (objCnt) {
		if(bName == "Netscape"){
			objCnt.textContent=maxL-objVal.length;}
		else{objCnt.innerText=maxL-objVal.length;}
	}
	return true;
}
function createObject(objId) {
	if (document.getElementById) return document.getElementById(objId);
	else if (document.layers) return eval("document." + objId);
	else if (document.all) return eval("document.all." + objId);
	else return eval("document." + objId);
}

var onlyOneTime = 0;
function permissionEntityChecker(agentcode,userid,obj)
{
	/*

	123 = agentcode
	480 = userid

	input id for agent:
	   input_123_0
	text id for agent:
	   agent_name_123
	the div:
	   row_123_0

	input id for user:
	   input_123_480
	text id for user:
	   user_fullname_123_480
	the div:
	   row_123_480

	*/

	// check the original - doe only een time
	var org_agentcode 	= $(jq('originalAgentcode')).val();
	var org_userid    	= $(jq('originalUserId')).val();
	var org_agentname	= $(jq('agent_name_' + org_agentcode)).html();
	var org_username 	= (org_userid != 0) ? $(jq('user_fullname_' + org_agentcode + '_' + org_userid)).html() : '';
	var agentname 		= $(jq('agent_name_' + agentcode)).html();
	var username  		= (userid != 0) ? $(jq('user_fullname_' + agentcode + '_' + userid)).html() : '';

	if(agentcode == 0 && userid == 0)
	{
		// alert('hoe lang is het lijstje: ' + $('selectedList').childNodes.length);
		$(jq('input_' + org_agentcode + '_' + org_userid)).checked = false;
	}

	onlyOneTime ++;
	if(onlyOneTime == 1)
	{
		if(org_agentcode == 0 && org_userid == 0)
		{
			$(jq('row_' + org_agentcode + '_' + org_userid)).css('backgroundColor','#FFFFFF');
			$(jq('input_' + org_agentcode + '_' + org_userid)).attr('checked',false);
		}
		else
		{
			if($(jq('input_' + org_agentcode + '_' + org_userid)).attr('checked'))
			{
				$(jq('row_' + org_agentcode + '_' + org_userid)).css('backgroundColor','#EDEBDD');
				var selectedText = (username == '') ? org_agentname : org_username + ', ' + org_agentname; // SP 20090204 removed 'Standaardinstellingen ' +
				
				
				//$("#selectedList").append($('#multipleSelectBox').html());
				//$("#selectedList").show();			
				
				var yaya = document.getElementById('multipleSelectBox').cloneNode(true);
				yaya.id = 'selected_' + org_agentcode + '_' + org_userid;
				yaya.innerHTML = selectedText;
				// insert 'm
				
				 document.getElementById('selectedList').appendChild(yaya);
				yaya.style.display = '';
				
				
			}
		}
	}

	if(obj.checked)
	{
		if(agentcode != 0 && userid != 0)
		{
			$(jq('row_' + agentcode + '_' + userid)).css('backgroundColor','#EDEBDD');
			var selectedText = username + ', ' + agentname;
		}
		else
		{
			$(jq('row_' + agentcode + '_' + userid)).css('backgroundColor','#EDEBDD');
			var selectedText = agentname; // SP 20090204 removed 'Standaardinstellingen ' +
		}
		
		

		if($(jq('user_' + agentcode + '_' + userid)))
			$(jq('user_' + agentcode + '_' + userid)).show();

		$('div.removeIfMultipleSelect').each(function(s)
		{
			//y('obj.checked');
			$(this).remove();
		});

				//$("#selectedList").append($('#multipleSelectBox').html());
				//$("#selectedList").show();
		
		
		var yoyo = document.getElementById('multipleSelectBox').cloneNode(true);
		yoyo.id = 'selected_' + agentcode + '_' + userid;
		yoyo.innerHTML = selectedText;
		// insert 'm
				
		document.getElementById('selectedList').appendChild(yoyo);
		yoyo.style.display = '';
		
	}
	else
	{
		$(jq('row_' + agentcode + '_' + userid)).css('backgroundColor','#FFFFFF');
		if($(jq('selected_' + agentcode + '_' + userid)).length)
			$(jq('selected_' + agentcode + '_' + userid)).remove();

		$('div.removeIfMultipleSelect').each(function(s)
		{
			//y('obj.checked else');
			$(this).remove();
		});

	}

	var selectedEntities = document.getElementById('selectedList').childNodes.length;
	
	// notification boxes
	if(selectedEntities > 0) {$(jq('copyBox')).show();} else {$(jq('copyBox')).hide();}
	if(selectedEntities == 0) {$(jq('noSelectionBox')).show();} else {$(jq('noSelectionBox')).hide();}
	
}

function setPermission(page,permissionId,obj)
{
	if(page=='permissions')
	{
		if(obj.checked)
		{
			$(jq('data[permissionId]'+ permissionId +'[active]')).val(1);
			if($(jq('data[permissionId]'+ permissionId +'[value]')).length)
				$(jq('data[permissionId]'+ permissionId +'[value]')).removeAttr("disabled");
		}
		else
		{
			$(jq('data[permissionId]'+ permissionId +'[active]')).val(0);
			if($(jq('data[permissionId]'+ permissionId +'[value]')).length)
			{
				$(jq('data[permissionId]'+ permissionId +'[value]')).attr('disabled','disabled');
				$(jq('data[permissionId]'+ permissionId +'[value]')).val('');
			}
		}
	}
	else
	{
		if(obj.checked)
		{
			$(jq('data'+ permissionId)).val(1);
			if($(jq('data[[value]]'+ permissionId)).length)
				$(jq('data[[value]]'+ permissionId)).removeAttr("disabled");
		}
		else
		{
			$(jq('data'+ permissionId)).val(0);
			if($(jq('data[[value]]'+ permissionId)).length)
			{
				$(jq('data[value]'+ permissionId)).attr('disabled','disabled');
				$(jq('data[value]'+ permissionId)).val('');
			}
		}
	}

}

function setPermissionToStandard(formName)
{
	$('#setToStandard').val(1);
	
	if(formName == undefined)
		document.permissionForm.submit();
	else
		eval('document.'+formName+'.submit();');
}

function IsNumeric(sText)
{
	return (isNaN(sText)?false:true);
}

function aflopendeReisverwijderVerzekerde(el,ob)
{
	var x = getObj(el,ob);
	var fieldsetID = x.fieldsetID;
	var theId = x.id.match(/[^\.]*$/);
	theID = theId[0];
	if(x.value==1 && document.getElementById('f-' + fieldsetID + '.' + theId).value == 2)
	{
			//don't delete the row - you are enabling a verzekerde
			document.getElementById('x-' + fieldsetID + '.V0622').checked = true;
			document.getElementById('f-' + fieldsetID + '.V0622').value = 1;
			return;
	}

	xId = x.id;

	if(theId=='V0622')
	{
		 xId = 'f-' + fieldsetID + '.106300';
	}
	if(theId=='V0623')
	{
		 xId = 'f-' + fieldsetID + '.106360';
	}
	if(theId=='V0624')
	{
		 xId = 'f-' + fieldsetID + '.106420';
	}
	if(theId=='V0625')
	{
		 xId = 'f-' + fieldsetID + '.106480';
	}
	if(theId=='V0626')
	{
		 xId = 'f-' + fieldsetID + '.106540';
	}
	if(theId=='V0627')
	{
		 xId = 'f-' + fieldsetID + '.106600';
	}

	for (var i=4; i>=0; --i)
	{
		var theId = xId.match(/[^\.]*$/);
		theId = theId/10+i;
		document.getElementById('f-' + fieldsetID + '.' + theId).value = '';

		switch(theId)
		{
			case 10630:
				document.getElementById('x-' + fieldsetID + '.V0622').checked = false;
				document.getElementById('f-' + fieldsetID + '.V0622').value = 2;
			break;
			case 10636:
				document.getElementById('x-' + fieldsetID + '.V0623').checked = false;
				document.getElementById('f-' + fieldsetID + '.V0623').value = 2;
			break;
			case 10642:
				document.getElementById('x-' + fieldsetID + '.V0624').checked = false;
				document.getElementById('f-' + fieldsetID + '.V0624').value = 2;
			break;
			case 10648:
				document.getElementById('x-' + fieldsetID + '.V0625').checked = false;
				document.getElementById('f-' + fieldsetID + '.V0625').value = 2;
			break;
			case 10654:
				document.getElementById('x-' + fieldsetID + '.V0626').checked = false;
				document.getElementById('f-' + fieldsetID + '.V0626').value = 2;
			break;
			case 10660:
				document.getElementById('x-' + fieldsetID + '.V0627').checked = false;
				document.getElementById('f-' + fieldsetID + '.V0627').value = 2;
			break;
		}
	}
}

function aflopendeReisKopieerRelatieGegevens(el,ob)
{
	var x = getObj(el,ob);
	var fieldsetID = x.fieldsetID;
	var j = 0;
	var fieldset;
	for ( var i=fieldsets.length-1; i>=0; --i )
	{
		if(fieldsets[i]){
			if(j==0 && IsNumeric(fieldsets[i]))
			{
				var laagsteFieldSetId = fieldsets[i]; // laagste fieldsetid = relatiefieldset?
				j=1;
			}
		  	if(IsNumeric(fieldsets[i]))
		  	{
		  		if(fieldsets[i] < laagsteFieldSetId) laagsteFieldSetId = fieldsets[i];
		  	}
		}
	}

	var relatieVelden =   new Array("00002","00003","00004","00029","00044",
									"02000","02001","02002","02008","02005",
									"02100","02101","02102","02103","02104",
									"02110","02111","02112","02113","02114",
									"02120","02121","02122","02123","02124",
									"02130","02131","02132","02133","02134");

	var verzekerden =     new Array("10630","10631","10632","10633","10634",
									"10636","10637","10638","10639","10640",
									"10642","10643","10644","10645","10646",
									"10648","10649","10650","10651","10652",
									"10654","10655","10656","10657","10658",
									"10660","10661","10662","10663","10664");
	var fieldCount = 0;
	var verzekerdeTickBoxId = 7;
	var tickBox = false;
	for ( var i=relatieVelden.length-1; i>=0; --i )
	{
		var xx = document.getElementById('f-' + fieldsetID + '.' + verzekerden[i]);
		fieldCount ++;
		if(fieldCount <= 5)
		{
			if(document.getElementById('f-' + laagsteFieldSetId + '.' + relatieVelden[i]).value.length > 0) tickBox = true;
		}
		if(fieldCount == 5)
		{
				if(tickBox){
					 //alert('.V062' + verzekerdeTickBoxId);
					 document.getElementById('x-' + fieldsetID + '.V062' + verzekerdeTickBoxId).checked = true;
					 document.getElementById('f-' + fieldsetID + '.V062' + verzekerdeTickBoxId).value = 1;
				}
				fieldCount = 0;
				verzekerdeTickBoxId --;
				tickBox = false;
		}
		document.getElementById('f-' + fieldsetID + '.' + verzekerden[i]).value = document.getElementById('f-' + laagsteFieldSetId + '.' + relatieVelden[i]).value;
	}
}

function incassowijze_rc(el,ob)
{
	var x = getObj(el,ob);
	$('.input[id^="' + x.id + '"]').click(function () {
		if($(this).val()=='91000')
      		$('#incasso_warning').slideUp('fast');
      	else
      		$('#incasso_warning').slideDown('fast');
    });
}


function toggleDisplayChildren(el, ob)
{
	var x = getObj(el,ob);
	var k = document.getElementById('tab-page-relatie-kinderen');
	var b;

	if(x.value != '00099' && x.value != '')
	{
		k.style.display = '';
		if(k.tabPage)
		{
			k.tabPage.tab.style.display = '';
		}
		for(var i = 1; i < 6; i++)
		{
			b = document.getElementById('kinderen_' + i);
			b.style.display = (i <= x.value) ? '':'none';
		}
	}
	else
	{
		if(k.tabPage)
			k.tabPage.tab.style.display = 'none';

		k.style.display = 'none';
	}
}


function toggleDisplayPartner(el, ob)
{
	var x = getObj(el,ob);
	var k = document.getElementById('tab-page-relatie-partner');
	var b;

	if(x.value == '00001' || x.value == '00003')
	{
		k.style.display = '';

		if(k.tabPage)
			k.tabPage.tab.style.display = '';
	}
	else
	{
		k.style.display = 'none';

		if(k.tabPage)
			k.tabPage.tab.style.display = 'none';
	}
}

function getFilenameExtension(filename)
{
	 if( filename.length == 0 ) return "";
	 var dot = filename.lastIndexOf(".");
	 if( dot == -1 ) return "";
	 var extension = filename.substr(dot+1,filename.length);
	 return extension;
}

function toggleForeignZip(el, ob)
{
	var land = getObj(el, ob);
	var foreignId = 'f-' + land.fieldsetID + '.01030';
	var foreignZip = document.getElementById(foreignId);
	var domesticZip = document.getElementById('f-' + land.fieldsetID + '.00011');
	// zip = zip.parentNode.parentNode;
	// alert('hello'+x.value);
	
	
	
	if(land.value != '' && land.value != 'NL' ){
		//zip.style.display = '';
		foreignZip.previousSibling.style.display = '';
		foreignZip.style.display = '';
		
		$('#'+foreignId+'.error').show();
		$('[for='+foreignId+']').show();
		
		domesticZip.parentNode.style.display = 'none';
	}
	else {
		//zip.style.display = 'none';
		foreignZip.previousSibling.style.display = 'none';
		foreignZip.style.display = 'none';
		
		$('#'+foreignId+'.error').hide();
		$('[for='+foreignId+']').hide();
		
		domesticZip.parentNode.style.display = '';
	}
}

// V9998 - Toevoegen aan bestaand pakket
function togglePolisnummer(el,ob)
{
	var x = getObj(el, ob);

	
	
	var polisNum = document.getElementById('f-' + x.fieldsetID + '.60004');
	var volgNum  = document.getElementById('f-' + x.fieldsetID + '.60000');

	if(x.value == '00001') // nee
	{
		//x.nextSibling.style.display = 'none';
		
		$('#bestaandePakket').hide('fast');
		
		/* SP 20100701: commented this
		x.nextSibling.nextSibling.style.display = 'none';
		x.nextSibling.nextSibling.nextSibling.style.display = 'none';

		if(volgNum)
		{
			volgNum.previousSibling.style.display = 'none';
			volgNum.style.display = 'none';
		}
		*/

		/* polisNum.parentNode.parentNode.style.display = 'none';
		if(volgNum)
			volgNum.parentNode.parentNode.style.display = 'none'; */
	}
	else if(x.value == '00002') // ja
	{
		$('#bestaandePakket').show('fast');
		
		/* SP 20100701: commented this
		x.nextSibling.nextSibling.style.display = '';
		x.nextSibling.nextSibling.nextSibling.style.display = '';
		if(volgNum)
		{
			volgNum.previousSibling.style.display = '';
			volgNum.style.display = '';
		}
		*/

		/* polisNum.parentNode.parentNode.style.display = '';
		if(volgNum)
			volgNum.parentNode.parentNode.style.display = ''; */
	}
}

function get_to_be_replaced_polis(formId,fieldsetId)
{
	url = site_script_url + '/get_to_be_replaced_polis/'+formId+'/'+fieldsetId;
	/* ajax-loader-w */
	$(jq('ja_'+fieldsetId)).hide();
	$(jq('f-'+fieldsetId+'.V1004')).hide();
	$(jq('loader_'+fieldsetId)).append('<label id="loading_'+fieldsetId+'"><img align="absmiddle" src="images/ajax-loader-w.gif" ' + 
			'width="16" height="16" border="0">&nbsp;Bezig met laden polissen</label>');
	$(jq('loader_'+fieldsetId)).show();
	$.ajax({
		url: url,
		success: function(response){
			
			if(response && !response['error'])
			{
				jQuery.each(response['polis_te_vervangen'], function(i,val) {	
					var selectedHtml = '';
					if(i==0){selectedHtml = 'checked="checked"';}
					
					var extra = '';
					if(val['polisomschrijving']) extra = ' - ' + val['polisomschrijving'];
					
					$(jq('f-'+fieldsetId+'.V1004picker')).append(
						'<input '+selectedHtml+' style="width:16px;clear:left;margin:0px 5px 2px 0px;" id="p_'+val['polisnummer']+'" value="'+val['polisnummer']+
						'" type="radio" name="data[labels]['+fieldsetId+'.V1004]" ><label style="color:black;clear:none;width:140px;padding-top:2px;"'+
						'for="p_'+val['polisnummer']+'">Ja, '+val['polisnummer']+
						'</label><br><div class="label" style="margin-left:20px;">'
							+val['branche']
							+extra+ ', ' +val['maatschappij'] + ', ingangsdatum: ' 
							+val['ingangsdatum'] + '</div><br>'
					);
				});
				$(jq('loader_'+fieldsetId)).hide();
				$(jq('f-'+fieldsetId+'.V1004picker')).show();
			}
			else
			{
				if(response['error'])
				{
					var responseText = response['error'];
				}
				else
				{
					var responseText = 'Er zijn geen polissen die vervangen kunnen worden.';
				}
				
				$(jq('loading_'+fieldsetId)).remove();
				$(jq('loader_'+fieldsetId)).append(responseText);
				$(jq('p_geen'+fieldsetId)).attr('checked', true);
			}

			
		}
	});
}

function getPakketNumbers(fieldsetID)
{
	url = site_script_url + '/get_pakket_list/'+$(jq('form_id')).val()+'/'+fieldsetID;

	var needed_ids = new Array('60004','60000','60009','60007');

	$(jq('pakketNumberLoader_'+fieldsetID)).show();
	//$(jq('img.'+fieldsetID+'.pakketNumberLoader')).attr('src','images/ajax-loader-w.gif');

	$(jq('div-'+ fieldsetID + '.60004' )).show();
	
	$(jq('f-' + fieldsetID + '.60004')).unbind('click');
	//$(jq('f-' + fieldsetID + '.60004')).bind('change',function(){setPakketVars(fieldsetID)});

	$.ajax({
         url: url,
         success: function(response) {
		
         	//var json = response; //eval('(' + response + ')'); //response.responseText.evalJSON();
			if(response['error'])
			{
				$(jq('pakketNumberLoader_'+fieldsetID)).attr('class','error');
				$(jq('pakketNumberLoader_'+fieldsetID)).html(response['error']);
				$(jq('p_geen'+fieldsetID)).attr('checked', true);
				//setTimeout("resetPakket(" + fieldsetID + ");",3500);
				return false;
			}
			
			updatePakketnummer(response,fieldsetID,needed_ids[0],needed_ids[1],needed_ids[2],needed_ids[3]);			
			$(jq('pakketNumberLoader_'+fieldsetID)).hide();

			if(!response || response == "[]")
			{
				// notify user
				$(jq('pakketNumberLoader_'+fieldsetID)).attr('class','error');
				$(jq('pakketNumberLoader_'+fieldsetID)).html('Relatie heeft geen pakketten.');
				//$(jq('pakketNumberLoader_'+fieldsetID)).show();
				$(jq('p_geen'+fieldsetID)).attr('checked', true);
				//setTimeout("resetPakket(" + fieldsetID + ");",3500);

			}

         }
     });

	return false;
	//setTimeout("setPakketVars("+ fieldsetID +")",500);

}

function updatePakketnummer(json,fieldsetID,pakket_pakketnummer,pakket_volgnummer,pakket_looptijd,pakket_termijn)
{
	var options = "<option value='0'>Kies een pakketnummer</option>";//"<option value=''>";
	
	jQuery.each(json, function(i,val) {

		options = options +'<option value="'+ val['pakket_polisnummer'] + '" volgnummer="' +
			val['pakket_volgnummer'] + '" looptijd="' + val['pakket_looptijd'] + '" ' + 
			' termijn="' + val['pakket_termijn'] + '" pakketsoort="' + val['pakket_pakketsoort'] + '" melding="' + val['melding'] + 
			'" polislijst="' + val['pakket_polislijst'] + '" ' + 
			' collectiviteit="'+val['pakket_collectiviteit']+'">'+ val['pakket_polisnummer'] +'</option>';
			
			
	});

	var select = '<select class="input" id="f-'+ fieldsetID + '.60004" name="data[labels]['+ fieldsetID + '.60004]">' + options + ' </select>';
		
	$(jq('radio_pakket_'+ fieldsetID)).remove();
	$(jq('f-' + fieldsetID + '.' + pakket_pakketnummer )).remove();
	$(jq('a-' + fieldsetID + '.' + pakket_pakketnummer )).hide();	
	$(jq('div-' + fieldsetID + '.' + pakket_pakketnummer )).append(select);
	$(jq('div-' + fieldsetID + '.' + pakket_pakketnummer )).show();
	$(jq('f-' + fieldsetID + '.' + pakket_pakketnummer )).show();
	$(jq('f-' + fieldsetID + '.' + pakket_pakketnummer )).bind('change',function(){setPakketVars(fieldsetID)});

}

function setPakketVars(fieldsetID)
{
	var selectedOption = $(jq('f-' + fieldsetID + '.60004')).find('option').filter(':selected');
	var pakketnummer = selectedOption.attr("value");
	
	if(pakketnummer == 0)
		return;
	
	var vlgnummer 		= selectedOption.attr("volgnummer");
	var termijn   		= selectedOption.attr("termijn");
	var looptijd  		= selectedOption.attr("looptijd");
	var melding	  		= selectedOption.attr("melding");
	var collectiviteit 	= eval(selectedOption.attr("collectiviteit"));
	var polislijst 		= selectedOption.attr("polislijst");
	var pakketsoort		= selectedOption.attr("pakketsoort");

	search_collectiviteit = 'EMPTY';
	jQuery.each($(jq('f-' + fieldsetID + '.10095') + " option"), function(i,optionValue){
		jQuery.each(collectiviteit, function(x,col){			
			if($(optionValue).val() == col)
			{
				search_collectiviteit = col;
				return false;
			}
		});		
	});
	
	var t1 = '';
	var t2 = '';
	var t3 = '';
	var t4 = 'is ';
	var t = [];
	
	if($(jq('f-' + fieldsetID + '.60007')).val() != termijn)
		t.push('<u><b>betalingstermijn</b></u>');

	if($(jq('f-' + fieldsetID + '.60009')).val() != looptijd)
		t.push('<u><b>contractsduur</b></u>');
	
	if($(jq('f-' + fieldsetID + '.10095')).val() != search_collectiviteit)
		t.push('<u><b>collectiviteit</b></u>');
		
	var text = '';
	$.each(t, function(i, item){
		if(t.length==1)
		{
			text = item; 
			t4 = 'is';
		}
		else if(t.length > 0)
		{
			t4 = 'zijn';
			if((t.length - 1) == i)
			{
				text = text + ' en ' + item;
			}
			else
			{
				if(text.length==0)
				{
					text = item;
				}
				else
				{
					text = text + ', ' + item;
				}
			}
		}
	});
	
	if(melding=="undefined")
		melding = '';
	
	//if(t1.length > 0 && t2.length > 0){t3 = 'en '; t4 = 'zijn ';}
	
	$(jq('f-' + fieldsetID + '.60000')).val(vlgnummer);
	$(jq('f-' + fieldsetID + '.60007')).val(termijn);  		// betalingstermijn deze pakket offerte 
	$(jq('f-' + fieldsetID + '.60009')).val(looptijd); 		// looptijd
	$(jq('f-' + fieldsetID + '.V9103')).val(termijn);		// betalingstermijn bestaande pakket
	$(jq('f-' + fieldsetID + '.10095')).val(collectiviteit);// collectiviteit
	$(jq('f-' + fieldsetID + '.V3006')).val(polislijst);	// polislijst
	$(jq('f-' + fieldsetID + '.V6100')).val(pakketsoort);	// pakketsoort
	
	if(t.length > 0)
	{
		$('#toevoegenAanPakketInfo').html('<b>Let op!</b><br> De ' + text + ' van het bestaande pakket (' + pakketnummer + ') ' +
			t4 + ' overgenomen. Als u wilt afwijken van het bestaande pakket kunt u dat hieronder doen. ' + melding).show('fast');
	}
	else
	{
		$('#toevoegenAanPakketInfo').hide('fast');
		//y('hide?');
	}
}

function mailSettings(action)
{
	if(action == 'send' || action == 'mail_myself_preview' || action == 'preview_in_browser')
		$('#mail_action').val('send');
	else
		$('#mail_action').val('save');

	if(action == 'send' || action == 'preview_in_browser')
	{
		// als geen tp is gekozen en geen emailadressen ingevuld... melden en niet submitten...
		/*var form = $('#mail_form');
		var agentSelect = $('#agentcodes').val();
		var permissionsSelect = $('#permissions').val();
		var mail_to = $('#mail_to').val();*/

		var formFields = ['agentcodes', 'mail_to'];
		var notEmpty = 0;
		jQuery.each(formFields, function(index, field) {
			if(!($(jq(field)).val() == "" || $(jq(field)).val() == null))
			{
				notEmpty ++;
				//$(jq('l_'+field)).addClass("error");
			}
			//else
				//$(jq('l_'+field)).removeClass("error");

		});

		if(notEmpty == 0)
		{
			alert('Er zijn geen tussenpersonen geselecteerd en de email lijst is leeg.\nMaak een selectie of vul de email lijst.');
				return;
		}
		else if(action == 'send')
		{
			if(!confirm('Weet u zeker dat u deze mail wilt versturen?'))
				return;
		}
	}


	switch(action)
	{
		case 'send':
			txt = 'Bezig met versturen email...';
		break;
		case 'mail_myself_preview':
			txt = 'Bezig met versturen email preview naar mijzelf...';
		break;
		case 'preview_in_browser':
			txt = 'Bezig met genereren email preview in de browser...';
		break;
		case 'save':
			txt = 'Bezig met opslaan email...';
		break;
	}

	loadingAlert('show',txt,'menu');

	$('#test_action').val(action);

	// var oEditor = FCKeditorAPI.GetInstance('veaEditor') ;
	// var html = oEditor.GetHTML();
	// $('messageBox').value = html;

	document.mail_form.submit();
}

function showChartYearMonth(year,month,color)
{
	showChart('my_chart2',570,200,'production_this_month',year,month,color)
}

function showChart(id,width,height,dataFile,year,month,color)
{
	if(!id) id = 'my_chart';
	if(!width) width = 570;
	if(!height) height = 200;
	if(!dataFile)
		dataFile = site_script_url + "/statistics/get_chart_data";
	else
	{
		if(typeof(year)=="undefined" || typeof(month)=="undefined")			
			dataFile = site_script_url + "/statistics/" + dataFile;
		else
			dataFile = site_script_url + "/statistics/" + dataFile + "/" + year + "/" + month + "/" + color;
	}
	swfobject.embedSWF(
		  "swf/open-flash-chart.swf", id, width, height,
		  "9.0.0",  "swf/expressInstall.swf",
		  {"data-file":dataFile,"loading":"Bezig met laden..."}
		  );
}

function sp(period) /* select period */
{
	// var year = document.ubizz_kosten.periodYear.value;
	var year = $('#periodYear').val();
	window.location = $('#site_script_url').val() + '/list_ubizz_kosten/' + year + '/' + period;
}

function convDec2Alpha(integer,numberLength)
{
	integer = integer - 1;
	var alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	var a = alphabet.length;
	var maxPosibilities = Math.pow(a,numberLength);

	var output = "";
	var x = numberLength - 1;

	var restValue = integer % maxPosibilities;

	while (x >= 0)
	{
		thisCharIndex = Math.floor( (restValue / Math.pow(a,x)) );
		thisChar = alphabet.substr(thisCharIndex,1);

		restValue = restValue - (Math.pow(a,x) * thisCharIndex);
		output = output + thisChar;
		x = x - 1;
	}

	return output + '00';
}

var _prodList = new Array();
function syncProducentList(el, ob)
{
	var x = getObj(el, ob);

	/* if(x.type=="hidden") return; */


	var prodList = document.getElementById('f-' + x.fieldsetID + '.09615');

	var currentAgentCode = 0;
	if(x.selectedIndex >= 0)
	{
		if(IsNumeric(x.options[x.selectedIndex].value))
		{
			if(x.options[x.selectedIndex].value < 1000)
			{
				// alert('It is a number ...' + x.options[x.selectedIndex].value);
				currentAgentCode = x.options[x.selectedIndex].value * 100;
			}
			else
			{
				// renumber
				var firstAPC = convDec2Alpha(x.options[x.selectedIndex].value,3);
				// alert('APC: ' + firstAPC );
				currentAgentCode = firstAPC;
			}
		}
	}
	else if(x.value >= 0)
	{
		if(IsNumeric(x.value))
		{
			if(x.value < 1000)
			{
				// alert('It is a number ...' + x.value);
				currentAgentCode = x.value * 100;
			}
			else
			{
				// renumber
				var firstAPC = convDec2Alpha(x.value,3);
				// alert('APC: ' + firstAPC );
				currentAgentCode = firstAPC;
			}
		}
	}
	var currentProdCode, i = 0, index = 0;

	try
	{
		var rebuildProdList = false;
		var l = prodList.options.length;
	}
	catch(err)
	{
		return;
	}

	/* create a 'backup' */
	/* moveOutOfDOM uses id's, which these options do not have...
	thus we use our own repository of elements */
	if(_prodList.length == 0)
	{
		for(i=0;i<l;i++)
			_prodList[i] = new Array(prodList.options[i].value, prodList.options[i].text);
	}
	var selectedprod = prodList.value;


	/* empty current list */
	for(i=0;i<l;i++)
		prodList.remove(0);

	currentAgentCodeString = currentAgentCode + '';
	if(IsNumeric(currentAgentCode))
	{
		var currentAPC = currentAgentCodeString.substring((currentAgentCode.length - 2),currentAgentCode.length);
	}

	agentIdentifier = currentAgentCodeString.substring(0,3);
	// alert('last two digits: ' + currentAPC + ', identifier: ' + agentIdentifier);

	for(i=0;i<_prodList.length;i++)
	{
		/* parseInt does weird stuff with '00195', multiplying does a
		better typecast */
		currentProdCode = (_prodList[i][0] * 1);

		if(IsNumeric(currentAgentCode))
		{
			if(currentProdCode >= currentAgentCode && currentProdCode <= (currentAgentCode + 99))
			{
				prodList.options[index] = new Option(_prodList[i][1], _prodList[i][0]);
				index++;
			}
		}
		else
		{
			if(_prodList[i][0].substring(0,3) == agentIdentifier)
			{
				prodList.options[index] = new Option(_prodList[i][1], _prodList[i][0]);
				index++;
			}
		}

	}

	if(selectedprod)
	{
		prodList.value = selectedprod;
	}
	else
	{
		if(prodList.options[0]) prodList.options[0].selected = true;
	}



/*-- ook deze filter op pakket producent gooien --*/

	var prodList = document.getElementById('f-' + (x.fieldsetID + 1) + '.10015');

	if(prodList)
	{
		var currentProdCode, i = 0, index = 0;
		var l = prodList.options.length;
		var selectedprod = prodList.value;


		/* empty current list */
		for(i=0;i<l;i++)
			prodList.remove(0);

		for(i=0;i<_prodList.length;i++)
		{
			/* parseInt does weird stuff with '00195', multiplying does a
			better typecast */
			currentProdCode = (_prodList[i][0] * 1);

			if(IsNumeric(currentAgentCode))
			{
				if(currentProdCode >= currentAgentCode && currentProdCode <= (currentAgentCode + 99))
				{
					prodList.options[index] = new Option(_prodList[i][1], _prodList[i][0]);
					index++;
				}
			}
			else
			{
				if(_prodList[i][0].substring(0,3) == agentIdentifier)
				{
					prodList.options[index] = new Option(_prodList[i][1], _prodList[i][0]);
					index++;
				}
			}

		}
		prodList.value = selectedprod;
	}
}

function onChangeTrigger(el,ob)
{
	getObj(el,ob).value = (++getObj(el,ob).value);
	if(getObj(el,ob).value==95)getObj(el,ob).value = 1;
}

function fieldSetShownToUserSum(el,ob)
{
	/*
	 moet iets komen in de trend van:
	 bij eerste weergave op het scherm - error melding en rode rand niet weergeven..
	 alleen voor fieldSets die niet dynamisch worden ingeladen
	*/
	var x = getObj(el,ob);
	var fieldsetID = x.fieldsetID;
	var y = $(jq('f-' + fieldsetID + '.V0628'));

	//alert('fieldSetShownToUserSum... ' + fieldsetID + ', shown: ' + y.value + ' time(s)... is numeric? ' + IsNumeric(y.value));

	if(!IsNumeric(y.val())) y.val(0);
		(y.val() == 0) ? y.val(1) : y.val(2);

	//alert('id: ' + y.id + ', value set to:' + y.value + ', verberg errors: ' + (y.value<2));

	if(y.val() <2)
	{
		verbergErrors(fieldsetID);
	}

	//alert('the value for f-' + fieldsetID + '.V0628 should be: ' + y.value);
	//alert($('f-' + fieldsetID + '.V0628').value);
}

function verbergErrors(fieldsetid)
{
	jQuery.each($('#fieldset-' + fieldsetid + ' a.error'), function(index, s)
		{
			$(s).parent().prev('label').wrapInner("<b></b>").append('<b class="error" style="font-family:verdana;">*</b>');
			$(s).parent().remove(); // hide messes up layout in IE6
		}
	);
}

var showJumpers = false;
var gotoFirstError = null;
var gotoFieldIDWaiting = null;

function gotoFieldID(fid,showJumper)
{
	var FieldID = fid.match(/([A-Z0-9]+.[A-Z0-9]+)/)[1];

	//d('id: ' + FieldID);
	//alert('x' + FieldID);

	var el = document.getElementById('f-' + FieldID);
	if (el == null)
	{
		//d('it\s a fro!');
		el = document.getElementById('fro-' + FieldID);
		//el = document.getElementById('f-' + FieldID + '.status');
		//if (el)
			//statusboxToggleHover(el,true);
	}

	if (el == null)
	{
		var bits = FieldID.split('.');

		var fieldsetid = bits[0];

		while (!(el = document.getElementById('fieldset-' + fieldsetid)))
		{
			if (!fieldsets[fieldsetid])
				break;
			fieldsetid = fieldsets[fieldsetid];
		}
		if (el == null)
			return;

		if(showJumper) showJumpers = showJumper;
		gotoFieldIDWaiting = FieldID;

		//d('ola de bola');

		el.tabPage.select();
		//alert('setting waiting stuff to ...' + FieldID );
		return false;
	}

	var base_el = el;
	while (el = el.parentNode)
	{
		if (el.tabPage != null)
		{
			el.tabPage.select();
		}
	}

	var error_el = document.getElementById('f-' + FieldID + '.error');

	//d(error_el.id);

	/*
	if (error_el)
	{
		statusboxToggleHover(error_el.parentNode.parentNode,true);
	}
	*/

	//addJumper(base_el.id);


	//alert('gotoFirstError: ' + gotoFirstError);
	// do gotoFirstError stuff here..
	// - gotoFirstError = null;
	// put some color to the field (also make sure this is visible for all types of fields
	// - base_el.style.backgroundColor = '#ffc5c5';//'#ffc5c5';

	//var offSet = $(base_el.id).cumulativeOffset();
	//var dimensions = $(base_el.id).getDimensions();

	//base_el.style.width = (dimensions.width - 16)+'px';
	//base_el.style.clear = 'left';
	//alert(showJumper + ' id: ' + base_el.id);
	// d(showJumper);
	if(showJumper)
	{
			//alert(base_el.id);
			//d('adding jumper');
			addOneErrorJumper(base_el.id);
			//$('#jumper_'+base_el.id).hide();
			//alert('johoe'+$('jumper_'+base_el.id).style.display);
			// mmmhh.. doesn't really work

			//window.location.hash="anchor"+base_el.id;

			//d('scrolling? ' + base_el.id);
			//$(jq(base_el.id)).scrollIntoView();

			//y($(jq(base_el.id)).attr('type'));
			//$(jq(base_el.id)).focus();

			//$(jq(base_el.id)).focus();
			$('html,body').animate({scrollTop: $(jq(base_el.id)).offset().top-100},300, function(){
				var x = 1;
			});

			if($(jq(base_el.id)).attr('type')=="text")
			{
				$(jq(base_el.id)).focus();
			}
	}

	//$(jq('debugBox')).append(base_el.id+'<br>');

	//$(jq(base_el.id)).focus();

	// this stuff below crahes Chrome (when showjumper) - detect and return?
	//base_el.focus();
	// for IE, tiwce !?
	//base_el.focus();

	//eval('document.totaalpakket.'+base_el.id+'.focus()');
	//alert('left:'+offSet.left+', top:'+offSet.top+', width:'+dimensions.width+', height:'+dimensions.height);

	//var l = (offSet.left + dimensions.width)
	//var t = offSet.top;

	//alert('left: '+l+', top: '+t);

	// - var stuff = $(base_el.id);
	/*
	 $(base_el.id).insert({after: '&nbsp;<a style="float:left;" onclick="" onclick="gotoNextErrorLabel(\'' + base_el.id + '\')" >' +
			'<img title="Spring naar volgende melding." src="images/bullet_go.gif" width="16" height="16" valign="absmiddle" border="0"></a>'});
	*/
	/* -$(base_el.id).insert({after: '<div id="jumper_'+FieldID+'"' +
 	'style="margin-top:-4px;padding-top:0px;clear:left;float:left;font-size:11px;"><a href="javascript:gotoNextErrorLabel(\''+FieldID+'\');">Volgende</a><img '+
 	'align="absmiddle" 	title="Spring naar volgende melding." src="images/bullet_go.gif" onclick="gotoNextErrorLabel(\''+FieldID+'\');"	width="16" height="16" border="0"></div>'});
 	*/
}

var globalErrorListInScreenOrder = "";
function addJumper(linkToFieldId,positionAfterFieldId)
{
	// d('adding jumper');

	if($(jq('jumper_'+linkToFieldId)).length > 0)
	{
		// it's there alreayd... just show it...
		$(jq('jumper_'+linkToFieldId)).show();
		return;
	}

	if(linkToFieldId.length>0)
	{

		positionAfterFieldId = positionAfterFieldId; // #12345\\.54321[\\.N]
		linkToFieldId = linkToFieldId; // 12345.54321

		var base_el     = $(linkToFieldId);
		var base_el_pos = $(positionAfterFieldId);
		var tag = 'x';
		//alert('en nou? ' + positionAfterFieldId);

		if(base_el_pos)
		{
			//alert('base_el_pos.tagName ' + positionAfterFieldId + ': ' + base_el_pos.get(0).tagName + ', tag? ' + tag + ' --- ' + base_el_pos.attr('type'));
			// radio buttons have an extra label next to their input <input /><label for="inputId">Ja</label>
			var insertHere, extra, extra2;
			if (base_el_pos.attr('type') == 'radio')
			{
				//alert('radio');
				insertHere = $(base_el_pos).next();

				extra = "float:left; clear:right;";
				extra2 = "float:left;padding-top:3px;";

				// op de een of ander manier doet deze het niet voor de laatste

				//insertHere = $(base_el_pos.id).up();
				//extra = "background-color: #edebdd;height:22px;";
				//extra2 = "padding-top:3px;";
			}
			else
			{
				insertHere = base_el_pos;
				extra = "width:100%;";
				extra2 = "float:right;margin-top:-4px;";
			}
			if(insertHere)
			{
				//d('we are here' + positionAfterFieldId);
				// check if errorlist is already there
				if(globalErrorListInScreenOrder=="")
					globalErrorListInScreenOrder = getErrorListInScreenOrder();

				// d('adding j for ...' + linkToFieldId.replace(/f-|fro-/, ""));

				//d(linkToFieldId.replace(/f-|fro-/, ""));

				// jQuery: jQuery.inArray( value, array ), Prototype: errorListInScreenOrder.indexOf(errorFieldId)
				var errorNumber = (jQuery.inArray( linkToFieldId.replace(/f-|fro-/, ""), globalErrorListInScreenOrder ) + 1);

				if(errorNumber == 0)
					d('errorNumber: ' + linkToFieldId);

				//var errorNumber = (globalErrorListInScreenOrder.indexOf(linkToFieldId.replace(/f-/, ""))+1);

				//alert(errorNumber + ' - ' + linkToFieldId + ' - ' + linkToFieldId.replace(/f-/, "") + ' - ' + jQuery.inArray( linkToFieldId.replace(/f-/, ""),globalErrorListInScreenOrder));

				//debug(errorNumber + '<br>');

				//insertHere.after('<span>hello' + insertHere.attr('id') + '</span>');
				//alert(insertHere.attr('id'));
				//$(document).ready(function () {

				$(insertHere).after('<div id="jumper_'+linkToFieldId+'"' +
			 	'style="text-align:right;clear:both;'+extra+''+
			 	'padding-top:0px;font-size:11px;">' +
			 	'<div style="padding-right:16px;'+extra2+'">'+errorNumber+'/'+globalErrorListInScreenOrder.length+
			 	'&nbsp;<a name="anchor'+linkToFieldId+'"></a><a href="javascript:gotoNextErrorLabel(\''+linkToFieldId+'\');">Volgende</a>'+
		 		'<img align="absmiddle" title="Spring naar volgende melding." src="images/bullet_go.gif" onclick="gotoNextErrorLabel(\''
		 		+linkToFieldId+'\');" width="16" height="16" border="0">'+
		 		'</div></div>');


		 		//$(jq('jumper_'+linkToFieldId)).show();
		 		//d('ready and showing?');
		 		//d('i am alive? ' + $(jq('jumper_'+linkToFieldId)).length);

		 		//d('<a onclick="alert(\'ola\');">alert</a>');
		 		//d('<a onclick="alert($(jq(\'jumper_'+linkToFieldId+'\')).length);$(jq(\'jumper_'+linkToFieldId+'\')).show();" >clickerdeclick</a>');

				//});

			}

		}

	}

	return;

}
/*
	Der uberfunction
	Add onfocus and errorjumper present to all errors visible
	When new tab is loaded do the above for the loaded fieldset only
*/


function addOneErrorJumper(labelId)
{
	//alert('calling addOneErrorJumper from ' + addOneErrorJumper.caller);
	if(!($('#jumper_'+labelId.replace(/\./gi,"\\.")).length > 0))
	{

		// var lastOne = ($$('.input[id^="' + labelId + '"]').length - 1);
		// addJumper(labelId,$$('.input[id^="' + labelId + '"]')[lastOne]);
		//add onchange event to all error on this fieldset...
		var fieldSetId = labelId.match(/([A-Z0-9]+)/)[1];
		//alert('adding one error jumper for label ' + labelId + ' on fieldset ' + fieldSetId);
		jQuery.each($('.error_label_ids[id*="error_label_id_' + fieldSetId + '"]'), function(index, value ) {

			// only add jumpers to the last element (for radios)
			// f-12345.54321.J f-12345.54321.N

			var daNumbers = $(value).attr('value').replace(".","\.");

			//$("input[name^='news']")
			var daId = $('.input[id^="f-' + daNumbers + '"]');

			if(daId.length == 0)
				daId = $('.input[id^="fro-' + daNumbers + '"]');
			//alert('daNumbers: ' + daNumbers + ' | ' + $('.input[id^="f-' + daNumbers + '"]').length);

			//alert('hello ' + daId.length);

			//alert(daId[(daId.length-1)].id);


			//alert('input[id^=f-' + daNumbers + ']:last ' + 'daNumbers: ' + daNumbers + ' - ' + daId.length);
			if(daId.length > 0)
				addJumper(daId[0].id,'#'+daId[daId.length-1].id.replace(/\./gi,"\\."));
			//addJumper(fieldSetId,$(value).attr('value').replace(".","\\."));
			//addJumper(fieldSetId,labelId.match(/[^\.]*$/)[0]);

		});
		return;
	}
	//errorList.each(addOnchangeEvent(fieldId, fieldSetId, jumperShow, 'onfocus',false));
	return;
}

function debug(content)
{
	if($('debugBox'))
		$('debugBox').insert({bottom: content});
}

function jumperShow(el,ob)
{
	if(showJumpers==true)
	{
		var x = getObj(el, ob);
		var jId = x.id.match(/([A-Z0-9]+.[A-Z0-9]+)/)[1];
		addOneErrorJumper('f-' + jId);
		$('jumper_f-'+ jId ).style.display = '';
		$(x.id).focus();
	}
}

var errorList = [];
function getErrorListInScreenOrder(fieldsetId)
{
	/* todo
	if(typeof(fieldsetId)=="undefined")
		fieldsetId = false;

	if(fieldsetId > 0 && !(typeof(globalErrorListInScreenOrder)=="undefined") && globalErrorListInScreenOrder.length > 0)
	{
		d('limiting: ' + fieldsetId);
		// it should only reorder the inputs on this fieldset hero...
	}
	*/
	if(errorList.length == 0)
		errorList = $('input.error_label_ids'); // the errorlist under 'meldingen'

	var inputList = $.unique($('.input')); // all fields with css class input


	var errorListInScreenOrder = [];
	var lastInputId = 0;
	for(i=0;i<inputList.length;i++)
	{
		for(j=0;j<errorList.length;j++)
		{
			//y(inputList[i].id);
			var inputId = 0;
			if(inputList[i].id.match(/([A-Z0-9]+.[A-Z0-9]+)/))
				inputId = inputList[i].id.match(/([A-Z0-9]+.[A-Z0-9]+)/)[1];
			
			var errorId = errorList[j].id.match(/([A-Z0-9]+.[A-Z0-9]+)/)[1];
			if(inputId == errorId && lastInputId != inputId)
			{
				errorListInScreenOrder.push(inputList[i].id.match(/([A-Z0-9]+.[A-Z0-9]+)/)[1]);
				var lastInputId = inputId;
				break;
			}
		}
	}
	//errorListInScreenOrder = errorListInScreenOrder.uniq();
	//errorListInScreenOrder = jQuery.unique(errorListInScreenOrder);

	if(errorListInScreenOrder.length==0)
	{
		for(j=0;j<errorList.length;j++)
		{
			errorListInScreenOrder.push(errorList[j].id.match(/([A-Z0-9]+)/)[1]);
		}
	}
	else
	{
		for(j=0;j<errorList.length;j++)
		{
			var errorFieldSetId 		= errorList[j].id.match(/([A-Z0-9]+)/)[1];
			var errorFieldId 			= errorList[j].id.match(/([A-Z0-9]+.[A-Z0-9]+)/)[1];
			// check voor errorFieldIds die nog niet in de errorListInScreenOrder zitten
			// jQuery: jQuery.inArray( value, array ), Prototype: errorListInScreenOrder.indexOf(errorFieldId)
			if(jQuery.inArray( errorFieldId, errorListInScreenOrder )<0)
			{
				var inserted = false;
				for(i=0;i<errorListInScreenOrder.length;i++)
				{
					var errorFieldSetIdOnScreen = errorListInScreenOrder[i].match(/([A-Z0-9]+)/)[1];

					// als 1e x groter prop 'm voor de vorige
					if((errorFieldSetIdOnScreen > errorFieldSetId))
					{
						// splice zet bij dezelfde index het item ervoor (-1 is 1 van rechts bij de weg)
						newArray = errorListInScreenOrder.splice(i,0, errorFieldSetId);
						//newArray = errorListInScreenOrder.splice(i,0, errorFieldSetId + ' - ' + errorFieldSetIdOnScreen + '>' + errorFieldSetId);
						inserted = true;
						i++;
						break;
					}
				}
				// nog niet inserted, must be bigger then the stuff in the current list
				if(inserted == false)
				{
					errorListInScreenOrder.push(errorFieldSetId);
				}

			}
		}
	}
	
	
	return errorListInScreenOrder;
}

function showErrorListInScreenOrder(target)
{
	var text = "\n";
	/*
		var text="temporaryOutOfDom:\n";
		text = text + document.temporaryOutOfDom['inventarisatie'] + "\n";
		text = text + document.temporaryOutOfDom.length + "\n";
		for(i=0;i<document.temporaryOutOfDom.length;i++)
		{
			text=text+document.temporaryOutOfDom[i].id+'\n';
		}
	*/
	var eliso = getErrorListInScreenOrder();

	for(i=0;i<eliso.length;i++)
	{
		text=text+eliso[i]+"\n";
	}

	if(target)
		eval(y(text));
	else
		alert(text);
	
	return;
}

// http://docs.jquery.com/Selectors
// The full list of characters that need to be escaped: #;&,.+*~':"!^$[]()=>|/


function jq(elementId)
{
   return '#' + elementId.replace(/(:|\[|\]|\.)/g,'\\$1');
}

function jqnh(elementId)
{
   return elementId.replace(/(:|\[|\]|\.)/g,'\\$1');
}

function jqnd(elementId)
{
   return elementId.replace(/(:|\[|\])/g,'\\$1');
}

var errorListInScreenOrder = [];
function gotoNextErrorLabel(currentErrorLabel)
{
	//y('shizzle');
	var jumpToID = 0;

	if(errorListInScreenOrder.length==0)
	   errorListInScreenOrder = getErrorListInScreenOrder();

	continueGotoNextErrorLabel = true;
	if (currentErrorLabel != 'first')
	{
		if($(jq(currentErrorLabel)).attr('type')!=undefined)
		{
			// must be a normal input
			var value = $(jq(currentErrorLabel)).val();
			var question = 'Het veld is nog leeg. Weet u zeker dat u naar de volgende melding wilt?';

		}
		else
		{
			//d('tagname: ' + document.getElementById(currentErrorLabel).tagName);
			var question = 'Er is nog geen keuze gemaakt. Weet u zeker dat u naar de volgende melding wilt? ';
			value = '';
			var radioList = $('.radio');
			for(i=0;i<radioList.length;i++)
			{
				if(radioList[i].id.match(currentErrorLabel))
				{
					if(radioList[i].checked)
					{
						value = 'checked';
						break;
					}
				}
			}
			// must be a radio button
			// loop through the radio buttons
		}

		if(value=='' && $(jq(currentErrorLabel))[0].tagName != 'DIV')
		{
			var continueGotoNextErrorLabel = (confirm(question));
		}
	}

	if(continueGotoNextErrorLabel)
	{
		showJumpers = true;

		if (currentErrorLabel != 'first')
		{
			var currentFieldID = currentErrorLabel.match(/([A-Z0-9]+.[A-Z0-9]+)/)[1];
			//alert($(jqnh('#jumper_f-'+currentFieldID)).attr('id'));
			$(jqnh('#f-'+currentFieldID+'.error')).children().css('color','#6D674F');
			$(jqnh('#jumper_f-'+currentFieldID)).css('border','1px solid white').remove();

			//$(jqnh('#f-'+currentFieldID)).css('background-color','red');
		}
		else
		{
			gotoFieldID(errorListInScreenOrder[0],true);
			return false;
		}

		// jQuery: jQuery.inArray( value, array ), Prototype: errorListInScreenOrder.indexOf(errorFieldId)


		//var nextFieldIdOrFieldSetId = errorListInScreenOrder[(errorListInScreenOrder.indexOf(currentFieldID)+1)];
		var nextFieldIdOrFieldSetId = errorListInScreenOrder[(jQuery.inArray( currentFieldID, errorListInScreenOrder ) + 1)];


		// sometimes fields generate an error
		//alert('nextFieldIdOrFieldSetId: ' + nextFieldIdOrFieldSetId);

		if(nextFieldIdOrFieldSetId)
		{
			//y('going here: ' + nextFieldIdOrFieldSetId);
			gotoFieldID(nextFieldIdOrFieldSetId,true);
		//return;
		}
		else
		{
		// niet meer vragen - gebruikers lezen geen popus - gewoon doen...
		//if(confirm('Alle meldingen zijn verwerkt.\nWilt u het formulier bevestigen.'))
			//{
				document.getElementById('progress').tabPage.select();
                $('#selected_tab_id').val('progress');
				loadingAlert('show','Alle meldingen zijn aangepast. Bezig met versturen aanpassingen...','header');
				ignoreOnBeforeUnload = true;
				submitForm();
			//}
		}
	}
}

function validate_email(email)
{
	var emailRe = /^\w+([\.\+-]?\w+)*@\w+([\.\+-]?\w+)*\.(\w{2}|(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum))$/
	if (!emailRe.test(email))
	{
		return false;
	}
	else
	{
		return true;
	}
}

function recover_password()
{
	var email = $('#data_email').val();

	if (email == '')
	{
		$('#invalid_email').html('Vul een email adres in.');
		return;
	}

	if(validate_email(email))
	{
		url = site_script_url + '/recover_password/'+ email +'/';
		loadingAlert('show','Bezig met versturen emailadres...');

		$.ajax({
	         url: url,
	         success: function(response) {
	         	var json = response;//eval('(' + response + ')'); //response.responseText.evalJSON();
	         	if(json['emailaddress'] == 1)
	         	{
					$('#okEmail').html(email);
					$('#okFromServer').show();
					$('#recovery').hide();
		        }
		        else
		        {
					$('#falseEmail').html(email);
					$('#falseFromServer').show();
					$('#recovery').hide();
	         	}
				loadingAlert('hide');
	         }
	     });
	}
	else
	{
		$('#invalid_email').html('Dit emailadres, <b class="error">' + email +
		'</b> , is niet correct.\nVul een correct emailadres in en probeer het opnieuw.');
	}
}

// Settings
// -- Toggle to true or false, if you want to change what is checked in the password
var bCheckNumbers = true;
var bCheckUpperCase = true;
var bCheckLowerCase = true;
var bCheckPunctuation = true;
var nPasswordLifetime = 365;

// Check password
function checkPassword(strPassword)
{
	// Reset combination count
	nCombinations = 0;

	// Check numbers
	if (bCheckNumbers)
	{
		strCheck = "0123456789";
		if (doesContain(strPassword, strCheck) > 0)
		{
        		nCombinations += strCheck.length;
    		}
	}

	// Check upper case
	if (bCheckUpperCase)
	{
		strCheck = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		if (doesContain(strPassword, strCheck) > 0)
		{
        		nCombinations += strCheck.length;
    		}
	}

	// Check lower case
	if (bCheckLowerCase)
	{
		strCheck = "abcdefghijklmnopqrstuvwxyz";
		if (doesContain(strPassword, strCheck) > 0)
		{
        		nCombinations += strCheck.length;
    		}
	}

	// Check punctuation
	if (bCheckPunctuation)
	{
		strCheck = ";:-_=+\|//?^&!.@$�#*()%~<>{}[]";
		if (doesContain(strPassword, strCheck) > 0)
		{
        		nCombinations += strCheck.length;
    		}
	}

	// Calculate
	// -- 500 tries per second => minutes
    var nDays = ((Math.pow(nCombinations, strPassword.length) / 500) / 2) / 86400;

	// Number of days out of password lifetime setting
	var nPerc = nDays / nPasswordLifetime;

	return nPerc;
}

function checkPasswordChange()
{

	var pw1 = ($(jq('data[pwd1]') ).val());
	var pw2 = ($(jq('data[pwd2]') ).val());

	if(pw1 != '')
	{
		var nRound = Math.round(nPerc * 100);

		if(pw1 != pw2)
		{
			($(jq('ww_error')).html('De wachtwoorden komen niet overeen.'));
			return false;
		}

		if (pw1.length < 6)
		{
			($(jq('ww_error')).html('Het wachtwoord is niet lang genoeg. Maak het wachtwoord langer.'));
			return false;
		}

		if(nRound < 50)
		{
			($(jq('ww_error')).html('Het wachtwoord is niet sterk genoeg. Verzin een moeilijker wachtwoord door bijvoorbeeld cijfers en letters te combineren.'));
			return false;
		}

	}
	loadingAlert('show','Bezig met opslaan gebruiker...');
	return true;
}

// Runs password through check and then updates GUI
function runPassword(strPassword, strFieldID)
{
	// Check password
	nPerc = checkPassword(strPassword);

	// Get controls
	var ctlBar = ($(jq(strFieldID + "_bar")));
	var ctlText = ($(jq(strFieldID + "_text")));
	//if (!ctlBar.length || !ctlText.length)
		//return;

    // Set new width
    var nRound = Math.round(nPerc * 100);
	if (nRound < (strPassword.length * 5))
	{
		nRound += strPassword.length * 5;
	}
	if (nRound > 100)
		nRound = 100;

	ctlBar.css("width",Math.round(nRound * Number($('#validationBar').width()/100)));

 	// Color and text
 	if (nRound > 95)
 	{
 		strText = "Sterk";
 		strColor = "#008600";
 	}
 	else if (nRound > 75)
 	{
 		strText = "Goed";
 		strColor = "#6699cc";
	}
 	else if (nRound > 50)
 	{
 		strText = "Redelijk";
 		strColor = "#f5ac00";
 	}
 	else if (strPassword.length < 6)
	{
 		strColor = "#E0E0E0";
 		strText = "<span style='color:#676767;'>Te kort</span>";
 	}
 	else
 	{
 		strColor = "#ad0031";
 		strText = "Zwak";
 	}

	ctlBar.css("background-color", strColor);
	ctlText.html("<span style='color: " + strColor + ";'>" + strText + "</span>");
}

// Checks a string for a list of characters
function doesContain(strPassword, strCheck)
 {
    nCount = 0;
	for (i = 0; i < strPassword.length; i++)
	{
		if (strCheck.indexOf(strPassword.charAt(i)) > -1)
		{
	    	nCount++;
		}
	}

	return nCount;
}

function request_address(fieldset_id,field_id)
{

	/*
					huisnummer 	toevoeging 	postcode 	straat 	plaats
		relatie		00009		01024		00011		00008	00010
		woonhuis	10710		10711		10712		10708	10709
		motor		V0222		V0223		V0087		V0221   V0088
		oldtimer	V0222		V0223		V0087		V0221   V0088
		auto		V0222		V0223		V0087		V0221   V0088
		inboedel	10710		10711		10712		10708	10709
		caravan		V0064					V0065		V0063	V0066

	 */

	var address_ids = new Array(
		new Array('00009','01024','00011','00008','00010'),
		new Array('10710','10711','10712','10708','10709'),
		new Array('V0222','V0223','V0087','V0221','V0088'),
		new Array('V0064','00000','V0065','V0063','V0066'));

	for(i=0;i<address_ids.length;i++)
	{
		if(address_ids[i][2]==field_id)
		{
			var indexToUse = i;
		}
	}

	var extra = "";
	if(indexToUse==0) // && $('f-'+ fieldset_id + '.V0628').value==1)
	{
		if($(jq('f-'+ fieldset_id + '.00001')).val()=="") {extra = $(jq('f-'+ fieldset_id + '.00017')).val();}
	}

	var postcode   = ($(jq('f-'+ fieldset_id + '.' + address_ids[indexToUse][2]) ).val()).replace(/\s+/g, '');
	var huisnummer = ($(jq('f-'+ fieldset_id + '.' + address_ids[indexToUse][0]) ).val()).replace(/\s+/g, '');
	var toevoeging = '';
	if($(jq('f-'+ fieldset_id + '.' + address_ids[indexToUse][1])).length > 0)
		toevoeging = ($(jq('f-'+ fieldset_id + '.' + address_ids[indexToUse][1]) ).val()).replace(/\s+/g, '');

	if(!postcode.match(/^\d{4}\s?[a-z]{2}$/i)) {alert((postcode.length>0 ? postcode : 'Een lege waarde') + ' is geen juiste postcode.'); return false;}
	if(!huisnummer.length>0) {alert('Vul een huisnummer in.'); return false;}

	// 'get_address' => array('form_id','address','fieldset_id','producentcode'),

	$(jq('f-'+ fieldset_id + '.' + address_ids[indexToUse][2]) ).val(postcode.toUpperCase());
	url = site_script_url + '/get_address/'+$('#form_id').val()+'/'+postcode+huisnummer+toevoeging+'/'+fieldset_id+'/'+extra+'/';
	$(jq('img.'+fieldset_id+'.addressloader')).show();
	$(jq('img.'+fieldset_id+'.addressloader')).attr('src', site_template_url +'images/ajax-loader-w.gif');
    /*new Ajax.Request(url, {
      method:'get',
      onSuccess: function(transport){
         var json = transport.responseText.evalJSON();
         updateAddress(json,fieldset_id,address_ids[indexToUse][3],address_ids[indexToUse][4]);
       }
    });*/

	$.ajax({
         url: url,
         success: function(response) {
         	var json = response; //eval('(' + response + ')'); //response.responseText.evalJSON();
         	updateAddress(json,fieldset_id,address_ids[indexToUse][3],address_ids[indexToUse][4]);
         }
     });

     return false;
}

function updateAddress(json,fieldset_id,straat_id,plaats_id)
{
    if(!(json['error']))
    {
    	$(jq('f-'+ fieldset_id + '.' + straat_id )).val(json['straat']);
    	$(jq('f-'+ fieldset_id + '.' + straat_id + '.error')).hide();
    	$(jq('f-'+ fieldset_id + '.' + plaats_id )).val(json['plaats']);
    	$(jq('f-'+ fieldset_id + '.' + plaats_id + '.error')).hide();
        $(jq('img.'+fieldset_id+'.addressloader')).attr('src',site_template_url+ 'images/accept.gif').show();
        setTimeout("$(jq('img." +fieldset_id + ".addressloader')).fadeOut();",1500);
    }
    else
    {
    	//$(jq('f-'+ fieldset_id + '.' + straat_id )).val('');
    	//$(jq('f-'+ fieldset_id + '.' + plaats_id )).val('');
    	$(jq('img.'+fieldset_id+'.addressloader')).attr('src',site_template_url +'images/exclamation.gif');
    	alert(json['error']);
    	//$('notice').innerHTML = json['error'];
    }
    
    if(plaats_id == "00010") // dus op relatie niveau
    {
	if(!(json['error']))
	    $(jq('f-'+ fieldset_id + '.V0320')).val(json['cacheid']);
	else
	    $(jq('f-'+ fieldset_id + '.V0320')).val("-"+ json['cacheid']);
    }
    
    return false;
    /*
	$('#dubbel').hide();
	if(json['doubles'] != null && json['doubles'].length>0)
	{
	    if($(jq('f-'+ fieldset_id + '.00017')).attr('type') == "select-one")
	    	var agent = $(jq('f-'+ fieldset_id + '.00017') + ' option:selected').text();
	    else
	    	var agent = $(jq('fro-'+fieldset_id+'.00017')).text();

		var text = "";
		if(json['doubles'].length==1)
		{
			text = "Voor de opgegeven postcode en huisnummer combinatie is reeds iemand bekend bij " + agent + ", namelijk:<br><br>";
		}
		else
		{
			text = "Voor de opgegeven postcode en huisnummer combinatie zijn reeds relaties bekend bij " + agent + ", namelijk:<br><br>";
		}
		for(i=0;i<json['doubles'].length;i++)
		{
			text += "";
			text += "<a href='" + json['site_script_url'] + "/new_form/"+json['doubles'][i]['relatienummer']+"/new/pakket/99982'>";
			text += json['doubles'][i]['naam'];
			text += "</a>, "
			text += json['doubles'][i]['geboortedatum'];
			text += " (#";
			text += json['doubles'][i]['relatienummer'];
			text += ")<br>";
		}
		if(json['doubles'].length==1)
			text += "<br>Mocht u een dubbele relatie aan het invoeren zijn klik dan op bovenstaande relatie.";
		else
			text += "<br>Mocht u een dubbele relatie aan het invoeren zijn klik dan op de desbetreffende relatie.";

		$('#dubbel').html(text).show('slow');

	}
	*/
}

function remove_cache_adress(formId, fieldFieldsetId)
{
  
    var CacheId = $(jq('f-'+ fieldFieldsetId + '.V0320')).val()  * -1;
    
    if(CacheId < 0)
	CacheId = CacheId * -1;


    url = site_script_url + '/remove_address/'+ formId +'/'+ fieldFieldsetId +'/'+ CacheId +'/';
    $(jq('img.'+fieldFieldsetId+'.addressremover')).show();
    $(jq('img.'+fieldFieldsetId+'.addressremover')).attr('src', site_template_url +'images/ajax-loader-w.gif');

    $.ajax({
	url: url,
	success: function(response) {
	    var json = response;
	    if(json['error'] != null)
	    {
		$(jq('img.'+fieldFieldsetId+'.addressremover')).attr('src',site_template_url +'images/exclamation.gif');
		alert(json['error']);
	    }
	    else
	    {
		$(jq('img.'+fieldFieldsetId+'.addressremover')).attr('src',site_template_url+ 'images/accept.gif').show();
		setTimeout("$(jq('img." +fieldFieldsetId + ".addressremover')).fadeOut();",1500);
		$(jq('f-'+ fieldFieldsetId + '.V0320')).val('');
	    }
	}
    });

     return false;
}

function selectAll(setTo)
{
	$('#sub_offertes :checkbox').each(function(i){
		 $(this).attr('checked',setTo);
		 markRow($(this).attr('id').replace(/[^0-9]/g,""));
	})
}

function markRow(id)
{
	//console.log(id);
	if($('#verwijderen_'+id).attr('checked'))
		$('#row_'+id).css('background-color','#efefef');
	else
		$('#row_'+id).css('background-color','#ffffff');
}

function delete_offertes()
{
	var text = '';
	var c = document.getElementsByName('verwijderen');
	var checked = 0;
	for(var i=0;i<c.length;i++)
	{
		if (c[i].checked)
		{
			$('#row_'+c[i].value).addClass('error');
		}
	}

	var question = confirm('Weet u zeker dat u deze formulieren wilt verwijderen?');

	if(!question) return false;

	loadingAlert('show','Bezig met verwijderen van de formulieren.','menu');
	var formId;
	for(var i=0;i<c.length;i++)
	{
		if (c[i].checked)
		{
			var nounou = [];
			formId = c[i].value;
			url = site_script_url + '/delete_form/'+formId+'/1';

			$.ajax({
		         url: url,
		         success: function(response) {
		         	var json = response; //eval('(' + response + ')');
					if(json['error'])
					{
						$('#row_' + json['formId']).css('backgroundColor','#fff7ad');
						$('#row_' + json['formId']).after('<tr>' +
								'<td valign="top" style="margin:0px;padding:4px 0px 0px 4px;border-style:solid;border-width:0px 0px 1px 1px;border-color:#efefef;">' +
								'<img src="images/bullet_error.gif" width="16" height="12" border="0" align="center"></td>' +
								'<td colspan="7" style="font-size:11px;padding:4px;border-style:solid;border-width:0px 1px 1px 0px;border-color:#efefef;">' +
								' Dit formulier kan niet verwijderd worden vanwege de volgende reden:<br><b>' + json['error'] + '</b></td></tr>');

					}
					else
					{
						$('#row_' + json['formId']).remove();
					}
		         }
		     });

		}
	}

	loadingAlert('hide');
	// get all checked boxes
	// loop 'm all - one ajax call per form
	// update on screen, no popup...
	return false;
}


function close_notification(noticeId)
{
	$('#notice_' + noticeId).hide();
	url = site_script_url + '/close_notification/' + noticeId + '/';
	$.ajax({
         url: url,
         success: function(response) {
         	var doNothing = true;
         }
	});
}

function close_agent_note(note_id)
{
	$('#agent_note_' + note_id).hide();
	url = site_script_url + '/close_agent_note/' + note_id + '/';
	$.ajax({
         url: url,
         success: function(response) {
         	var doNothing = true;
         }
	});
}

function close_activationdata(formID, fieldsetID, activationID)
{
	$('#activation_'+ activationID +'_'+ fieldsetID).hide();
	url = site_script_url + '/close_activationdata/' + activationID + '/' + fieldsetID + '/';
	$.ajax({
         url: url,
         success: function(response) {
         	var doNothing = true;
         }
	});

}


function searchFocus(category)
{
	$('#zoeken').css("border",'2px solid #f4ec69');
	$('#zoeken').focus();
	$('#zoeken').val(category + ' ');
}

function searchIt()
{
	query = $('#zoekenRenV').val();
	search(query,'bing');
	return false;
}

function search(userQuery,formName)
{
	if(typeof(userQuery)=="undefined")
		var userQuery = $('#zoeken').val();

	if(userQuery =="")
	{
	  ldt('<b>Let op</b>: De zoekopdracht mag niet leeg zijn.','error','header');
	  showTemp('loadingDiv',4000);
	  return false;
	}

	//$('#zoeken').val(userQuery.replace(/[^a-zA-Z0-9\s]/g,' '));
	//userQuery = userQuery.replace(/[^a-zA-Z0-9\s]/g,' ');
	
	//alert('cancel....');
	//return false;

	//alert('zoeken: '+$('zoeken').value);
	//return false;
	var categoryExp = /^((f|form|formid|l|label|o|offerte|offertes|r|relatie|relaties|p|polis|polissen|v|verzekeringen|h|hypotheek|hypotheken|g|gebruiker|tp|tussenpersoon)\s)/i;
	var re = new RegExp(categoryExp);
	var m = re.exec(userQuery);
	if (m == null) m = 1;
	if (m[0] == null) {
	  //alert("Begin de zoekopdracht met offerte, o, relatie, r, polis, p, verzekering, v, hypotheek of h.");
	  ldt("<b>Let op</b>: begin de zoekopdracht met r (relatie), p (polis) of o (offerte).",'error','header');
	  showTemp('loadingDiv',8000);
	  $('#searchHelp').show();
	  return false;
	}
	else
	{
	  var category = m[0].substring(0,2);
	}

	  var withoutSomeCharactersZoeken = userQuery.replace(/\'/,'%');
	  var query = withoutSomeCharactersZoeken.replace(re, '');
	  var type = 'string';

	  var fieldAndPage = [];

	  // postcode
	  var rePostcode = /\d{4}\s*[a-z]{2}(?=(\s|$))/i; // ($\s|!$\w) /\d{4}\s*[a-z]{2}/i /\d{4}\s*([a-z]{2}\s)|($([a-z]{2}))/i
	  if(param = query.match(rePostcode))
	  {
	  	type = 'postalcode';
	  	param = param[0].replace(/\s+/g, ''); // remove spaces
	  	fieldAndPage.push(getSearchFields(category,type,param));
	  	query = query.replace(rePostcode, '');
	  }

	  // gebruiker or producent
	  var reGebruiker = /((\s|^)p|(\s|^)g)\s[a-z]+/i; // ($\s|!$\w) /\d{4}\s*[a-z]{2}/i /\d{4}\s*([a-z]{2}\s)|($([a-z]{2}))/i
	  if(param = query.match(reGebruiker))
	  {
	  	type = 'gebruiker';
	  	param = param[0].replace(/(p|g)\s/g, ''); // remove space g space
	  	fieldAndPage.push(getSearchFields(category,type,param));
	  	query = query.replace(reGebruiker, '');
	  }

	  // relatienummer
	  var reRelatienummer = /(r)\s[0-9]+/i; // ($\s|!$\w) /\d{4}\s*[a-z]{2}/i /\d{4}\s*([a-z]{2}\s)|($([a-z]{2}))/i
	  if(param = query.match(reRelatienummer))
	  {
	  	type = 'relatienummer';
	  	param = param[0].replace(/(r)\s/g, ''); // remove space r space
	  	fieldAndPage.push(getSearchFields(category,type,param));
	  	query = query.replace(reRelatienummer, '');
	  }

	  // label xxxxx
	  var reLabel = /((v|V)|\d){1}\d{4}/;
	  if((param = query.match(reLabel)) && (category.match(/l/i)))
	  {
	  	type = 'label';
	  	param = param[0].replace(/(l)\s/g, ''); // remove space l space
	  	fieldAndPage.push(getSearchFields(category,type,param));
	  	query = query.replace(reLabel, '');
	  }

      // form xxxxx
      var reForm = /(f)\s[0-9]+/i
      if((param = query.match(reForm)) && (category.match(/l/i)))
      {
        type = 'form';
        param = param[0].replace(/(f)\s/g, ''); // remove space l space
        fieldAndPage.push(getSearchFields(category,type,param));
        query = query.replace(reForm, '');
      }

	  // kenteken
	  var reKenteken = /[a-zA-Z][a-zA-Z]-\d\d-\d\d|\d\d-\d\d-[a-zA-Z][a-zA-Z]|\d\d-[a-zA-Z][a-zA-Z]-\d\d|[a-zA-Z][a-zA-Z]-\d\d-[a-zA-Z][a-zA-Z]|[a-zA-Z][a-zA-Z]-[a-zA-Z][a-zA-Z]-\d\d|\d\d-[a-zA-Z][a-zA-Z]-[a-zA-Z][a-zA-Z]|\d\d-[a-zA-Z][a-zA-Z][a-zA-Z]-\d\d-[a-zA-Z][a-zA-Z][a-zA-Z]-[a-zA-Z]\d\d|[a-zA-Z]-\d\d\d-[a-zA-Z][a-zA-Z]/i;
	  if(param = query.match(reKenteken))
	  {
	  	type = 'license_plate';
	  	var kenteken = param[0].toUpperCase();
	  	fieldAndPage.push(getSearchFields(category,type,kenteken));
	  	query = query.replace(reKenteken, '');
	  }

	  // status
	  var extra = '';
	  var reStatus = /offerte|offertes|topklasse|aanvraag|acceptatie|teruggezet|geaccepteerd|afgewezen|vvd|vervallen voorlopige dekking|aflopende reis|aflopende annulering/i;
	  if(param = query.match(reStatus))
	  {
	  	type = 'status';
	  	param = param[0].substring(0,1).toUpperCase() + param[0].substring(1).toLowerCase();
	  	//if(param.match(/acceptatie/i)) param = '!Acceptatie';
	  	//extra = query;
	  	fieldAndPage.push(getSearchFields(category,type,param));
	  	query = query.replace(reStatus, '');
	  }

	  // numeriek
	  var reNumeric = /[0-9]+/; // /[0-9]+|#([0-9][a-z])+/
	  if(param = query.match(reNumeric))
	  {
	  	type = 'numeric';
	  	param[0] = param[0].replace('#', '');
	  	fieldAndPage.push(getSearchFields(category,type,param[0]));
	  	query = query.replace(reNumeric, '');
	  }

	  // if query still holds something it should be the string
	  reTrim = /^\s+|\s+$/g;
	  if(query.replace(reTrim,"").length>1)
	  {
	  	type = 'string';
	  	query = query.replace(reTrim, '');
	  	fieldAndPage.push(getSearchFields(category,type,query));
	  }

	  var go = true;
	  if(fieldAndPage.length == 0)
	  {
	  	querystring = 'Deze combinatie is niet mogelijk.';
	  	go = false;
	  }

	  if(go)
	  {
	  	// populate the data inputs
	  	if(typeof(formName)=="undefined")
	  	{
		  	for(i=0;i<fieldAndPage.length;i++)
		  	{
		  		// fieldname + ',' + query + ',' + page + ',' + text;
		  		var data = fieldAndPage[i].split(",");
			  	$('#dynamic_'+i).attr("name",data[0]);
			  	$('#dynamic_'+i).val(data[1]);
			  	$('#action').val(data[2]);
			  	text = data[3];
		  	}

		  	$('#imitate').val($('#zoeken').val());
		  	$('#imitate').attr("name",'data[zoekenRenV]');
		  	
		  	//document.forms[0].action = document.forms[0].action; // + '/' + page + '/' + extra;
		  	loadingAlert('show','Bezig met zoeken in ' + text + '...','header'); //left over: ' + query); //  + fieldname + '=' + query);

		  	document.forms[0].submit(); //submit the form
		  	return false;
	  	}
	  	else
	  	{

	  		//$('#searchquery').val($('#zoekenRenV').val());

	  		// clear the form
  			var formFields = [	'data[relatienr]', 'data[naam]', 'data[adres]', 'data[postcodewoonplaats]',
  								'data[polisnr]', 'data[branche]', 'data[maatschappij]', 'data[klantnaam]', 'data[kenteken]',
  								'data[klant]', 'data[status]', 'data[agentcode]', 'data[label]'];

			jQuery.each(formFields, function(index, field) {
				$(jq(this)).val('');
			});

			for(i=0;i<fieldAndPage.length;i++)
		  	{
		  		// fieldname + ',' + query + ',' + page + ',' + text;
		  		var data = fieldAndPage[i].split(",");
			  	//$('#dynamic_'+formName+i).attr("name",data[0]);

			  	//alert(jq(data[0]) + ': ' + data[1]);

			  	tmpFormName = jq(formName);
			  	tmpField = jq(data[0]);

			  	// input exists?
			  	if($(tmpFormName + ' ' + tmpField).length)
			  		$(tmpFormName + ' ' + tmpField).val(data[1]);
			  	else
			  	{
			  		$('#dynamic_'+formName+i).attr("name",data[0]);
			  		$('#dynamic_'+formName+i).val(data[1]);
			  	}
			  	//$('#dynamic_'+formName+i).val(data[1]);
			  	$('#action'+formName).val(data[2]);
			  	text = data[3];
		  	}
		  	//document.forms[0].action = document.forms[0].action; // + '/' + page + '/' + extra;
		  	loadingAlert('show','Bezig met zoeken in ' + text + '...','header'); //left over: ' + query); //  + fieldname + '=' + query);
		  	$("#" + formName).submit();
		  	return false;
	  	}
	  }
	  else
	  {
	  	querystring = querystring;
		ldt(querystring,'error','header');
		showTemp('loadingDiv',5000);
	  	//alert(querystring);
	  	return false;
	  }
}


function getSearchFields(category,type,query)
{
	  var page, querystring, text;

	  // relatie query
	  if(category.match(/r/i))
	  {
	  	page = 'list_relaties';
	  	text = 'relaties';
		switch(type)
		{
			case 'numeric':
				fieldname = 'data[relatienr]';
			break;
			case 'string':
				fieldname = 'data[naam]';
			break;
			case 'postalcode':
				fieldname = 'data[postcodewoonplaats]';
			break;
		}
	  }
	  // polis query
	  if(category.match(/p|v/i))
	  {
	  	page = 'list_polissen';
	  	text = 'verzekeringen (polissen)';
		switch(type)
		{
			case 'numeric':
				fieldname = 'data[polisnr]';
			break;
			case 'string':
				fieldname = 'data[klantnaam]';
			break;
			case 'license_plate':
				fieldname = 'data[kenteken]';
			break;
		}
	  }
	  // offerte query
	  if(category.match(/o/i))
	  {
	  	page = 'list_offertes';
	  	text = 'offertes &amp; aanvragen';
		switch(type)
		{
			case 'numeric':
				fieldname = 'data[agentcode]';
			break;
			case 'string':
				fieldname = 'data[klant]';
			break;
			case 'postalcode':
				fieldname = 'data[postcodewoonplaats]';
			break;
			case 'relatienummer':
				fieldname = 'data[relatienummer]';
			break;
			case 'status':
				fieldname = 'data[status]';
			break;
			case 'gebruiker':
				fieldname = 'data[producent]';
			break;
		}
	  }
	  // label query
	  if(category.match(/l/i))
	  {
	  	page = 'label';
	  	text = 'labels coderingen';
	  	fieldname = 'data[label]';
		switch(type)
		{
			case 'label':
				fieldname = 'data[label]';
			break;
		}
	  }
	  // form query
	  if(category.match(/f/i))
	  {
	  	page = 'view_form';
	  	text = 'formulieren';
	  	fieldname = 'data[form_id]';
		switch(type)
		{
			case 'form':
				fieldname = 'data[form_id]';
			break;
		}
	  }
	  // hypotheek query
	  if(category.match(/h/i))
	  {
	  	page = 'list_ubizz_hypotheken';
	  	text = 'hypotheken';
		switch(type)
		{
			case 'string':
				fieldname = 'data[filter_naam]';
			break;
			case 'numeric':
				fieldname = 'data[filter_nummer]';
			break;
		}
	  }

	  // gebruiker query
	  if(category.match(/g/i))
	  {
	  	page = 'list_users';
	  	text = 'gebruikers';
		switch(type)
		{
			case 'string':
				fieldname = 'data[naam]';
			break;
			case 'numeric':
				fieldname = 'data[user_id]';
			break;
		}
	  }

	  // agent query
	  if(category.match(/tp/i))
	  {
	  	page = 'list_agents';
	  	text = 'tussenpersonen';
		switch(type)
		{
			case 'string':
				fieldname = 'data[naam]';
			break;
			case 'numeric':
				fieldname = 'data[code]';
			break;
		}
	  }
	  
	var fieldAndPage = fieldname + ',' + query + ',' + page + ',' + text;
	return fieldAndPage;

}

function newNewsReply(id)
{
	$('#tab-page-'+id).attr('berichten','new');
	var el;
	if (el = document.getElementById('tab-page-'+id))
		el.tabPage.select();

	return false;
}

/*

	<form id="newMessageForm" name="newMessageForm" method="post" action="{site_script_url}" >
	<!---<input    id="nm_action" type="text" name="action" value="">--->
		<input    id="nm_message_content" type="text" name="data[message_content]" value="">
		<textarea id="nm_message_subject" name="data[message_subject]"></textarea>
		<input    id="nm_message_links" type="text" name="data[links]" value="">
		<input    id="nm_message_labels" type="text" name="data[labels]" value="">
		<input    id="nm_send_to_list" type="text" name="data[send_to_list]" value="">
		<input    id="nm_permission" type="text" name="data[permission]" value="">
		<input    id="nm_agent" type="text" name="data[agent]" value="">
	</form>
	
	'messages' => array('tab','conversation_id','permission','agentcode','user_id','table','field','value','postvak_in'),	

*/

function newMessage2(toInbox,subject,content,labels,links,recipients)
{		
	// fill the hidden form and submit
	var url = site_script_url + '/messages/inbox/new/' + toInbox;
	
	$('#newMessageForm').attr('action',url);
	$('#nm_message_content').val(content);
	$('#nm_message_subject').val(subject);
	$('#nm_message_links').val(links);
	$('#nm_message_labels').val(labels);
	$('#nm_recipients').val(recipients);
	//$('#nm_send_to_list').val('ola');
	//$('#nm_permission').val('ola');
	//$('#nm_agent').val('ola');	
	$('#newMessageForm').submit();
	
	return false;
}

function newMessage(id)
{
	$("#tab-page-" + id).attr('berichten','new');
	var el;
	if (el = document.getElementById('tab-page-'+id))
		el.tabPage.select();
	
	//loadBericht('tab-page-'+id,'new');		
	return false;
}

var sendToList;
function markMessageAsPrivate(messageId,tabSuffix)
{
	// a private message is a messages to oneself
	var id = 'send_message_form_inputs_' + tabSuffix;
	
	if($('#'+id+' #private').val() == 1)
		setPrivateTo = 0;
	else
		setPrivateTo = 1
	
	$('#'+id+' #private').val(setPrivateTo);
		
	if(setPrivateTo == 1)
	{
		$('#to_'+messageId).hide();
		$('#reply_textarea_'+messageId).addClass('messagePrivate');
		
		var fromPermission 	= $('#'+id+' #from_permission').val();
		var fromUserId 		= $('#'+id+' #from_user_id').val();
		var fromAgentCode 	= $('#'+id+' #from_agent').val();
		if(fromPermission == '' && fromAgentCode == '')
		{
			$('#'+id+' #send_to_list').val('user_id=' + fromUserId);
		}
		else
		{
			var query = '';
			if(fromPermission.length > 0)
				query = query + 'permission=' + fromPermission + '&';
			
			if(fromAgentCode.length > 0)
				query = query + 'agent=' + fromAgentCode + '&';
			
			$('#'+id+' #send_to_list').val(query);
		}
	}
	else
	{
		$('#reply_textarea_'+messageId).removeClass('messagePrivate');
		$('#to_'+messageId).show();
		$('#'+id+' #send_to_list').val($('#'+id+' #org_send_to_list').val());
	}
	$('#reply_textarea_'+messageId).focus();
	return true;
	
}

function load_kredietmodule(txtLogin1,txtPassword1,Lidnr,Email)
{
	//y(txtLogin1);
	//y(txtPassword1);
	//y(Lidnr);
	//y(Email);
	var url = 'https://www.interbank.nl/intermediair/index.asp?txtLogin1='+txtLogin1+'&txtPassword1='+txtPassword1+'&Lidnr='+Lidnr+'&Email='+Email;	

	var winId = window.open(url,'kredietmodule'+Lidnr);
	winId.focus();
	
	return false;
}

function load_interbank()
{
	//return;
	ld('hide');
	/*
	$('#interBankAanvragen').attr('src','http://test.interscore.nl/ib152/intermediair/kredietaanvraag/openAanvraag.asp?nummer=-1');
	$('#interBankOverzicht').attr('src','http://test.interscore.nl/ib152/intermediair/kredietaanvraag/selectieframes.htm');	
	$('#interBankMaximumKrediet').attr('src','http://test.interscore.nl/ib152/intermediair/aanvragen/vkm_cons.asp');
	*/
	
	/*
		http://test.interscore.nl/ib152/intermediair/aanvragen/free2useframe.asp?
		Banner=N&amp;fid=CONV00048083&amp;txtPassword1=interbank365&amp;Lidnr=253&amp;Email=stefan.pouwels@gmail.com"
		
		http://test.interscore.nl/ib152/intermediair/aanvragen/Free2UseFrame.asp?
		fid=365&amp;Lidnr=365&amp;Email=stefan.pouwels@gmail.com&amp;css="
	*/
	
	var baseurl = 'http://test.interscore.nl/ib152/intermediair/';
	var baseurl = 'https://www.interbank.nl/intermediair/';
	var lidnr = 10;
	var email = 'stefan.pouwels@gmail.com';
	var txtLogin1 = 'CONV00048083';
	var txtPassword1 = 'vcngoes';//'interbank365';
	var css = ''; // '&css='
	var banner = '&banner=N';
	var loginString = '?fid='+txtLogin1+'&txtPassword1='+txtPassword1+'&Lidnr='+lidnr+'&Email='+email+css+banner;
	var loginStringRekenmodule = '?fid='+txtLogin1+css+banner;//+'&Lidnr='+lidnr;
	
    IkmAanvraagModuleUrl	= baseurl + "aanvragen/Free2UseFrame.asp" 			+ loginString; // aanvragen    
    IkmRekenModuleUrl 		= baseurl + "aanvragen/ikm_rekenmodule.asp" 		+ loginStringRekenmodule; // maximum krediet    
    IkmInformatieModule 	= baseurl + "aanvragen/ikm_informatiemodule.asp" 	+ loginString; // berekenen en dingen opvragen
    
    
    IkmAanvraagModuleUrl	= baseurl + "kredietaanvraag/openAanvraag.asp?nummer=-1"	+ loginString; // aanvragen
    IkmInformatieModule 	= baseurl + "kredietaanvraag/selectieframes.htm" 			+ loginString; // berekenen en dingen opvragen
	IkmRekenModuleUrl 		= baseurl + "aanvragen/vkm_cons.asp"		 				+ loginStringRekenmodule; // maximum krediet    
    
	$('#interBankAanvragen').attr('src',IkmAanvraagModuleUrl);		// aanvragen
	$('#interBankOverzicht').attr('src',IkmInformatieModule);		// berekenen en dingen opvragen
	$('#interBankMaximumKrediet').attr('src',IkmRekenModuleUrl);	// maximum krediet
	
	y('dat was het...');
	
	return;
	
}


function setSenderAndReceiver(direction,permission)
{
	//y('-------------');
	//y('direction: ' + direction);
	//y('permission: ' + permission);
	
	$('#labels').val('label=Direct');
	
	//y($('.' + direction).length);
	if(direction == 'from')
		$('#from_permission').val('');
	
	if(direction == 'to')
		$('#send_to_list').val('');
	
	$('.' + direction + '_input').each(function(i)
	{
		if(direction == 'from')
		{
			if(permission != $(this).attr('permission') && $(this).val() == '1')
			{
				toggleCustomCheckbox(direction + '_' + $(this).attr('permission'));
			}
			else if(permission == $(this).attr('permission') && $(this).val() == '1')
			{
				$('#from_permission').val(permission);
			}
		}
		
		if(direction == 'to')
		{
			if($(this).val() == '1')
				$('#send_to_list').val($('#send_to_list').val() + 'permission=' + $(this).attr('permission') + '|');
		}
	});
	
	return;
}

function replyToMessage(replyBerichtId,tabSuffix)
{
	var id = 'send_message_form_inputs_' + tabSuffix;
	
	$('#'+id+' #message').val($('#reply_textarea_'+replyBerichtId).val());
	$('#'+id+' #alsoAddTheseLinks').val($('#tab-page-'+tabSuffix).attr('alsoAddTheseLinks'));
	
	/*
	y($('#reply_textarea_'+replyBerichtId).val());
	y($('#user_color').val());
	y($('#conversation_id').val());
	y('uid:' + $('#site_user_id').val());
	y('from:' + $('#reply_permission').val());	
	y('agent:' + $('#reply_agent').val());
	y('aan:' + $('#reply_to').val());
	y('to:' + $('#to_permission').val());
	y('agent:' + $('#to_agent').val());
	return;
	*/
	
	if($('#tab-page-'+tabSuffix).attr('berichten') == 'new')
		$('#tab-page-'+tabSuffix).attr('berichten','');
	
	var url = site_script_url + '/add_message/';	
	var bericht_data = $('#'+id+' :input').serialize();
	
	//y('#'+id);
	//y(bericht_data);
	//return;
	
	$.ajax({
		type: "POST",
		url: url,
		data: bericht_data,
		success: function(response,statusText){
			
			if($('#conversation_id').val() == 'new')
			{
				loadBerichten('tab-page-'+tabSuffix,true);
			}
			else
			{
				loadBericht('tab-page-'+tabSuffix,$('#conversation_id').val(),true);
			}
			
		}
	});
	

	return;
	//loadBericht('tab-page-inbox','{conversatie_id}');
}


function loadSwfUploadPolis(id)
{
	var relatienummer = $('#relatienummer').val();
	var volgnummers = id.split('.');
	for (var i=0; i<volgnummers.length; i++) 
	{
		if(i==1) {var volgnummer = volgnummers[i];}
		if(i==2) {var volgnummersub = volgnummers[i];}
	}
	
	if($('#ReactID').length)
	{
		
		var reactId = $('#ReactID').val();
		var post_params = 	{ 
								"ReactID"				: 	reactId,
								"action" 				: 	"upload",
								"data[link]" 			: 	"[{\"entity\":\"polis\",\"key\":\"relatienummer\",\"value\":\""+relatienummer+"\"},{\"entity\":\"polis\",\"key\":\"volgnummer\",\"value\":\""+volgnummer+"\"},{\"entity\":\"polis\",\"key\":\"volgnummersub\",\"value\":\""+volgnummersub+"\"}]"
							};
		// $('#reply_to_message_id').val(id);
		
	}	
		
	loadSwfUpload(id,post_params);
	return false;
}


function loadSwfUploadRelatie(id)
{
	//y('loading targetId: ' + id);
	if($('#ReactID').length)
	{
		
		var reactId = $('#ReactID').val();
		var post_params = 	{ 
								"ReactID"				: 	reactId,
								"action" 				: 	"upload",
								"data[link]" 			: 	"[{\"entity\":\"relatie\",\"key\":\"relatienummer\",\"value\":\""+id+"\"}]"
							};
		// $('#reply_to_message_id').val(id);
		
	}	
		
	loadSwfUpload(id,post_params);
	return false;
}

function loadSwfUploadMessage(id,conversationId,tabSuffix)
{
	//y('loading targetId: ' + id + ', cId: ' + conversationId);
	if($('#ReactID').length)
	{
		if(id == 'new')
		{
			newTargetId = Math.floor(Math.random()*10000001);	
			
			$('#spanButtonPlaceholder' + id).attr('id','spanButtonPlaceholder' + newTargetId);
			$('#loadingDiv' + id).attr('id','loadingDiv' + newTargetId);
			$('#btnCancel' + id).attr('id','btnCancel' + newTargetId);
			$('#flashUI' + id).attr('id','flashUI' + newTargetId);
			$('#span_' + id).attr('id','span_' + newTargetId);
			
			var button_placeholder_id = "spanButtonPlaceholder" + newTargetId;
			var progressStuff = "loadingDiv";//"fsUploadProgress" + targetId;
			var cancelbutton = "btnCancel" + newTargetId;
			var flashUIstuff = "flashUI" + newTargetId;		
			id = newTargetId;			
		}
		
		var reactId = $('#ReactID').val();
		var post_params = 	{ 
								"ReactID"				: 	reactId,
								"action" 				: 	"upload",
								"data[link]" 			: 	"[{\"entity\":\"message\",\"key\":\"messageId\",\"value\":\""+conversationId+"_"+id+"\"}]"
							};
		
		var messageFormId = 'send_message_form_inputs_' + tabSuffix;	
		$('#'+messageFormId+' #reply_to_message_id').val(id);
	}	
		
	loadSwfUpload(id,post_params);
	return false;
}


function messageSelect(action)
{
	switch(action)
	{
		case 'all':
			var setValueTo = 1;
			var query = '.messages';
		break;
		case 'none':
			var setValueTo = 0;
			var query = '.messages';
		break;
		case 'read':
			var setValueTo = 1;
			var query = '.messages';
			var filter = 'read';
		break;
		case 'unread':
			var setValueTo = 1;
			var query = '.messages';
			var filter = 'unread'
		break;
	}
	
	$(query).each(function(i)
	{
		var val = $(this).val();
		
		if(typeof(filter)=='undefined')		
		{
			$('#bericht_' + val + '_img').attr('src','images/cb_' + setValueTo + '.gif');
			$(this).attr("checked", "checked");
		}
		else
		{
			if($(this).hasClass(filter))
			{
				$('#bericht_' + val + '_img').attr('src','images/cb_' + setValueTo + '.gif');
				$(this).attr("checked", "checked");
			}
			else
			{
				$('#bericht_' + val + '_img').attr('src','images/cb_0.gif');
				$(this).removeAttr("checked");
			}
		}
	});
}

function markConversation(newstatus,conversationId)
{	
	if(typeof(conversationId)!='undefined')
	{
		var url = site_script_url + '/mark_messages/' + newstatus + '/' + conversationId;
		$.get(url, function(data) {
			return;
		});
		return;
	}
		
	
	var url = site_script_url + '/mark_messages/' + newstatus;
	var conversations = $('#conversationsForm :input').serialize();

	var readAmount = 0;
	
	$.ajax({
		type: "POST",
		url: url,
		data: conversations,
		success: function(response,statusText){
			
			$('#conversationsForm input:checked:checked').each(function(i){
				
				// current status != new status?
				if(!$('#row_'+$(this).attr('id')).hasClass(newstatus))
				{
					if(newstatus == 'read')
						readAmount ++;
					else
						readAmount --;
				}				
				
				$('#row_'+$(this).attr('id')).attr('class',newstatus);
				
				//y(delaUnreadMessages);
				
			});
			
			updateMessageCounters(readAmount);
		}
	});
}

function updateMessageCounters(readAmount)
{
	$('.counter,.tab-page').each(function (i) {
		var counterValue = $(this).attr('unreadAmount');
		var newCounterValue = counterValue - readAmount;
		if(newCounterValue < 0) newCounterValue = 0;
		
		$(this).attr('unreadAmount',newCounterValue);
		
		if($(this).hasClass('counter'))
			if(newCounterValue==0)
			{
				$(this).html('');
				$(this).parent().css('font-weight','normal');
			}
			else
			{
				$(this).html('(' + newCounterValue + ')');
				$(this).parent().css('font-weight','bold');
			}		
	});
	
	
	return false;
	
}

function messageFilter(newfilter,tabSuffix)
{
	// unread mag in combi met label...
	var currentFilter = $('#tab-page-'+tabSuffix).attr('filter');
	var keepFilter = labels = unread = '';
	var keepAll = false;
	if(newfilter == 'unread')
		keep = 'labels';
	else
		keep = 'unread';
	
	filters = currentFilter.split('|');
	$.each(filters, function(index, currentFilter) { 		
		// if label keep unread setting
		if(newfilter != currentFilter)
		{
			if(currentFilter == keep)
			{
				// keep = 'unread'
				unread = unread + '|' + currentFilter;
			}
			else
			{
				// keep = 'labels'
				labels = labels + '|' + currentFilter;
			}	
		}
		else
		{
			newfilter = '';
		}
	});
	
	$('#tab-page-'+tabSuffix).attr('filter','|'+unread+labels+'|'+newfilter);
	
	/* toggle read unread
	if($('#tab-page-'+tabSuffix).attr('filter') == filter)
		$('#tab-page-'+tabSuffix).attr('filter','');
	else
		$('#tab-page-'+tabSuffix).attr('filter',filter);
	*/
	loadBerichten('tab-page-'+tabSuffix);		
	return false;
}

function checkEnter(e,id,type,popup){ //e is event object passed from function invocation
	var characterCode;
	if(e && e.which){ //if which property of event object is supported (NN4)
		e = e;
		characterCode = e.which; //character code is contained in NN4's which property
	}
	else
	{
		//e = event;
		characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}

	if(characterCode == 13){ //if generated character code is equal to ascii 13 (if enter key)
		//alert('enter press in da box' + e.id);
		if(id)
		{
			if(id=="zoekenRenV")
			{
				var formId = 'bing';
				var query = $('#'+id).val();
				return search(query,formId);
			}

			if(type)
				$('#zoeken').val(type + ' ' + $('#'+id).val());
			else
				$('#zoeken').val($('#'+id).val());

			if(popup)
				$('#'+popup).hide();
		}
		return search();
		//return false;
	}
	else
	{
		return true;
	}
}

function checkkenteken(e,id,type,popup){ //e is event object passed from function invocation
	var characterCode;
	if(e && e.which){ //if which property of event object is supported (NN4)
		e = e;
		characterCode = e.which; //character code is contained in NN4's which property
	}
	else
	{
		//e = event;
		characterCode = e.keyCode; //character code is contained in IE's keyCode property
	}

	if(characterCode == 13){ //if generated character code is equal to ascii 13 (if enter key)

		kenteken('leeg', id);
		return false;
	}
	else
	{
		return true;
	}
}

// function on hold - not yet used.
function changeFontSize(inc)
{
  var p = document.getElementsByTagName('label');
  for(n=0; n<p.length; n++) {
    if(p[n].style.fontSize) {
       //var size = parseInt(p[n].style.fontSize.replace("px", ""));
    } else {
       var size = 12;
    }
    p[n].style.fontSize = size+inc + 'px';
   }
}

function bestaandeRelatiePopup()
{
	$('#newOffer').style.top = (150 + document.viewport.getScrollOffsets().top) + 'px';
	$('#newOffer').style.left = (document.viewport.getWidth()/2-($('bestaandeRelatie').getWidth()/2)).round() + 'px';
	$('#newOffer').style.display='';
	$('bestaandeRelatieZoeken').focus();
}

function newOffer(type,hrefAction)
{
	if($('#nieuwOfferMenu').hasClass("sfhover"))
	{
		$('#nieuwOfferMenu').removeClass("sfhover");
	}
	else
	{
		$('#nieuwOfferMenu').hide();
		setTimeout('$(\'#nieuwOfferMenu\').show();',1);
	}

	if(typeof(hrefAction)=="undefined")
	{
		hrefAction = "/new_form/0/new/pakket/99982";
		type = "Totaalpakket";
	}

	var newText = 'Nieuwe ';
	if(type == 'Totaalpakket')
		newText = 'Nieuw ';

	$('#titleNewOffer').html(newText + type);
	$('#action_href').attr("href",site_script_url + hrefAction);
	$('#newOffer').css("top", (150 + $(window).scrollTop()));
	$('#newOffer').css("left", $(window).width()/2-($('#newOffer').width()/2));
	$('#newOffer').fadeIn("fast");

	$('#step_1').show();
	$('#step_2').hide();

	//
	// $('bestaandeRelatieZoeken').focus();
	return false;
}

function nextTab(step)
{
	if(!step) step = 1;
	var nextTab;
	nextTab = ((WebFXPanes[0].getSelectedIndex())+step);
	var x = WebFXPanes[0].getSelectedIndex();

	//alert($('fieldset-voortgang').tabPage);

	//alert($('fieldset-voortgang').tabPage.style.display);
	//k.tabPage.tab.style.display = 'none';
	WebFXPanes[0].setSelectedIndex(nextTab);

	//alert($('fieldset-voortgang').tabPage.style.display);
	//alert(WebFXPanes[0].tab);


}
function highlightTab(fieldsetid,highlight)
{
	return;
	/*
	var el;
	if (el = document.getElementById('fieldset-' + fieldsetid))
	{
		if (highlight)
			el.tabPage.tab.onmouseover();
		else
			el.tabPage.tab.onmouseout();
	}*/
}

function checkerDeCheck()
{

	alert(WebFXPanes);

}

function selectTabWithId(id)
{
	var el;
	if (el = document.getElementById(id))
		el.tabPage.select();
	return false;
}

function selectTab(fieldsetid)
{
	var el;
	if (el = document.getElementById('fieldset-' + fieldsetid))
		el.tabPage.select();
}

function toggleContinuator()
{
	var el;
	if (document.getElementById('f-edit_user.continuator').checked)
	{
		document.getElementById('continuator').style.display = '';
	}
	else
	{
		document.getElementById('continuator').style.display = 'none';
	}
}

var ignoreOnBeforeUnload = false;
$(document).ready(function()
{
	if($('#teruggezet').length)
		if($('#teruggezet').val()== 1)
			window.onbeforeunload = function (e) {
				var e = e || window.event;
				if(ignoreOnBeforeUnload == false)
					{
					loadingAlert('hide');
					// For IE and Firefox
					if (e) {
						e.returnValue = 'Dit formulier is teruggezet en staat nog in aanvraag.' +
								'\nKies \'annuleren\' en zet het formulier op \'Ter acceptatie bij '+ site_company +'\'.';
					}

					// For Safari
					return 'Dit formulier is teruggezet en staat nog in aanvraag.' +
								'\nKies \'annuleren\' en zet het formulier op \'Ter acceptatie bij '+ site_company +'\'.';
					}
			};
}); 

function gotoUrl(url)
{
	ignoreOnBeforeUnload = true;
	window.location.replace(url);
}

function setupInteraction(fieldsetID, fieldsetSort)
{
	var el, els, i, j;
	//storeCurrentFormValues(); SP 20091030: not needed anymore?
	var readOnly = true;
	// stuff for the swfupload
	if($('#ReactID').length)
	{
		var reactId = $('#ReactID').val();
		var formID = $('#form_id').val();
		var relatieFieldsetId = $(jq('fieldset_id')).val();
		var relatienummer = $(jq('f-'+relatieFieldsetId+'.00001')).val();
		readOnly = ($('#form_readonly').val() == 'true' ? true : false);
		/*
		var post_params = { "ReactID": reactId,
							"action" : "upload",
							"data[upload_type]" : "form_attachment",
							"data[form_id]" : formID,
							"data[fieldset_id]" : fieldsetID,
							"data[relatienummer]" : relatienummer};
		*/
		var post_params = 	{ 
								"ReactID"				: 	reactId,
								"action" 				: 	"upload",
								"data[link]" 			: 	"[{\"entity\":\"form\",\"key\":\"formID\",\"value\":"+formID+"}," + 
															"{\"entity\":\"fieldset\",\"key\":\"FormFieldSetID\",\"value\":"+fieldsetID+"}]"
							};
		
		
		/*
		
		var post_params = 	{ 
								"ReactID"				: reactId,
								"action" 				: "upload",
								"data[link][0][entity]"	: "form",
								"data[link][0][key]"	: "formID",
								"data[link][0][value]"	: formID,
								"data[link][1][entity]"	: "fieldset",
								"data[link][1][key]"	: "FormFieldSetID",
								"data[link][1][value]"	: fieldsetID
							};	
		*/
	}

	if(typeof fieldsetID != 'undefined')
	{	
		addOnchangeEvent('V0628', fieldsetID, fieldSetShownToUserSum);
		addOnchangeEvent('00024', fieldsetID, toggleDisplayChildren);
		addOnchangeEvent('00023', fieldsetID, toggleDisplayPartner);
		addOnchangeEvent('00039', fieldsetID, toggleForeignZip);
		addOnchangeEvent('00017', fieldsetID, syncProducentList);
		//addOnchangeEvent('00011', fieldsetID, relatieDisablePlaatsWoonplaats);

		if(addOnchangeEvent('89080', fieldsetID, updateDangerClass))
		{
			var klasse = document.getElementById('f-' + fieldsetID + '.10090');

			if(klasse != null)
				klasse.disabled = 'disabled';
		}

		switch(fieldsetSort)
		{
		    case 'pakket.99982':
			case 'pakket.99990':
				addOnchangeEvent('00017', (fieldsetID - 1), syncProducentList);
				$(jq('a-' + fieldsetID + '.60004')).bind('click',function(){getPakketNumbers(fieldsetID)});
				$(jq('f-' + fieldsetID + '.60004')).bind('click',function(){getPakketNumbers(fieldsetID)});
				//$(jq('f-' + fieldsetID + '.60004')).bind('change',function(){setPakketVars(fieldsetID)});
				addOnchangeEvent('V9998', fieldsetID, togglePolisnummer);
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;

			/* abonnement shizzle */
			case 'polis.F002.99997':
				addOnchangeEvent('abonnementPerPeriode', fieldsetID, onChangeAbonnementPerPeriode);
				addOnchangeEvent('89656', fieldsetID, onChangeAbonnementPerJaar); // abonnementPerJaar
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;
			
			/* Caravan shizzle */
			case 'polis.E202.13720':
				if(document.caravanDekkingBeperktFields == null)
					document.caravanDekkingBeperktFields = Array();

				document.caravanDekkingBeperktFields[fieldsetID] = Array(Array(), Array(), Array());
				var caravanFields = document.caravanDekkingBeperktFields[fieldsetID];

				for(i = 120; i < 123; i++)
				{
					for(j = 1; j < 3; j++)
					{
						el = document.getElementById('f-' +fieldsetID + '.V0' + i + '.' + j);

						//if(i == 120)
						//	el.disabled = 'disabled';

						caravanFields[i-120][j-1] = el;
//						el.fieldsetID = fieldsetID;
//						el.onchange = caravanDekkingBeperkt;
					}
				}

				caravanDekkingBeperkt(null, el);

				for(i = 1; i < 3; i++)
				{
					el = document.getElementById('f-' + fieldsetID + '.V0051.' + i);
					el.disabled = 'disabled';
				}

				for(i = 1; i < 3; i++)
				{
					el = document.getElementById('f-' + fieldsetID + '.V0050.' + i);

					if(el !== null)
					{
						el.onclick = updateCaravanDekking;
						el.fieldsetID = fieldsetID;

						if(el.checked)
							updateCaravanDekking(null, el);
					}
				}
				//addOnchangeEvent('89121', fieldsetID, caravanVerzekerdBedrag);
				//addOnchangeEvent('V0053', fieldsetID, caravanVerzekerdBedrag);
				//addOnchangeEvent('V0054', fieldsetID, caravanVerzekerdBedrag);
				//addOnchangeEvent('V0055', fieldsetID, caravanVerzekerdBedrag);
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;
			case 'polis.E202.02150': // Europeesche klassieker

				addOnchangeEvent('V9001', fieldsetID, oldTimerToggleExtraEigenRisico);
				addOnchangeEvent('10040', fieldsetID, oldTimerToggleExtraEigenRisico);
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;

			case 'polis.D100.10920': // DELA uitvaart - dekkings niveau
			case 'polis.D101.10920':
			case 'polis.D102.10920':

				readDELAslotvragen(fieldsetID);

				/* 
				addOnchangeEvent('89355.J', fieldsetID, delaSlotverklaring);
				addOnchangeEvent('89355.N', fieldsetID, delaSlotverklaring);
				addOnchangeEvent('89938.J', fieldsetID, delaSlotverklaring);
				addOnchangeEvent('89938.N', fieldsetID, delaSlotverklaring);
				*/
				
				$(document).ready(function() {
				  delaSlotverklaring($(jq('f-'+fieldsetID+'.89355.J')),fieldsetID);
				  
				  $('input[name="data[' + fieldsetID + '"]['+ 89355 +']').each
				  
				  
				  
				});

				$(jq('f-'+fieldsetID+'.89355.J')).bind("load click", function(){delaSlotverklaring(this,fieldsetID);});
				$(jq('f-'+fieldsetID+'.89355.N')).bind("load click", function(){delaSlotverklaring(this,fieldsetID);});
				
				var thisForm = document.getElementById('fieldset-' + fieldsetID);
				var theSelects = thisForm.getElementsByTagName('select');
				for (i=0;i < theSelects.length; i++)
				   {
				   		if(theSelects[i].id.indexOf("89682")>0){
							var dekkingFieldSetId = (theSelects[i].id.replace(/f-|.89682/g,""));
							addOnchangeEvent('89682', dekkingFieldSetId, onChangePremieBetalingDela);
						}
				   }
				   if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;

			case 'polis.M200.uitva': // Monuta uitvaart - dekkings niveau
			case 'polis.M201.uitva':
			case 'polis.M202.uitva':
				addOnchangeEvent('10008', fieldsetID, monutaCalcEndDate,'onblur',true);

				//addOnchangeEvent('V0659', fieldsetID, monutaProductSwitch);

				var thisForm = document.getElementById('fieldset-' + fieldsetID);
				var theCheckboxes = thisForm.getElementsByTagName('input');
				//var thisForm = $('totaalpakket');
				//var theCheckboxes = thisForm.getInputs('radio');
				for (i=0;i < theCheckboxes.length; i++)
				   {
				   		if(theCheckboxes[i].id.indexOf("V0640")>0)
				   		{
							var dekkingFieldSetId = (theCheckboxes[i].id.replace(/f-|.V0640/g,""));
							addOnchangeEvent('V0638', dekkingFieldSetId, monuta,'onclick',false,'x-');
							addOnchangeEvent('V0639', dekkingFieldSetId, monuta,'onclick',false,'x-');
							addOnchangeEvent('V0640', dekkingFieldSetId, monuta,'onclick',false,'x-');	// was true
							addOnchangeEvent('V0641', dekkingFieldSetId, monuta,'onclick',false,'x-');  // was true
							addOnchangeEvent('V0642', dekkingFieldSetId, monuta,'onclick',false,'x-');
							addOnchangeEvent('V0635', dekkingFieldSetId, monutaSetupAddPolisTo);
							addOnchangeEvent('V0635', dekkingFieldSetId, monutaCalcEndDate,'onchange',false);
							addOnchangeEvent('V0636', dekkingFieldSetId, monutaCalcEndDate,'onchange',false);
						}
				   }
				   if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;

			case 'polis.E200.13975': // Europeesche - aflopende annulering
			case 'polis.E200.13950': // Europeesche - aflopende reis
				addOnchangeEvent('aflopendeReisKopieerRelatieGegevens', fieldsetID, aflopendeReisKopieerRelatieGegevens,'onclick',false);

				addOnchangeEvent('V0621', fieldsetID, incassowijze_rc);
				addOnchangeEvent('V0059', fieldsetID, onChangeTrigger);
				
				/*
				addOnchangeEvent('106300', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false);
				addOnchangeEvent('106360', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false);
				addOnchangeEvent('106420', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false);
				addOnchangeEvent('106480', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false);
				addOnchangeEvent('106540', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false);
				addOnchangeEvent('106600', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false);
				*/

				addOnchangeEvent('V0622', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false,'x-');
				addOnchangeEvent('V0623', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false,'x-');
				addOnchangeEvent('V0624', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false,'x-');
				addOnchangeEvent('V0625', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false,'x-');
				addOnchangeEvent('V0626', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false,'x-');
				addOnchangeEvent('V0627', fieldsetID, aflopendeReisverwijderVerzekerde,'onclick',false,'x-');
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;

			case 'polis.T201.05150': /* woonhuis */
				/*alleen bij nieuwe woonhuis automatische verzekerd bedrag ophalen*/
				tp2010_waardemeter_huis = true; // globale var to keep old system working
				//addOnchangeEvent('10712', fieldsetID, bepaaldHerbouwWaardeMS,'onchange',false); //postcode trigger
				//addOnchangeEvent('10710', fieldsetID, bepaaldHerbouwWaardeMS,'onchange',false); //huisnummer trigger
				//addOnchangeEvent('V0007', fieldsetID, bepaaldHerbouwWaardeMS,'onchange',false); //huisnummer type woning
				

			case 'polis.T200.05150': /* woonhuis */		

				//addOnchangeEvent('10034', fieldsetID, firstowner);
				//addOnchangeEvent('89103', fieldsetID, nieuwbouw);
				addOnchangeEvent('10684', fieldsetID, verdiepingsvloer);

				if(addOnchangeEvent('89038', fieldsetID, wijzigWaardeBepaling))
				{
					var moved = moveIntoDOM('herbouwwaardemeter_'+fieldsetID);

					var herbouwwaardemeter = document.getElementById('herbouwwaardemeter_'+fieldsetID);

					$('#herbouwwaardemeter_'+fieldsetID+' :input, #f-' + fieldsetID + '.V0007').each(function (el) {
					$(jq(this.id)).attr('fieldsetID',fieldsetID);
					$(jq(this.id)).change(function() {berekenHerbouwwaarde(fieldsetID);});
					});

					if(moved)
					{
						moveOutOfDOM(herbouwwaardemeter);
					}
				}
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;
			/* Doorlopende reisverzekering */
			case 'polis.E202.13900':
			case 'polis.E202.13925':
				addOnchangeEvent('V0078.1', fieldsetID, switchViewDoorlopendeReis,'onclick'); //huisnummer type woning
				addOnchangeEvent('V0078.2', fieldsetID, switchViewDoorlopendeReis,'onclick'); //huisnummer type woning


				addOnchangeEvent('V0048.1', fieldsetID, switchViewDoorlopendeAnnulering,'onclick'); //huisnummer type woning
				addOnchangeEvent('V0048.2', fieldsetID, switchViewDoorlopendeAnnulering,'onclick'); //huisnummer type woning
				addOnchangeEvent('V0048.3', fieldsetID, switchViewDoorlopendeAnnulering,'onclick'); //huisnummer type woning

				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;
			case 'polis.T201.05400': /* inboedel */
				tp2010_waardemeter_inboedel = true; // globale var to keep old system working
			case 'polis.T200.05400': /* inboedel */
				el = document.getElementById('f-' + fieldsetID + '.V0033');
				if(el !== null)
				{
					var t = 0;
					addOnchangeEvent('V0033', fieldsetID, veranderBepalingVerzekerdBedrag);
					var iwm = document.getElementById('inboedelwaardemeter_'+fieldsetID);

					iwm.fieldsetID = fieldsetID;

					$('#inboedelwaardemeter_'+fieldsetID).find('input,select').each(function(i) {
						$(this).attr('fieldsetID','fieldsetID')
						var datumInboedelWaardeMeter = 'f-' + fieldsetID + '.85004';
						if($(this).attr('id') != datumInboedelWaardeMeter)
							$(this).change(function(){berekenInboedelwaardemeter(fieldsetID);});
					});

					// huurdersbelang
					addOnchangeEvent('V0036', fieldsetID, toelichting_extradekking);
					// eigenaarsbelang
					addOnchangeEvent('V0123', fieldsetID, toelichting_extradekking);
					// lijfsieraden
					addOnchangeEvent('89129', fieldsetID, toelichting_extradekking);
					// audio visueel
					addOnchangeEvent('89130', fieldsetID, toelichting_extradekking);
					// antiek kunst ed.
					addOnchangeEvent('V0035', fieldsetID, toelichting_extradekking);
					//hengelsportspullen
					addOnchangeEvent('V0138', fieldsetID, hengelSport);
				}
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;

			case 'polis.L200.02100':
				addOnchangeEvent('V9001', fieldsetID, londonNieuwWaarde);
				addOnchangeEvent('87288', fieldsetID, londonTopOI);
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;

			case 'polis.T203.02105':
				addOnchangeEvent('10260', fieldsetID, setCatalogusWaarde);
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;
			
			case 'polis.T201.06100': // avp
			case 'polis.T200.06100': // avp
				if(!readOnly) loadSwfUpload(fieldsetID,post_params);
			break;
			default:
				if(typeof(fieldsetSort)!='undefined')
				{
					if(!isNaN(fieldsetID))
					{
						//d('fs' + fieldsetID + ',' + fieldsetSort);
						if(readOnly == false) loadSwfUpload(fieldsetID,post_params);
					}
				}
				//if(!readOnly) loadSwfUpload(fieldsetID,post_params);
				// addOnchangeEvent('V0628', fieldsetID, fieldSetShownToUserSum);

			break;/* */
		}


		// Tweede gezinsauto
		el = document.getElementById('f-' + fieldsetID + '.11229');
		if(el !== null)
		{
				addOnchangeEvent('11229', fieldsetID, tweedeAuto);
		}

		el1 = document.getElementById('f-' + fieldsetID + '.V9001');
		el2 = document.getElementById('f-' + fieldsetID + '.89238');
		if(el1 !== null && el2 !== null)
		{
				addOnchangeEvent('V9001', fieldsetID, extraCascoDekking);
				addOnchangeEvent('89238', fieldsetID, extraCascoDekking);
		}
	}

	$("input[type=radio].toelichting").each(function (i) {
		$(this).bind("click", toggleToelichting);
		if((i % 2) == 0)
			toggleToelichting(null, this);
	});

	// set the focus to the last loaded tab...

	/* niet gebruiker.. fieldsets worden 2x ingeladan..
	if(fieldsetID)
	{
		//d('setting focus to: ' + fieldsetID);
		if(document.getElementById("fieldset-"+fieldsetID).tabPage)
			document.getElementById("fieldset-"+fieldsetID).tabPage.select();
	}	*/



	/*
	els = cssQuery("input[type=radio].toelichting");
	for(i = 0; i < els.length; i++)
	{
		$('#debugBox').append(i + ' toelichting...<br>');
		els[i].onclick = toggleToelichting;
		//addOnchangeEvent('89040', fieldsetID, toggleInvoerVerzekerden);

		if((i % 2) == 0)
			toggleToelichting(null, els[i]);
	}
/*
	els = cssQuery("fieldset.form-reply legend.pre");
	var link;
	for(i = 0; i < els.length; i++)
	{
		link = document.createElement('a');
		link.appendChild(document.createTextNode('wijzig'));
		link.onclick = function () { updateReply(this); return false; }
		link.href = '#';
		els[i].appendChild(link);
*/
		/* modify the class, so with repetitive calls to setupInteraction(), this doesn't get done again */
/*
		els[i].parentNode.className = 'post';
	}
*/

	//addErrorJumper stuff for newly loaded tabs...
	//if($('voortgang.error_label_list') && showJumpers)
		//addOnchangeEvent('error_label_list', '', addOneErrorJumper, 'onchange',true,'voortgang');
};

function onChangeAbonnementPerPeriode(el,ob)
{
	var x = getObj(el,ob);
	/* 
		abonnementPerPeriode
		multiplyWith
 		89656
	*/	
	
	var abonnementPerPeriode = $(jq('f-' + x.fieldsetID + '.abonnementPerPeriode')).val().replace(/,/,'.');
	$(jq('f-' + x.fieldsetID + '.abonnementPerPeriode')).val(abonnementPerPeriode);
	var multiplyWith = $(jq('f-' + x.fieldsetID + '.multiplyWith')).val();
	var abonnementPerJaar = $(jq('f-' + x.fieldsetID + '.89656')).val();
	var newValue = Math.round((abonnementPerPeriode * multiplyWith) * 100)/100;
	
	if(abonnementPerPeriode != newValue)
	{
		$(jq('f-' + x.fieldsetID + '.89656')).val(newValue);
	}
	
	return false;
}

function onChangeAbonnementPerJaar(el,ob)
{
	var x = getObj(el,ob);
	/* 
		abonnementPerPeriode
		multiplyWith
 		89656
	*/	
	
	var abonnementPerPeriode = $(jq('f-' + x.fieldsetID + '.abonnementPerPeriode')).val();
	var multiplyWith = $(jq('f-' + x.fieldsetID + '.multiplyWith')).val();
	var abonnementPerJaar = $(jq('f-' + x.fieldsetID + '.89656')).val().replace(/,/,'.');
	$(jq('f-' + x.fieldsetID + '.89656')).val(abonnementPerJaar);
	var newValue = Math.round((abonnementPerJaar / multiplyWith) * 100)/100;
	
	if(abonnementPerJaar != newValue)
	{
		$(jq('f-' + x.fieldsetID + '.abonnementPerPeriode')).val(newValue);
	}
	
	return false;
}

function toggleInvoerVerzekerden(el, ob)
{
	var x = getObj(el, ob);
	var tweedeVerzekerde = document.getElementById('bijverzekerde');

	if(x.value == "00003" || x.value == "00004")
	{
		tweedeVerzekerde.style.display = '';
	}
	else
	{
		tweedeVerzekerde.style.display = 'none';
	}
}

function toggleElementById(elementId)
{
	var element = document.getElementById(elementId);

	if(element.style.display == 'none'){
		element.style.display = '';
	}else{
		element.style.display = 'none';
	}
	return false;
}



function toggleToelichting(el,ob)
{
	var x = getObj(el, ob);
	var show = false;
	switch($(jq(x.id)).val())
	{
		case '1':	alt = '2'; break;
		case '2':	alt = '1'; break;
		case 'J':	alt = 'N'; break;
		case 'N':	alt = 'J'; break;
	}
	var otherRadioValueChecked = false;
	// get the value of the other option in the same td!!
	$(jq(x.id)).parent().parent().find('input[type=radio].toelichting[value='+ alt +']').each(function(i){
		orvc = $(this);
	});

	// we go into the --body-- tr aka looping the tr's
	$(jq(x.id)).parent().parent().parent().nextAll().each(function(i){
		has_next_question = $(this).find('input[type=radio].toelichting');
		// the catches the next question... quit here otherwise your messing with toelichting of that question...
		if(has_next_question.length > 0)
			return false; // quit the each

		var show = false; // hiding the rows by default

		trc = $(jq(x.id)).attr('checked');	// thisRadioChecked trc
		orc = orvc.attr('checked');			// otherRadioChecked orc

		// both not checked... skip...
		if(trc == false && orc == false)
		{
			$(this).hide();
			return 'skipToNextItem';
		}

		trv = $(jq(x.id)).val();// thisRadioValue trv
		orv = orvc.val();		// otherRadioValue orv

		if((trc && (trv == '1' || trv == 'J'))||(orc && (orv == '1' || orv == 'J')))
			if($(this).find('.toelichting_ja').length > 0) var show = true;

		if((trc && (trv == '2' || trv == 'N'))||(orc && (orv == '2' || orv == 'N')))
			if($(this).find('.toelichting_nee').length > 0) var show = true;

		if(show)$(this).show();else $(this).hide();
	});
}

function firstowner(el,ob)
{
	var x = getObj(el,ob);
	var fieldsetID = x.fieldsetID;

	if(x.value != '')
	{
		//set jaar
		var right_now = new Date();
		var right_year = right_now.getYear();

		//kijk of jaar goede waarde heeft
		if (right_year < 1900)
			right_year = right_year + 1900;

		right_year = right_year - 5;

		if(x.value < right_year )
		{
	 		document.getElementById('f-' + fieldsetID + '.89103').selectedIndex = 2;

			var z = document.getElementById(fieldsetID + '.V0013.1');
			if (z != null)
				z.checked = true;
		}
	}
}

function nieuwbouw(el, ob)
{
	var x = getObj(el,ob), y;

	if(x.value == "00001")
		y = document.getElementById(x.fieldsetID + '.V0012.1');
	else
		y = document.getElementById(x.fieldsetID + '.V0012.2');

	if (y != null)
		y.checked = true;
}

function verdiepingsvloer(el, ob)
{
	var x = getObj(el,ob);
	document.getElementById('f-' + x.fieldsetID + '.V0227').style.display = (x.value != 'B' && x.value != 'H' ? '':'none');
	document.getElementById('f-' + x.fieldsetID + '.V0227').previousSibling.style.display = (x.value != 'B' && x.value != 'H' ? '':'none');
}

function londonNieuwWaarde(el, ob)
{
	var x = getObj(el,ob);
	var y = document.getElementById('f-' + x.fieldsetID + '.V9001');
	var z = y.options[y.selectedIndex].value;

	document.getElementById('f-' + x.fieldsetID + '.89124.N').parentNode.style.display = (z == '2'  ? '':'none');
	document.getElementById('f-' + x.fieldsetID + '.89124.J').parentNode.style.display = (z == '2'  ? '':'none');
	document.getElementById('f-' + x.fieldsetID + '.89124').style.display = (z == '2'  ? '':'none');
}
function londonTopOI(el, ob)
{
	var x = getObj(el,ob);
	var y = document.getElementById('f-' + x.fieldsetID + '.87288');
	var z = y.options[y.selectedIndex].value;

	document.getElementById('f-' + x.fieldsetID + '.80541.N').parentNode.style.display = (z != 'G'  ? '':'none');
	document.getElementById('f-' + x.fieldsetID + '.80541.J').parentNode.style.display = (z != 'G'  ? '':'none');
	document.getElementById('f-' + x.fieldsetID + '.80541').style.display = (z != 'G'  ? '':'none');
}

function tweedeAuto(el, ob)
{
	var tweedeauto = getObj(el,ob);
	var fieldsetID = tweedeauto.fieldsetID;

	var autoinfo = $('.tweedeauto_'+ fieldsetID);
	
	if(tweedeauto.value == 'J')
	{
		autoinfo.show();
	}
	else
	{
		autoinfo.hide();
	}
}

function extraCascoDekking(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;	
	
	var dekkingsCombi = document.getElementById('f-' + fieldsetID + '.V9001');
	var aankoopBedragVerzekerd = document.getElementById('f-' + fieldsetID + '.89238');
	var dagWaarde = $(jq('f-' + fieldsetID + '.10041'));
	

	var extraCascoDekkingen = $('.'+ fieldsetID +'-extra_casco');
	var extraBeperktCascoDekkingen = $('.'+ fieldsetID +'-extra_beperktcasco');
	var fieldsetKenDLegend = $('#kenteken_en_dekkingen_legend_'+ fieldsetID);
	var fieldsetKenD = $('#kenteken_en_dekkingen_'+ fieldsetID);
	var aankoopbedrag = $('.'+ fieldsetID +'-aankoop_bedrag');

	switch(dekkingsCombi.value)
	{
		case "1": 
			extraCascoDekkingen.hide();
			extraBeperktCascoDekkingen.hide();
			aankoopbedrag.hide();
			dagWaarde.removeAttr("disabled"); 
		break;
		case "2": 
			extraCascoDekkingen.show();
			extraBeperktCascoDekkingen.show();
			if(aankoopBedragVerzekerd.value == "J")
			{
			    aankoopbedrag.show();
			    dagWaarde.attr("disabled", true);
			}
			else 
			{
			    aankoopbedrag.hide();
			    dagWaarde.removeAttr("disabled"); 
			}
		break;
		case "3": 
			extraCascoDekkingen.hide();
			extraBeperktCascoDekkingen.show();

			if(aankoopBedragVerzekerd.value == "J")
			{
			    aankoopbedrag.show();
			    dagWaarde.attr("disabled", true);
			}
			else 
			{
			    aankoopbedrag.hide();
			    dagWaarde.removeAttr("disabled"); 
			}
		break;
	}
	
}

function toelichting_extradekking(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;
	var labelId = x.id.replace(/^.+\./,'');
	var targetId = '';
	
	switch(labelId)
	{
		case 'V0036':
			targetId = 'V0128';
		break;
		case 'V0123':
			targetId = 'V0127';
		break;
		case '89129':
			targetId = 'V0129';
		break;
		case '89130':
			targetId = 'V0130';
		break;
		case 'V0035':
			targetId = 'V0131';
		break;
	}

	if(x.value > 0)
	{
		$('[for=f-'+fieldsetID+'.'+targetId+']').show();
		$(jq('f-'+fieldsetID+'.'+targetId)).show();
	}
	else
	{
		$('[for=f-'+fieldsetID+'.'+targetId+']').hide();
		$(jq('f-'+fieldsetID+'.'+targetId)).hide();
	}
}

function hengelSport(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;

	var hengeldekking = document.getElementById('f-' + fieldsetID + '.V0138');


	if(hengeldekking.value == "00000")
	{
		var datumfields = document.getElementById('fs-hengelsport-' + fieldsetID);
		datumfields.style.display = "none";

		var ing_polis = document.getElementById('f-' + fieldsetID + '.10008');
		var ing_inboe = document.getElementById('f-' + fieldsetID + '.V0255');
		var ing_heng = document.getElementById('f-' + fieldsetID + '.V0261');

		ing_polis.disabled = "";
	}
	else
	{
		var ing_polis = document.getElementById('f-' + fieldsetID + '.10008');
		var ing_inboe = document.getElementById('f-' + fieldsetID + '.V0255');
		var ing_heng = document.getElementById('f-' + fieldsetID + '.V0261');

		ing_polis.disabled = "disabled";
		if(ing_inboe.value == "")
			ing_inboe.value = ing_polis.value

		if(ing_heng.value == "")
			ing_heng.value = ing_polis.value


		var datumfields = document.getElementById('fs-hengelsport-' + fieldsetID);
		datumfields.style.display = "";
	}

	
}

function switchViewDoorlopendeReis(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;
	var reisJa = $("[id^=f-"+fieldsetID+".V0078]:checked").val();
	
	if(reisJa == 1)
	{
		$(".row_reis_"+ fieldsetID).show();
	}
	else
	{
		$(".row_reis_"+ fieldsetID).hide();
	}
}

function switchViewDoorlopendeAnnulering(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;
	var garantieAnnuleringJa = $("[id^=f-"+fieldsetID+".V0048]:checked").val();
	var toBeSwitched = $("#cel_annulering_"+ fieldsetID);

	if(garantieAnnuleringJa != 1)
	{
		toBeSwitched.show();
	}
	else
	{
		toBeSwitched.hide();
	}
}

function berekenHerbouwwaarde(fieldsetID)
{
	//var x = getObj(el, ob);
	//var fieldsetID = x.fieldsetID;

	if(tp2010_waardemeter_huis == true)
	{
		var categorieen_woningen = Array(490, 530, 690);
		var som = 0;
		var perc_plus = 0;
		var perc_min = 0;
		var typehuis	= document.getElementById('f-' + fieldsetID + '.V0007');
		var inhoud		= document.getElementById('f-' + fieldsetID + '.V0008').value;

		if(inhoud < 250)
			inhoud = Math.round(inhoud * 1.1);


		var prijs = parseInt(categorieen_woningen[typehuis.value-1] * inhoud);

		var fundering	= document.getElementById('f-' + fieldsetID + '.V0132').value;
		var dak			= document.getElementById('f-' + fieldsetID + '.V0133').value;
		var gevel		= document.getElementById('f-' + fieldsetID + '.V0134').value;
		var keuken		= document.getElementById('f-' + fieldsetID + '.V0135').value;
		var badkamer	= document.getElementById('f-' + fieldsetID + '.V0136').value;
		var woonkamer	= document.getElementById('f-' + fieldsetID + '.V0137').value;

		switch(fundering){
			case 'a':break;
			case 'b':perc_min = perc_min + 10;break;
			case 'c':perc_min = perc_min + 5;break;
			case 'd':perc_min = perc_min + 2;break;
		}
		switch(dak){
			case 'a':break;
			case 'b':perc_plus = perc_plus + 4;break;
			case 'c':perc_plus = perc_plus + 9;break;
		}
		switch(gevel){
			case 'a':break;
			case 'b':perc_plus = perc_plus + 2;break;
			case 'c':perc_plus = perc_plus + 8;break;
			case 'd':perc_plus = perc_plus + 9;break;
		}
		switch(keuken){
			case 'a':break;
			case 'b':perc_plus = perc_plus + 8;break;
			case 'c':
				if(typehuis.value == "00003")
					perc_plus = perc_plus + 8;
				else
					perc_plus = perc_plus + 15;
			break;
		}
		switch(badkamer){
			case 'a':break;
			case 'b':perc_plus = perc_plus + 4;break;
			case 'c':
				if(typehuis.value == "00003")
					perc_plus = perc_plus + 4;
				else
					perc_plus = perc_plus + 11;
			break;
		}
		switch(woonkamer){
			case 'a':break;
			case 'b':perc_plus = perc_plus + 5;break;
			case 'c':
				if(typehuis.value == "00003")
					perc_plus = perc_plus + 5;
				else
					perc_plus = perc_plus + 15;
			break;
		}

		var multiplier = (100 - perc_min + perc_plus) / 100;
		
		som = parseInt(prijs * multiplier);
	}
	else
	{
		var fields = Array("V0008", "V0009", "V0010");
		var som = 0;
		var typewoning = document.getElementById('f-' + fieldsetID + '.V0007');
		var categorieen_woningen = Array(385, 400, 540);
		var prijs = parseInt(categorieen_woningen[typewoning.value-1]);
		var t;

		for(var i = 0; i < fields.length; i++)
		{
			t = document.getElementById('f-' + fieldsetID + '.' + fields[i]);

			if(t == null)
				continue;

			switch(fields[i])
			{
				case "V0008":
					som = parseInt(som) + parseInt(t.value * prijs);
					break;
				default:
					som = parseInt(som) + parseInt(t.value * 100);
					break;
			}
		}

		/* herbouwwaarde */
	}
	document.getElementById('f-' + fieldsetID + '.10039').value = parseInt(som);
}

function wijzigWaardeBepaling(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;
	var herbouwwaardemeter = document.getElementById('herbouwwaardemeter_'+fieldsetID);
	var herbouwwaarde = document.getElementById('f-' + fieldsetID + '.10039');
	var linkherbouw = $(jq(fieldsetID +'.linkherbouwwaarde'));
	var taxatieInfo = $('#info_taxatie_'+ fieldsetID);
	var waardegar_auto = $('#info_auto_waardegar_opst_'+ fieldsetID);
	taxatieInfo.hide();
	waardegar_auto.hide();

	if(tp2010_waardemeter_huis == true)
		var herbouwwaarde_h = document.getElementById('fro-' + fieldsetID + '.10039');  //fro-{field_fieldset_id}.{field_label}

	moveOutOfDOM(herbouwwaardemeter);
	herbouwwaarde.disabled = '';
	herbouwwaarde.style.display = "";
	
	linkherbouw.hide();
	
	if(x.value == 2)
	{
		taxatieInfo.show();
	}

	if(tp2010_waardemeter_huis == true)
		herbouwwaarde_h.style.display = "none";
	
	if(x.value == '00001')
	{
		herbouwwaarde.disabled = 'disabled';
		moveIntoDOM('herbouwwaardemeter_'+fieldsetID);
		berekenHerbouwwaarde(fieldsetID);
	}

	if(x.value == '00006')
	{
		alert('Het is voorlopig niet mogelijk om de automatische waarde bepaling te kiezen.');
		//linkherbouw.show(); 
		herbouwwaarde.style.display = 'none';
		//waardegar_auto.show();
		//requestMarketScan(fieldsetID, "woonhuis");
		if(tp2010_waardemeter_huis == true)
			herbouwwaarde_h.style.display = "";
	}
}

function bepaaldHerbouwWaardeMS(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;
	var waardeBepaling = document.getElementById('f-' + fieldsetID + '.89038');

	if(waardeBepaling.value == "00006")
	{
		requestMarketScan(fieldsetID, "woonhuis");
	}
	
}

function bepaaldInboedelWaardeMS(el, ob)
{
	var x = getObj(el, ob);
	var fieldsetID = x.fieldsetID;
	var waardeBepaling = document.getElementById('f-' + fieldsetID + '.V0033');

	if(waardeBepaling.value == "4")
	{
		requestMarketScan(fieldsetID, "inboedel");
	}
}

function bepaaldHerbouwWaardeMSdirect(fieldsetID)
{
	var waardeBepaling = document.getElementById('f-' + fieldsetID + '.89038');

	$(jq('img.'+fieldsetID+'.msloader')).show();
	$(jq('img.'+fieldsetID+'.msloader')).attr('src', site_template_url +'images/ajax-loader-w.gif');
	
	if(waardeBepaling.value == "00006")
	{
		requestMarketScan(fieldsetID, "woonhuis");
	}

}

function bepaaldInboedelWaardeMSdirect(fieldsetID)
{
	var waardeBepaling = document.getElementById('f-' + fieldsetID + '.V0033');

	$(jq('img.'+fieldsetID+'.msloader')).show();
	$(jq('img.'+fieldsetID+'.msloader')).attr('src', site_template_url +'images/ajax-loader-w.gif');

	if(waardeBepaling.value == "4")
	{
		requestMarketScan(fieldsetID, "inboedel");
	}
}


function requestMarketScan(fieldset_id, request_type)
{

	if(request_type == "woonhuis")
	{
		var postcode = $(jq('f-' + fieldset_id + '.10712')).val();
		var huisnummer = $(jq('f-' + fieldset_id + '.10710')).val();
		var toevoeging = $(jq('f-' + fieldset_id + '.10711')).val();
		var typewoning = $(jq('f-' + fieldset_id + '.V0007')).val();

		switch(typewoning)
		{
			case"00001":var typewoning = "U";break;
			case"00002":var typewoning = "T";break;
			case"00003":var typewoning = "Z";break;
		}

		var request_string = "woonhuis/"+ postcode +"/"+ huisnummer +"/"+ typewoning +"/"+ toevoeging +"/";
	}
	if(request_type == "inboedel")
	{

		var postcode = $(jq('f-' + fieldset_id + '.10712')).val();
		var huisnummer = $(jq('f-' + fieldset_id + '.10710')).val();
		var toevoeging = $(jq('f-' + fieldset_id + '.10711')).val();
		var gezins = $(jq('f-' + fieldset_id + '.89110')).val();
		var gebrdat = $(jq('f-' + fieldset_id + '.V0089')).val().replace(/\//g,"-");
		//var koopwoning = $('input[id=f-' + fieldset_id + '.89113.00001]:checked').size();
		var koopwoning = $("input[name='data\[labels\]\[" + fieldset_id + ".89113\]']:checked").val();	
		var typewoning = $(jq('f-' + fieldset_id + '.V0007')).val();
		var aantalkamers = 4; /* document.getElementById('f-' + fieldset_id + '.11301').value; */

		switch(gezins)
		{
			case "00001":var gezins = "A";break;
			case "00002":var gezins = "K";break;
			case "00003":var gezins = "H";break;
			case "00004":var gezins = "I";break;
		}
		switch(koopwoning)
		{
			case "00001":var koopwoning = "1";break;
			case "00002":var koopwoning = "0";break;
		}
		switch(typewoning)
		{
			case"00001":var typewoning = "U";break;
			case"00002":var typewoning = "T";break;
			case"00003":var typewoning = "Z";break;
			case"00004":var typewoning = "A";break;
		}
		
		var request_string = "inboedel/"+ postcode +"/"+ huisnummer +"/"+ typewoning +"/"+ gezins +"/"+ gebrdat +"/"+ koopwoning +"/"+ aantalkamers +"/"+ toevoeging +"/";
	}

	url = site_script_url + '/marketscan/'+$('#form_id').val()+'/'+request_string;

	$.ajax({
         url: url,
         success: function(response) {
         	var json = response; //eval('(' + response + ')'); //response.responseText.evalJSON();			
         	
			$(jq('fro-' + fieldset_id + '.10039-sub')).html(json['display']);
         	$(jq('f-' + fieldset_id + '.10039')).val(json['verzekerdbedrag']);
			
			if(json['verzekerdbedrag'] > 0)
			{
				$(jq('img.'+fieldset_id+'.msloader')).attr('src',site_template_url+ 'images/accept.gif').show();
				setTimeout("$(jq('img." +fieldset_id + ".msloader')).fadeOut();",1500);
			}
			else
			{
				$(jq('img.'+fieldset_id+'.msloader')).attr('src',site_template_url +'images/exclamation.gif');
				alert(json['error']);
			}
         }
     });

     return false;
}

function veranderBepalingVerzekerdBedrag(ev, ob)
{
	var el = getObj(ev, ob);
	var fieldsetID = el.fieldsetID;

	var iwm = document.getElementById('inboedelwaardemeter_'+fieldsetID);
	var inv = document.getElementById('inventarisatie_'+fieldsetID);
	var svn = document.getElementById('schattingverzekeringnemer_'+fieldsetID);
	var aut = document.getElementById('autobepaling_'+fieldsetID);
	var waardegarantie_auto = $('#info_auto_waardegar_inb_'+ fieldsetID);
	waardegarantie_auto.hide();

	moveOutOfDOM(inv);
	moveOutOfDOM(iwm);
	moveOutOfDOM(svn);
	if(tp2010_waardemeter_inboedel == true)
		moveOutOfDOM(aut);

	if(el.value == 1)
	{
		inv = moveIntoDOM('inventarisatie_'+fieldsetID);
	}
	else if(el.value == 2)
	{
		iwm = moveIntoDOM('inboedelwaardemeter_'+fieldsetID);
		berekenInboedelwaardemeter(fieldsetID);

				$('#inboedelwaardemeter_'+fieldsetID).find('input,select').each(function(i) {
					$(this).attr('fieldsetID','fieldsetID')
					var datumInboedelWaardeMeter = 'f-' + fieldsetID + '.85004';
					if($(this).attr('id') != datumInboedelWaardeMeter)
						$(this).change(function(){berekenInboedelwaardemeter(fieldsetID);});
				});
	}
	else if(el.value == 3)
	{
		svn = moveIntoDOM('schattingverzekeringnemer_'+fieldsetID);
	}
	else if(el.value == 4)
	{
		alert('Het is voorlopig niet mogelijk om de automatische waarde bepaling te kiezen.');
		//waardegarantie_auto.hide();
		//aut = moveIntoDOM('autobepaling_'+fieldsetID);
		//var waarde = document.getElementById('f-' + fieldsetID + '.10039');
		//var waarde_h = document.getElementById('fro-' + fieldsetID + '.10039');
		//waarde.style.display = 'none';
		//requestMarketScan(fieldsetID, "inboedel");
				
		//waarde_h.style.display = "";

		//date_input(fieldsetID + '.V0089');
/*
		addOnchangeEvent('10712', fieldsetID, bepaaldInboedelWaardeMS,'onchange',false); //postcode trigger
		addOnchangeEvent('89113', fieldsetID, bepaaldInboedelWaardeMS,'onchange',false); //koop/huur woning
		addOnchangeEvent('10710', fieldsetID, bepaaldInboedelWaardeMS,'onchange',false); //huisnummer trigger
		addOnchangeEvent('89110', fieldsetID, bepaaldInboedelWaardeMS,'onchange',false); //gezinssamenstelling trigger
		addOnchangeEvent('V0089', fieldsetID, bepaaldInboedelWaardeMS,'onchange',false); //gezinssamenstelling trigger
		addOnchangeEvent('V0007', fieldsetID, bepaaldInboedelWaardeMS,'onchange',false); //Typewoningaantalkamers
		addOnchangeEvent('11301', fieldsetID, bepaaldInboedelWaardeMS,'onchange',false); //aantal kamers
*/
	}


	// huurdersbelang
	addOnchangeEvent('V0036', fieldsetID, toelichting_extradekking);
	// eigenaarsbelang
	addOnchangeEvent('V0123', fieldsetID, toelichting_extradekking);
	// lijfsieraden
	addOnchangeEvent('89129', fieldsetID, toelichting_extradekking);
	// audio visueel
	addOnchangeEvent('89130', fieldsetID, toelichting_extradekking);
	// antiek kunst ed.
	addOnchangeEvent('V0035', fieldsetID, toelichting_extradekking);

};


function updateDangerClass(ev, ob)
{
	var el = getObj(ev, ob);

	var klasse = document.getElementById('f-' + el.fieldsetID +  '.10090');

	if(10000 <= this.value && this.value <= 19999)
	{
		klasse.value = '00001';
	}
	else if(20000 <= this.value && this.value <= 29999)
	{
		klasse.value = '00002';
	}
	else if(30000 <= this.value && this.value <= 39999)
	{
		klasse.value = '00003';
	}
	else if(40000 <= this.value && this.value <= 49999)
	{
		klasse.value = '00004';
	}
	else if(50000 <= this.value && this.value <= 59999)
	{
		klasse.value = '00013';
	}
};


function berekenInboedelwaardemeter(fieldsetID)
{
	//var el = getObj(ev, ob);
	//var fieldsetID = el.fieldsetID;

	if(tp2010_waardemeter_inboedel == true)
	{
		var leeftijd			= document.getElementById('f-' + fieldsetID +  '.V0141').value;
		var huishouden			= $(jq('f-' + fieldsetID +  '.V0142')).val();
		var inkomen				= document.getElementById('f-' + fieldsetID +  '.V0143').value;
		var oppervlakte			= document.getElementById('f-' + fieldsetID +  '.V0144').value;
		var schattingIWM		= document.getElementById('f-' + fieldsetID + '.89120');

		var point = new Array();
		point['leeftijd'] = new Array();
		point['leeftijd'][""] = 0;
		point['leeftijd']["00001"] = 22;
		point['leeftijd']["00002"] = 29;
		point['leeftijd']["00003"] = 39;
		point['leeftijd']["00004"] = 37;
		point['huishouden'] = new Array();
		point['huishouden'][""] = 0;
		point['huishouden']["00001"] = 0;
		point['huishouden']["00002"] = 10;
		point['inkomen'] = new Array();
		point['inkomen'][""] = 0;
		point['inkomen']["00001"] = 0;
		point['inkomen']["00002"] = 10;
		point['inkomen']["00003"] = 17;
		point['inkomen']["00004"] = 28;
		point['oppervlakte'] = new Array();
		point['oppervlakte'][""] = 0;
		point['oppervlakte']["00001"] = 0;
		point['oppervlakte']["00002"] = 6;
		point['oppervlakte']["00003"] = 18;
		point['oppervlakte']["00004"] = 23;



		var total_points = point['leeftijd'][leeftijd] + point['huishouden'][huishouden] + point['inkomen'][inkomen] + point['oppervlakte'][oppervlakte];
		var verzekerd_bedrag = total_points * 1070;

		schattingIWM.value = parseInt(verzekerd_bedrag);

	}
	else
	{
		var fields = Array(
			"89114", //	Leeftijd kostwinner
			"89110", //	Gezinssamenstelling
			"89111", //	Netto maandinkomen
			"89112", //	WOZ-waarde woning
	//		"89357", //	Geschat huurdersbelang /*werk neit goed meer door aanpassingen ivm. hurrdersbelang*/
			"89113"  //	Huur of koopwoning
		);

		var points = Array(
			Array(
				"00001", 3,
				"00002", 5,
				"00003", 11,
				"00004", 16,
				"00005", 23,
				"00006", 20,
				"00007", 18
			),
			Array(
				"00001", 3,
				"00002", 6,
				"00003", 16,
				"00004", 18
			),
			Array(
				"00001", 0,
				"00002", 2,
				"00003", 4,
				"00004", 7,
				"00005", 11,
				"00006", 14,
				"00007", 16
			),
			Array(
				"00001", 3,
				"00002", 6,
				"00003", 9,
				"00004", 14,
				"00005", 22,
				"00006", 30,
				"00007", 40
			),
	//		Array(
	//			"00001", 0,
	//			"00002", 2,
	//			"00003", 5,
	//			"00004", 11,
	//			"00005", 14
	//		),
			Array(
				"00001", 12,
				"00002", 0
			)
		);

		var field;
		var total_points = 0;

		var verzekerdbedragibw = document.getElementById('f-' + fieldsetID + '.89120');

		verzekerdbedragibw.value = 0;
		verzekerdbedragibw.readonly = 'readonly';

		var schattinginboedel = document.getElementById('f-' + fieldsetID + '.10039');

		schattinginboedel.value = 0;
		schattinginboedel.readonly = 'readonly';

		var j;
		for(var i = 0; i < fields.length; i++)
		{
			field = document.getElementById('f-' + fieldsetID + '.' + fields[i]);

			if(points[i])
			{
				for(j = 0; j < points[i].length; j = j + 2)
				{
					if(points[i][j] == field.value)
					{
						total_points += points[i][j+1];
					}
				}
			}
			else if(field.value.match(/^\d+$/))
			{
				schattinginboedel.value = parseInt(schattinginboedel.value) + parseInt(field.value);
			}
			else if(field.value.length > 0)
			{
				alert(field.value + ' is geen geldige waarde');
				field.value = '';
			}
		}

		/*huurdersbelang nieuwe manier*/
		field = document.getElementById('f-' + fieldsetID + '.V0036');

		if(0 == field.value)					{total_points += 0;}
		else if(1250 >= field.value)	{total_points += 2;}
		else if(2500 >= field.value)	{total_points += 5;}
		else if(3750 >= field.value)	{total_points += 11;}
		else if(3750 < field.value)		{total_points += 14;}


		/* huurderbelangs wegdoezelen */
		var togglehuurdersbelang = document.getElementById('f-' + fieldsetID + '.89113');
		var huurdersbelang = document.getElementById('f-' + fieldsetID + '.V0036');
		var eigenaarsbelang = document.getElementById('f-' + fieldsetID + '.V0123');

		if(togglehuurdersbelang.value == '00001' )
		{
			huurdersbelang.value = '0';
			huurdersbelang.parentNode.style.display = 'none';
			eigenaarsbelang.parentNode.style.display = '';
		}
		else
		{
			eigenaarsbelang.value = '0';
			eigenaarsbelang.parentNode.style.display = 'none';
			huurdersbelang.parentNode.style.display = '';
		}
		verzekerdbedragibw.value = parseInt(total_points * 1000);
		schattinginboedel.value  = parseInt(schattinginboedel.value) + parseInt(total_points * 1000);
	}
};

function moveOutOfDOM(element)
{
	if(!document.temporaryOutOfDom)
		document.temporaryOutOfDom = Array();

	if(document.temporaryOutOfDom[element.id])
		return;

	if(element !== null)
	{
		var tmp = document.createElement('DIV');
		tmp.id = element.id;

		document.temporaryOutOfDom[element.id] = element;
		element.parentNode.replaceChild(tmp, element);
	}
};

function moveIntoDOM(id)
{
	var element;

	if(element = document.temporaryOutOfDom[id])
	{
		var tmp = document.getElementById(id);
		tmp.parentNode.replaceChild(element, tmp);

		document.temporaryOutOfDom[id] = null;
		return element;
	}
};


function addOnchangeEvent(label, fieldset, callback, eventType, runCallBack, prefix)
{
	if(prefix==undefined)
	{
		var use_prefix = 'f-';
	}
	else
	{
		var use_prefix = prefix;
	}

	var doCallBack = true;
	if(runCallBack==false)
	{
		var doCallBack = false;
	}

	var eventToUse = 'onchange';
	if(eventType)
	{
		var eventToUse = eventType;
	}

	var element = document.getElementById(use_prefix + fieldset + '.' + label);
	//if(eventToUse == 'onblur') alert('adding onblur...' + element.id);

	if(element !== null)
	{
		element.fieldsetID = fieldset;

		eval("element." + eventToUse + "= callback");
		if(doCallBack) callback(null, element);
		return true;
	}

	return false;
}


function view_inv_field(box)
{
	x = document.getElementById(box.name +"-1");
	y = document.getElementById(box.name +"-2");

	if(box.value == 1)
	{
		if(x.style.display == '')
		{
			x.style.display = 'none';
		}
		else
		{
			x.style.display = '';
			y.style.display = 'none';
		}
	}
	else if(box.value == 2)
	{
		if(y.style.display == '')
		{
			y.style.display = 'none';
		}
		else
			{
			x.style.display = 'none';
			y.style.display = '';
		}
	}
}

function setLinkSrc( sStyle )
{
	document.getElementById( "luna-tab-style-sheet" ).disabled = sStyle != "luna";
	document.getElementById( "webfx-tab-style-sheet" ).disabled = sStyle != "webfx";
	document.getElementById( "winclassic-tab-style-sheet" ).disabled = sStyle != "winclassic";

	document.documentElement.style.background =	document.body.style.background = sStyle == "webfx" ? "white" : "ThreeDFace";
	//document.documentElement.style.background = '../images/bg_raster.gif';
}

/* SP 20090514: cuased an error in conjunction with swfupload
function IE_resize()
{
	document.body.style.display = 'none';
	document.body.style.display = '';
}
*/

function updateStatusAndSubmit(status,extra,useThisText,output)
{
	var defaultText = 'Bezig met veranderen status...'
	var extranotice = '';
	if(extra) extranotice = extra;
	if(useThisText) defaultText = useThisText;

	if(output)
	{
		var dynamicInput = document.createElement('input');
	  	dynamicInput.name = 'data[showOutput]';
	  	dynamicInput.type = 'hidden';
	  	dynamicInput.value = '1';
	  	//$('totaalpakket').appendChild(dynamicInput);
	  	$('#totaalpakket').append(dynamicInput);
	}

	var dynamicInput = document.createElement('input');
  	dynamicInput.name = 'data[status_change]';
  	dynamicInput.type = 'hidden';
  	dynamicInput.value = '1';
  	//$('totaalpakket').appendChild(dynamicInput);
  	$('#totaalpakket').append(dynamicInput);

	var dynamicInput = document.createElement('input');
  	dynamicInput.name = 'data[jump_to]';
  	dynamicInput.type = 'hidden';
  	dynamicInput.value = 'progress';
  	//$('totaalpakket').appendChild(dynamicInput);
  	$('#totaalpakket').append(dynamicInput);

	loadingAlert('show', defaultText + extranotice,'header');
	$('#statusFormulier').val(status);
	/* test_fieldset change_status */
	//if(status == 'VerstuurdNaarAnva')
		setActionTo(document.totaalpakket, 'change_status', true);
	//else
		//setActionTo(document.totaalpakket, 'change_status', true);


	/*loadingAlert('show','Bezig met verandering status...');
	$('statusFormulier').value = status;
	setActionTo(f, 'change_status', true);*/
}

var submitcount = 0;
function submitForm()
{
	//y('ignoreOnBeforeUnload: ' + ignoreOnBeforeUnload);;

	//if(typeof(confirmExit)!='undefined')
		//window.removeEventListener('onbeforeunload',confirmExit,false);
	//return;
	//checkModified();

	$('#send_message_form').remove();
	
	ignoreOnBeforeUnload = true;
	if (submitcount == 0)
	{
		submitcount++;
		result = true;
	}
	else
	{
		ldt("Even geduld aub. VEA is het formulier aan het verwerken.");
		result = false;
	}
	document.totaalpakket.submit();
}

function setActionTo(f, x, submit)
{
	$('#send_message_form').remove();
	ignoreOnBeforeUnload = true;
	f.action.value = x;
	/*if(typeof submit != 'undefined')
	{
		loadingAlert('show','Bezig met bevestigen...');
		f.submit();
	}*/
	document.totaalpakket.submit();
}


function ld(display,text)
{
	loadingAlert(display,text);
}

function isScrolledIntoView(elem)
{
	if(!($(elem).length))
		return;	
	
    var docViewTop = $(window).scrollTop();
    var docViewBottom = docViewTop + $(window).height();
    
    var elemTop = $(elem).offset().top;
    var elemBottom = elemTop + $(elem).height();

    return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom));
}

// position loading alert
function pla(position,useThisWidth)
{
	if(typeof(useThisWidth)=='undefined')
	{
		useThisWidth = $('#loadingDiv').width();		
	}
	
	
	var divFromTop = 0;
	var divFromLeft = 0;
	switch(position)
	{
		case 'menu': // under menu
			if(isScrolledIntoView('#nav'))
			{
				divFromTop = $(window).scrollTop()+102-$(window).scrollTop();
			}
			else
			{
				divFromTop = $(window).scrollTop();
			}						
			divFromLeft = parseInt($(window).width())/2-(parseInt(useThisWidth)/2);
		break;
		case 'top': // top middle
			divFromTop = $(window).scrollTop();
			divFromLeft = $(window).width()/2-(useThisWidth/2);
		break;
		default:
		case 'header': // in the header next to the tabs
			divFromLeft = $(window).width()/2+43;
			$('#loadingDiv').css('white-space','normal');
			$('#loadingDiv').width(300);
			if(isScrolledIntoView('#zoeken'))
				divFromTop = $(window).scrollTop()+(($('#loadingDiv').height()>15) ? 20 : 30);
			else
			{
				divFromTop = $(window).scrollTop();
				divFromLeft = $(window).width()/2-(useThisWidth/2);
			}
		break;

	}		
	
	$('#loadingDiv').css('top', divFromTop);
	$('#loadingDiv').css('left', divFromLeft);
	return;
}

function ldt(text,addClassName,position)
{
	if(typeof(addClassName) == "undefined")
		$('#loadingDiv').attr("class","");
	else
		$('#loadingDiv').attr("class",addClassName);

	if(typeof(position) == "undefined") position = 'default';
	text = '<span id="lds">' + text + '</span>';
	$('#loadingDiv').html(text);
	pla(position);
	return;
}


function showTemp(id,ms)
{
	if(typeof(id) == "undefined")
		id = 'loadingDiv'; 
	if(typeof(ms) == "undefined")
		ms = 3000;

	$('#' + id).show();
	setTimeout('$("#' + id + '").fadeOut("slow")',ms);
}

var timeOuts = [];
function loadingAlert(display,text,position)
{		
	if(typeof(position) == "undefined") position = 'default';
	if(text == undefined) text = "Bezig met laden...";

	var loadingTexts = new Array("Bezig...",
								 "Nog even geduld aub...",
								 "Bezig met laden...",
								 "Nog steeds bezig...",
								 "Nog steeds bezig met laden...");

	var lt = loadingTexts.length;
	var st = window.timeOuts.length;
	for(i=0;i<st;i++)
		window.clearTimeout(window.timeOuts[i]);

	ldt(text,null,position);
	
	if(display=='none' || display=='hide')
		$('#loadingDiv').fadeOut('slow');
	else
	{		
		$('#loadingDiv').show();
		var datime = 0;
		var tt = 0;

		for (i=0;i<lt;i++)
		{
			tt = Number(i)+1;
			datime = Number((tt*tt) * 4000);
			window.timeOuts[i] = setTimeout('ldt("' + loadingTexts[i] + '",null,"' + position + '");',datime);
		}
	}
	
	return;
}

function validateNewUser()
{

	var formFields = [	'data[firstname]', 'data[lastname]', 'data[emailadres]',
						'data[pwd1]', 'data[pwd2]', 'data[type]'];
	var warnings = 0;var extra = '';
	jQuery.each(formFields, function(index, field) {
        if($(jq(field)).length)
        {
    		if($(jq(field)).val() == "" || $(jq(field)).val() == null)
    		{
    			warnings ++;
    			$(jq('l_'+field)).addClass("error");
    		}
    		else
            {
                if(field=='data[emailadres]')
                {
                    if(!validate_email($(jq(field)).val()))
                    {
                    	warnings ++;
                        $(jq('l_'+field)).addClass("error");
                        extra = 'of zijn niet correct ingevuld';
                    }
                    else
                    {
                        $(jq('l_'+field)).removeClass("error");
                    }
                }
                else
                {
        			$(jq('l_'+field)).removeClass("error");
                }
            }
        }
	});

	var agentsSelected = $("#agents_selection :checked").length;
	if(agentsSelected == 0)
	{
		$(jq('l_data[agentcodes]')).addClass("error");
		warnings ++;
	}
	else
	{
		$(jq('l_data[agentcodes]')).removeClass("error");		
	}
	
	if(warnings == 0)
		 if($(jq('data[pwd1]')).val() != $(jq('data[pwd2]')).val())
		 {
		 	$(jq('l_data[pwd1]')).addClass('error');
		 	$(jq('l_data[pwd2]')).addClass('error');
			ldt('De wachtwoorden komen niet overeen.','error','menu');
			showTemp('loadingDiv');
			return false;
		 }

	if(warnings > 0)
	{
		ldt('Niet alle verplichte velden, in het rood, zijn ingevuld' + extra + '.','error','menu');
		showTemp('loadingDiv');
		return false;
	}

	loadingAlert('show','Bezig met opslaan...','menu');
	document.newUser.submit();
}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent)
	{
		do {curleft += obj.offsetLeft;curtop += obj.offsetTop;}
		while (obj = obj.offsetParent);
		return [curleft,curtop];
	}
}

function check_schadevrij(fs)
{
	var datrijbewijs = document.getElementById('f-'+fs+'.88109').value;
	var datnu = document.getElementById.value;
	var schadevrij = document.getElementById('f-'+fs+'.10049').value;

	gebdag = datrijbewijs.substring(0,2);
	gebmaand = datrijbewijs.substring(3,5);
	gebjaar = datrijbewijs.substring(6,10);

	nu=new Date;
	date = nu.getDate();
	maand = nu.getMonth();
	jaar = nu.getYear();

	if(jaar < 1900)
	{
		jaar = jaar + 1900;
	}

	var leeftijd2 = (jaar - gebjaar) - 1;

	if(gebmaand < maand)
	{
		leeftijd2 = leeftijd2 + 1;
	}
	else if(gebmaand == maand && gebdag < date)
	{
		leeftijd2 = leeftijd2 + 1;
	}

	if(schadevrij > leeftijd2)
	{
		alert(schadevrij +' schadevrije jaren is niet mogelijk aangezien de persoon slechts '+ leeftijd2 +' jaar in het bezit is van een rijbewijs is.');
	}
}

function check_achtien(fs)
{
	var datgebr = document.getElementById('f-'+fs+'.10035').value;
	var datnu = document.getElementById.value;

	var gebdag = datgebr.substring(0,2);
	var gebmaand = datgebr.substring(3,5);
	var gebjaar = datgebr.substring(6,10);

	var nu = new Date;
	var date = nu.getDate();
	var maand = nu.getMonth();
	var jaar = nu.getYear();

	if(jaar < 1900)
	{
		jaar = jaar + 1900;
	}

	var leeftijd2 = (jaar - gebjaar) - 1;

	if(gebmaand < maand)
	{
		leeftijd2 = leeftijd2 + 1;
	}
	else if(gebmaand == maand && gebdag < date)
	{
		leeftijd2 = leeftijd2 + 1;
	}

	if(leeftijd2 < 18)
	{
		alert('De regelmatige bestuurder is nog geen 18 jaar oud!');
	}
}

var current_date_field_value = '';
function storeDate(fs)
{
	// alert('doing the storeDate...');
	current_date_field_value = document.getElementById('f-'+ fs).value;
}

function isValidDate(dateString)
{
	var RegExPattern = /^((((0?[1-9]|[12]\d|3[01])[\.\-\/](0?[13578]|1[02])[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|[12]\d|30)[\.\-\/](0?[13456789]|1[012])[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|((0?[1-9]|1\d|2[0-8])[\.\-\/]0?2[\.\-\/]((1[6-9]|[2-9]\d)?\d{2}))|(29[\.\-\/]0?2[\.\-\/]((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00)))|(((0[1-9]|[12]\d|3[01])(0[13578]|1[02])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|[12]\d|30)(0[13456789]|1[012])((1[6-9]|[2-9]\d)?\d{2}))|((0[1-9]|1\d|2[0-8])02((1[6-9]|[2-9]\d)?\d{2}))|(2902((1[6-9]|[2-9]\d)?(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00)|00))))$/;
    if ((dateString.match(RegExPattern)) && (dateString!=''))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function formatDateField(dt)
{
    switch(dt.value.length)
    {
    	case 6: // ddmmjj
    		if( parseInt(dt.value.substr(2,2)) > 12)
    		{
    			alert("Datum is niet goed ingevoerd, gebruik dd/mm/jjjj");
    			break;
    		}
    		dt.value = dt.value.substr(0,2) + '/' + dt.value.substr(2,2) + '/' + (parseInt( dt.value.substr(4,2) ) < 13 ? '20' : '19') + dt.value.substr(4,2);
    	break;
    	case 8: // ddmmjjjj
    		dt.value = dt.value.substr(0,2) + '/' + dt.value.substr(2,2) + '/' + dt.value.substr(4,4);
    	break;
    }

}

function date_input(fs)
{
    var dt = document.getElementById('f-'+ fs);
	dt.value = dt.value.replace(/-/g,'/');
    if (isValidDate(dt.value)) {
        var reg = /^([0-9]{1,2})[^0-9]([0-9]{1,2})[^0-9]([0-9]{2,4})$/;
		var res = dt.value.match(reg);
		if(res)
			{
				if(res[1].length != 2)
				{
					res[1] = '0' + res[1];
				}
				if(res[2].length != 2)
				{
					res[2] = '0' + res[2];
				}
				if(res[3].length != 4)
				{
					res[3] = (parseInt( res[3] ) < 20 ? '20' : '19') + res[3];
				}
				dt.value = res[1]+'/'+res[2]+'/'+res[3];
			}
			else
			{
				formatDateField(dt);
			}

    }
    else
    {
        var reg = /^([0-9]{1,2})[^0-9]([0-9]{1,2})$/;
		var res = dt.value.match(reg);
		if(res)
		{
			var datumToday = new Date();
			$(jq('f-'+fs)).val($(jq('f-'+fs)).val() + '/' + datumToday.getFullYear());
			date_input(fs);
			return false;
		}
		
    	var recheck = false;
		formatDateField(dt);

        if(isValidDate(current_date_field_value))
        {
        	/*var dv = (dt.value.length) ? dt.value : 'een lege waarde';
        	alert('De datum, ' + dv + ', is een ongeldige datum. De bewerking wordt ongedaan gemaakt.');
        	dt.value = current_date_field_value;*/        	
        }
        else
        {
        	var datumToday = new Date();
            var dateToday = datumToday.getDate() + '/' + (datumToday.getMonth()+1) + '/' + datumToday.getFullYear();
            alert('De datum, ' + dt.value + ', is onjuist en wordt vervangen door de datum van vadaag.');
            dt.value = dateToday;
        }
        //date_input(fs);
    }
}

function validateTime(fieldId)
{
	if($(jq(fieldId)).val().match(/^([0-1][0-9]|[2][0-3])(:([0-5][0-9])){1,2}$/))
	{
		$('[for]=fieldId').removeClass("error");
	}
	else
	{
		//$('[for]=fieldId').addClass("error");
		alert($(jq(fieldId)).val() + ' is geen geldige tijd (uu:mm, vb: 15:33).');
		var nu = new Date();
		$(jq(fieldId)).val($.strPad(nu.getHours(),2) + ':' + $.strPad(nu.getMinutes(),2));	
	}
}

function toAnvaDateFormat(date)
{
	var year = date.substring(6,10);
	var month = date.substring(3,5);
	var day = date.substring(0,2);

	return year + month + day;
}

function loadDossierPeriod(tabID,relatienummer)
{
	var fromDate = toAnvaDateFormat($(jq('f-from_' + relatienummer)).val());
	var toDate = toAnvaDateFormat($(jq('f-to_' + relatienummer)).val());
	
	if(fromDate > toDate)
		loadDossier(tabID,fromDate,toDate,true);
	else
		loadDossier(tabID,toDate,fromDate,true);
}

function loadFactuurPeriod(tabID,relatienummer)
{
	var tab = document.getElementById(tabID);
	var search_ar = new Array();
	
	search_ar['show_inact']			= tab.getAttribute('inactive');
	search_ar['show_tab']			= "financieel";
	search_ar['fac_type']			= $(jq('f-fac_type')).val();
	search_ar['fac_nr'] 			= $(jq('f-fac_nr')).val();
	search_ar['fac_polnr'] 			= $(jq('f-fac_polnr')).val();
	search_ar['fac_boekdat'] 		= toAnvaDateFormat($(jq('f-fac_boekdat')).val());
	search_ar['fac_facdat'] 		= toAnvaDateFormat($(jq('f-fac_facdat')).val());
	search_ar['order_by']			= $(jq('f-order_by')).val();
	search_ar['order_type']			= $(jq('f-order_type')).val();
	search_ar['off_set']			= $(jq('pageSelector')).val();


	loadFacturen(tabID,search_ar);
}

function loadFacturenSetOrder(tabID,relatienummer,orderBy)
{
	var oldOrderBy = $(jq('f-order_by')).val();
	var oldOrderType = $(jq('f-order_type')).val();

	/*first set order type*/
	if(oldOrderBy == orderBy)
	{
		if(oldOrderType == "ASC")
		{
			$(jq('f-order_type')).val("DESC");
		}
		else
		{
			$(jq('f-order_type')).val("ASC");
		}
	}
	else
	{
		$(jq('f-order_type')).val("DESC");
	}


	/*second set order field*/
	$(jq('f-order_by')).val(orderBy);
	

	loadFactuurPeriod(tabID,relatienummer);
}

function loadFacturenSetFilter(tabID,relatienummer,filterBy)
{
	$(jq('f-fac_type')).val(filterBy);
	loadFactuurPeriod(tabID,relatienummer);
}

function toggleDebug(id)
{
	$(jq(id)).val() == 0 ? $(jq(id)).val(1): $(jq(id)).val(0);
	$(jq(id)+'_img').attr('src','images/cb_' + $(jq(id)).val() + '.gif');
	return;
}

function toggleCustomCheckbox(id,toggleId,changeValue,reverse)
{
	if(typeof(toggleId)=='undefined')
		toggleId = 0;

	if(typeof(reverse)=='undefined')
		reverse = false;

	if(typeof(changeValue)=='undefined')
		changeValue = true;

	if(changeValue)
	{
		if(reverse)
		{
			$(jq(id)).val() == 0 ? $(jq(id)).val(1): $(jq(id)).val(0);
			if($(jq(id)).val() == 0){var img = 1}else{var img = 0};
			$(jq(id)+'_img').attr('src','images/cb_' + img + '.gif');
		}
		else
		{
			$(jq(id)).val() == 0 ? $(jq(id)).val(1): $(jq(id)).val(0);
			$(jq(id)+'_img').attr('src','images/cb_' + $(jq(id)).val() + '.gif');
		}
	}
	else
	{
		if($(jq(id)).attr('checked'))
		{
			$(jq(id)).removeAttr("checked");
			$(jq(id)+'_img').attr('src','images/cb_0.gif');
		}
		else
		{
			$(jq(id)).attr("checked", "checked");			
			$(jq(id)+'_img').attr('src','images/cb_1.gif');
		}
	}


	if(toggleId!=0)
		if($(jq(toggleId)).css('display') == 'none')
			$(jq(toggleId)).show();
		else
			$(jq(toggleId)).hide();

	return;
}

function saf(id){selectAndFocus(id)};

function selectAndFocus(elm) {
    if(typeof(elm) == 'string') {
        elm = $(elm);
    }
    if (elm) {
        elm.focus();
        elm.select();
    }
}

function vcnsoftware_oldversions()
{
	if(document.getElementById('vcnsoftware1').style.display == 'none')
	{
		document.getElementById('vcnsoftware1').style.display = '';
		document.getElementById('vcnsoftware2').style.display = '';
		document.getElementById('vcnsoftware3').style.display = '';
	}
	else
	{
		document.getElementById('vcnsoftware1').style.display = 'none';
		document.getElementById('vcnsoftware2').style.display = 'none';
		document.getElementById('vcnsoftware3').style.display = 'none';
	}
}

function updateReply(x)
{
	alert('xx');
	document.getElementById('form-reply-content').value = reverseRML(x);
	document.getElementById('form-reply-replyid').value = x.parentNode.parentNode.id.match( /form-reply-replyid-([0-9]+)/ )[1];
	document.getElementById('form-reply-content').focus();
	document.getElementById('form-reply-submit').value = 'Wijzig notitie';
}

function reverseRML(x)
{
	// var items = cssQuery('div > p', x.parentNode.parentNode);
	var items = $('div > p', x.parentNode.parentNode);


	if(items.length == 0)
	{
		alert('Oops!\nWe kunnen je bericht niet vinden.');
		return '';
	}

	var content = items[0].innerHTML;
	content = content.replace( /<br>/g, "" );
	content = content.replace( /<(\/?)([buis]|su[bp]|small)>/g, "[$1$2]" );
	content = content.replace( /<a href="([^"]+?)"(.*?)>(.*?)<\/a>/g, "$1" );

	return content;
}

function kenteken(ev, fs)
{
	var form_id = $('#form_id').val();
	var L_rollsid = $(jq('f-'+ fs +'.V9009'));
	L_rollsid.value = '0';

	var kenteken_field = $(jq('f-'+ fs +'.10033'));
	var autofield = $(jq('f-'+ fs +'.kenteken'));

	if(kenteken_field.val() == '')
		var kenteken = ' ';
	else
		var kenteken = kenteken_field.val();

	// autofield.html('Bezig met laden...');
	$(jq('img.'+fs+'.kentekenloader')).attr('src',site_template_url+ 'images/ajax-loader-w.gif').show();
	autofield.show();
	$(jq(fs +'.zonder_kenteken')).hide();

	var domID = autofield.attr('id');
	//var cb = "rolls_tst('" + domID + "','" + L_rollsid.id + "')";	
	var url = site_script_url + '/get_autogegevens/' + form_id + '/' + fs + '/' + kenteken;
	// xmlreq(url,'<waa>meukee!</waa>',domID,cb);
	
	$.get(
			url,
			function(data){
				$(jq(domID)).html(data);
				rolls_tst(autofield, L_rollsid);				
		        $(jq('img.'+fs+'.kentekenloader')).attr('src',site_template_url+ 'images/accept.gif').show();
		        setTimeout("$(jq('img." +fs + ".kentekenloader')).fadeOut();",1500);
			}
	);
	return false;
}

function rolls_tst(dom, L_rollsid)
{	
	// wat de f*ck is dit?
	var rolls_missing = dom.find(":contains('Er zijn geen gegevens gevonden bij dit kenteken.')");
	//dom.innerHTML.search(/Er zijn geen gegevens gevonden bij dit kenteken./);
	var rolls_error =   dom.find(":contains('Er is een probleem opgetreden bij het aanvragen van de auto gegevens.')");
	//dom.innerHTML.search(/Er is een probleem opgetreden bij het aanvragen van de auto gegevens./);

	if(rolls_missing.length > 0)
		L_rollsid.value = '1';

	if(rolls_error.length > 0)
		L_rollsid.value = '2';
	
	return false;
}

function toggleCheckbox(id,change,type){

	var normal = true;
	if(type) normal = false;

	if(normal || type == 'monuta' || type == 'short')
	{
		document.getElementById('f-'+id).value = (document.getElementById('x-'+id).checked == change ? '1' : '2');
		document.getElementById('x-'+id).checked = (document.getElementById('f-'+id).value == 1 ? 'checked' : '');
	}
	else if (type == 'V9100')
	{
		document.getElementById('f-'+id).value = (document.getElementById('x-'+id).checked == change ? 'J' : 'N');
		document.getElementById('x-'+id).checked = (document.getElementById('f-'+id).value == 'J' ? 'checked' : '');
	}
	else if (type == 'verzekerd')
	{
		document.getElementById('f-'+id).value = (document.getElementById('x-'+id).checked == change ? '00002' : '00001');
		document.getElementById('x-'+id).checked = (document.getElementById('f-'+id).value == '00002' ? 'checked' : '');
	}

}


function setCatalogusWaarde(el, ob)
{
	var x = getObj(el,ob);
	$('#inex_'+x.fieldsetID+',#inex_kort_'+x.fieldsetID+',#advies_cat_waarde_'+x.fieldsetID+',#advies_'+x.fieldsetID).hide();
	
	if($(jq('f-' + x.fieldsetID + '.10040')).val() == 0)
	{
		$('label[for="'+'f-' + x.fieldsetID + '.10040'+'"]').addClass('error');
	}
	else
	{
		$('label[for="'+'f-' + x.fieldsetID + '.10040'+'"]').removeClass('error');
	}	
	
	if(x.value == "P") // particulier  
	{
		$('#gebruik_'+x.fieldsetID).html('particulier&nbsp;').show('slow');
		$('#inex_'+x.fieldsetID).html('<strong><i>en inclusief&nbsp;</i></strong>').show('slow');
		$('#inex_kort_'+x.fieldsetID).html('inclusief&nbsp;').show('slow');
		
		var advies = $(jq('f-'+x.fieldsetID+'.V0701')).val();
		if(advies != "" && advies != 0)
		{
			$('#advies_'+x.fieldsetID).show();
			$('#advies_cat_waarde_'+x.fieldsetID).html('&euro;&nbsp;'+advies).show('slow');
		}		
	}
	else
	{
		$('#gebruik_'+x.fieldsetID).html('zakelijk&nbsp;').show('slow');
		$('#inex_'+x.fieldsetID).html('<strong><i>maar exclusief&nbsp;</i></strong>').show('slow');
		$('#inex_kort_'+x.fieldsetID).html('exclusief&nbsp;').show('slow');
		
		var advies = $(jq('f-'+x.fieldsetID+'.V0702')).val();
		if(advies != "" && advies != 0)
		{
			$('#advies_'+x.fieldsetID).show();
			$('#advies_cat_waarde_'+x.fieldsetID).html('&euro;&nbsp;'+$(jq('f-'+x.fieldsetID+'.V0702')).val()).show('slow');
		}		
	}
	return false;
}

$.strPad = function(i,l,s) {
	var o = i.toString();
	if (!s) { s = '0'; }
	while (o.length < l) {
		o = s + o;
	}
	return o;
}

function select_rolls_details(autoId)
{
	/*
	 	10040 cataloguswaarde inclusief accessoires en afhankelijk van gebruik (10260) P of Z inc. of ex btw
	 	10102 00002 = inc. btw, 00001 = ex. btw
	 	V0701 Cat. waarde + access. inc. btw
	 	V0702 Cat. waarde + access. inc. btw
	 	
	 	the topklasse templates heeft een x-{fieldset_id}.topklasse input
	 	var canDrink = (myAge > legalAge) ? true : false;
	 	
	*/
	
	var auto = jQuery.parseJSON($('#' + autoId).val());
	var fieldsetId = auto.fieldsetId;
	var topklasse = ($(jq('x-' + fieldsetId + '.topklasse')).length) ? true : false;	
	$.each(auto, function(label, value) 
	{  
		var labelId = label.replace(/label_/g,"");		
		// do not fill the cataloguswaarde in topklasse, set it to 0
		if(topklasse && labelId == '10040'){value = 0;}
		
		if($(jq('f-' + fieldsetId + '.' + labelId)).length)
		{		
		    if (labelId == '10218' && value == "" )//|| labelId == 10219 || labelId == 10034 || labelId == 10228
		    {   
			value = $('#f-handmatig_merken_' + fieldsetId + ' :selected').text();
		    }	    
		    else if (labelId == '10219' && value == "" )//|| labelId == 10219 || labelId == 10034 || labelId == 10228
		    {   
			value = $('#f-handmatig_modellen_' + fieldsetId + ' :selected').text();
		    }
		    else if(labelId == '10034' && value == "")//jaar
		    {
			value = $('#f-handmatig_datum_' + fieldsetId ).val().substring(6,10);
		    }
		    else if(labelId == '10228' && value == "")//maand heeft 0  padding nodig om geset te worden
		    {
			value = '000'+ $('#f-handmatig_datum_' + fieldsetId ).val().substring(3,5);
		    }
		    
			var label_input = $(jq('f-' + fieldsetId + '.' + labelId));		  
			var nodeName = label_input.get(0).nodeName;				  
			label_input.val(value);
			
			$('label[for="'+('f-' + fieldsetId + '.' + labelId)+'"]').each(function(){
				var new_label = $(this).find(':first-child').html();
				if(new_label!=null)				
					$(this).html(new_label);
			});
			$(jq('f-' + fieldsetId + '.' + labelId+'.error')).remove();
			
			/* 
				if we need to set radio buttons then the stuff below should be implemented..
				switch(nodeName)
				{
					case 'INPUT':
					case 'SELECT':
					default:
						//y('setting f ' + labelId + ' to ' + value);
					  	label_input.val(value);
					break;
				}
			*/		  
		}  
	});		
	showAutoInfo(fieldsetId);	
	if(topklasse){$(jq('f-' + fieldsetId + '.10260')).change();}	
	return false;
}

function showAutoInfo(fs)
{
	try
	{
		$('#auto_eigenschappen_'+fs).show();
		// zijn deze hieronder nog nodig?
		//$(jq('f-'+ fs +'.auto')).show();
		//$(jq('f-'+ fs +'.tweedegezins')).show();
		$(jq('regelmatige_bestuurder_'+ fs)).show();
		//$(jq('f-'+ fs +'.dekking')).show();
		$(jq(fs +'.zonder_kenteken')).hide();
		$(jq('f-'+fs +'.kenteken')).hide();
		// $(jq('f-'+fs +'.kenteken')).innerHTML = 'Loading...';
		$(jq(fs +'.title_deny_calc')).hide();
		$(jq(fs +'.title_allow_calc')).show();
	}
	catch(err){}
	return true;
}

function showAutoHandmatigOphalen(fs)
{
	try
	{
		$('#auto_handmatigophalen_'+fs).show();
	}
	catch(err){}
	return true;
}

function verwerkAutoHandmatigOphalen(formId, fs, step)
{
	var urlAppend = formId +'/'+ fs +"/";
	var datumveld =  $(jq('f-handmatig_datum_'+ fs));
	var merkveld = $(jq('f-handmatig_merken_'+ fs));
	var modelveld = $(jq('f-handmatig_modellen_'+ fs));
	
	var brandstofveld = $(jq('f-handmatig_brandstof_'+ fs));
	var transmissieveld = $(jq('f-handmatig_transmissie_'+ fs));
	var carosserieveld = $(jq('f-handmatig_carossierie_'+ fs));
	
	switch(step)
	{
	    case 'merklijst':
		urlAppend += "merklijst/"+ datumveld.val();
		merkveld.find('option').remove().end().append('<option value="leeg">--selecteer--</option>').val('leeg');
		modelveld.find('option').remove().end().append('<option value="leeg">--selecteer--</option>').val('leeg');
		$(jq('autolisthand-'+ fs)).hide();	
	    break;
	    case 'modellijst':
		urlAppend += "modellijst/"+ datumveld.val() +"/"+ merkveld.val();
		modelveld.find('option').remove().end().append('<option value="leeg">--selecteer--</option>').val('leeg');
		$(jq('autolisthand-'+ fs)).hide();
		
	    break;
	    case 'typelijst':
		urlAppend += "typelijst/"+ datumveld.val() +"/"+ merkveld.val() +"/"+ modelveld.val() +"/"+ brandstofveld.val() +"/"+ transmissieveld.val()+"/"+ carosserieveld.val();
		$(jq('autolisthand-'+ fs)).hide();
		
	    break;
	}
 
	if(step != false)
	{
	    loadingAlert('show','Bezig met ophalen gegevens...','header');

	    $.ajax({
	      type: 'POST',
	      url: site_script_url + '/get_autogegevens_handmatig/'+ urlAppend,
	      success: function(response){
			    if(response['success']==1)
			    {
					    loadingAlert('hide');

					    switch(step)
					    {
						case 'merklijst':
						    $.each(response, function(i, value) {
							if(i != "success")
							    merkveld.append($('<option>').text(value).attr('value', i));
						    });

						break;
						case 'modellijst':
						    $.each(response, function(i, value) {
							if(i != "success")
							    modelveld.append($('<option>').text(value).attr('value', i));
						    });

						break;
						case 'typelijst':
						    $(jq('autolisthand-'+ fs)).html(response['page']);
						    $(jq('autolisthand-'+ fs)).show();

						break;
					    }

				    $('#loadingDiv').fadeOut('slow',function(){
					    loadingAlert('hide');
					    ldt('De gegevens zijn succesvol opgehaald.','ok');
					    showTemp('loadingDiv');			
				    });
			    }
			    else
			    {	
				    $('#loadingDiv').fadeOut('slow',function(){
					    loadingAlert('hide');
					    ldt('De gegevens zijn niet opgehaald:<br>' + response['error'],'error','menu');
					    showTemp('loadingDiv',5000);					
				    });
			    }
		    },
	      dataType: 'json' 
	    });
	}
	
	// auto_handmatigophalenmag_fs    kijken of ze no opheaald mogen worden
	if( datumveld.val() != ""
	    && merkveld.val() > 0
	    && modelveld.val() > 0	
	    //&& brandstofveld.val() > 0
	    //&& transmissieveld.val() > 0
	    //&& carosserieveld.val() > 0
	){ $(jq('auto_handmatigophalenmag_'+ fs)).show();}
	else
	    { $(jq('auto_handmatigophalenmag_'+ fs)).hide(); }


}


function SetDELAslotvragen(fs)
{
	var fillInLabel = "";
	var q_a =  $(jq('f-'+ fs +'.SV_A')).get(0).checked;
	var q_b =  $(jq('f-'+ fs +'.SV_B')).get(0).checked;
	var q_c =  $(jq('f-'+ fs +'.SV_C')).get(0).checked;
	var q_d =  $(jq('f-'+ fs +'.SV_D')).get(0).checked;
	var q_e =  $(jq('f-'+ fs +'.SV_E')).get(0).checked;
	var q_f =  $(jq('f-'+ fs +'.SV_F')).get(0).checked;
	var q_g =  $(jq('f-'+ fs +'.SV_G')).get(0).checked;
	var q_h =  $(jq('f-'+ fs +'.SV_H')).get(0).checked;
	var q_i =  $(jq('f-'+ fs +'.SV_I')).get(0).checked;
	var q_j =  $(jq('f-'+ fs +'.SV_J')).get(0).checked;
	var q_k =  $(jq('f-'+ fs +'.SV_K')).get(0).checked;

	$('span[id^="f-'+ fs +'.doc_cat_"]').css("display","none");

	if(q_a ==true){
		var fillInLabel = fillInLabel +"A";
		$(jq('f-'+ fs +'.doc_cat_A')).css("display","block");
	}if(q_b ==true){
		var fillInLabel = fillInLabel +"B";
		$(jq('f-'+ fs +'.doc_cat_B')).css("display","block");
	}if(q_c ==true){
		var fillInLabel = fillInLabel +"C";
		$(jq('f-'+ fs +'.doc_cat_C')).css("display","block");
	}if(q_d ==true){
		var fillInLabel = fillInLabel +"D";
		$(jq('f-'+ fs +'.doc_cat_D')).css("display","block");
	}if(q_e ==true){
		var fillInLabel = fillInLabel +"E";
		$(jq('f-'+ fs +'.doc_cat_E')).css("display","block");
	}if(q_f ==true){
		var fillInLabel = fillInLabel +"F";
		$(jq('f-'+ fs +'.doc_cat_F')).css("display","block");
	}if(q_g ==true){
		var fillInLabel = fillInLabel +"G";
		$(jq('f-'+ fs +'.doc_cat_G')).css("display","block");
	}if(q_h ==true){
		var fillInLabel = fillInLabel +"H";
	}if(q_i ==true){
		var fillInLabel = fillInLabel +"I";
		$(jq('f-'+ fs +'.doc_cat_I')).css("display","block");
	}if(q_j ==true){
		var fillInLabel = fillInLabel +"J";
	}if(q_k ==true){
		var fillInLabel = fillInLabel +"K";
	}

	if(fillInLabel.length == 0 || fillInLabel == 'K')
		$('table[id="f-'+ fs +'.docblock"]').css("display","none");
	else
		$('table[id="f-'+ fs +'.docblock"]').css("display","");

	
	document.getElementById("f-"+ fs +".V0317").value = fillInLabel;
}

function readDELAslotvragen(fs)
{
	var antwoordenObj = $(jq("f-"+ fs +".V0317")).get(0); 

	if(antwoordenObj == null)
		return;

	var antwoorden = antwoordenObj.value;
	
	if(0 <= antwoorden.search(/A/))
		$(jq("f-"+ fs +".SV_A")).get(0).checked = true
	if(0 <= antwoorden.search(/B/))
		$(jq("f-"+ fs +".SV_B")).get(0).checked = true
	if(0 <= antwoorden.search(/C/))
		$(jq("f-"+ fs +".SV_C")).get(0).checked = true
	if(0 <= antwoorden.search(/D/))
		$(jq("f-"+ fs +".SV_D")).get(0).checked = true
	if(0 <= antwoorden.search(/E/))
		$(jq("f-"+ fs +".SV_E")).get(0).checked = true
	if(0 <= antwoorden.search(/F/))
		$(jq("f-"+ fs +".SV_F")).get(0).checked = true
	if(0 <= antwoorden.search(/G/))
		$(jq("f-"+ fs +".SV_G")).get(0).checked = true
	if(0 <= antwoorden.search(/H/))
		$(jq("f-"+ fs +".SV_H")).get(0).checked = true
	if(0 <= antwoorden.search(/I/))
		$(jq("f-"+ fs +".SV_I")).get(0).checked = true
	if(0 <= antwoorden.search(/J/))
		$(jq("f-"+ fs +".SV_J")).get(0).checked = true
	if(0 <= antwoorden.search(/K/))
		$(jq("f-"+ fs +".SV_K")).get(0).checked = true

	SetDELAslotvragen(fs);
}

function delaSlotverklaring(ob,fieldsetID)
{	
	var extra_slotvragen = $(jq('f-' + fieldsetID + '.slotvragenfs'));
	
	if($(ob).val() == "J" && $(ob).attr('checked') == true)
		extra_slotvragen.show();
	else
		extra_slotvragen.hide();

	return false;
}

