// JavaScript Document
function getFlashMovie(movieName) {
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[movieName] : document[movieName];
}

function includeFlash(movie,name,w,h,flashvars) {
	if (AC_FL_RunContent == 0) {
		alert("This page requires AC_RunActiveContent.js.");
	} else {
		AC_FL_RunContent(
			'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0',
			'width', w,
			'height', h,
			'src', movie,
			'quality', 'high',
			'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
			'align', 'middle',
			'play', 'true',
			'loop', 'true',
			'scale', 'noscale',
			'wmode', 'transparent',
			'devicefont', 'false',
			'id', name,
			'bgcolor', '#000000',
			'name', name,
			'menu', 'true',
			'allowFullScreen', 'false',
			'allowScriptAccess','always',
			'movie', movie,
			'flashvars', flashvars,
			'salign', 'top'
			); //end AC code
	}
}


function showObject(obj,show) {
	obj = Dom.get(obj);
	if (show) {
		obj.style.display = "block";
	} else {
		obj.style.display = "none";
	}
}


function showMaxResult(imgdir) {
	$('.uitklappen').hide();
	$('.inklappen').show();
	$('#pageTitle').attr("id", "pageTitleWide");
	$('#pageContentUitslag').attr("id", "pageContentUitslagUitgeklapt");
	$('#innerContentUitslag').removeClass('contentOverflow');
	$('#widthControl').css("float", "left");
	$('#uitslagIntro').css("width", 853);
	$('#mainR').hide();
}

function showMinResult(imgdir) {
	$('.uitklappen').show();
	$('.inklappen').hide();
	$('#pageTitleWide').attr("id", "pageTitle");
	$('#pageContentUitslagUitgeklapt').attr("id", "pageContentUitslag");
	$('#innerContentUitslag').addClass('contentOverflow');
	$('#widthControl').css("clear", "left");
	$('#uitslagIntro').css("width", 560);
	$('#mainR').show();
}

function checkForm(formId) {
	var form = document.getElementById('form_'+formId);
	var elements = form.elements;
	var errorfields = new Array();
	var feedback = '';
	for(var i = 0; i < elements.length; i++) {
		var id_parts = elements[i].id.split("_");
		if (id_parts[0] == 'formitem') {			
			var validationObj = document.getElementById('validate_'+id_parts[1]);
			if (validationObj != null) {
				var validation = validationObj.value;
				if (validation != "" && validation != "none") {
					//validate
					var legal = new Array();
					legal['letters'] = 'abcdefghijklmnopqrstuvwxyz';
					legal['numbers'] = '0123456789';
					legal['letters_numbers'] = 'abcdefghijklmnopqrstuvwxyz0123456789';
					switch (elements[i].type) {
						case 'text':
						case 'textarea':
							switch	(validation) {
								case 'notempty':
									if (elements[i].value == '') {
										errorfields.push(elements[i].title);
										feedback += 'Het veld \''+elements[i].title+'\' is niet ingevuld.<br />';										
									}
									break;
								case 'letters':
								case 'numbers':
								case 'letters_numbers':
									if (elements[i].value == '') {
										errorfields.push(elements[i].title);
										feedback += 'Het veld \''+elements[i].title+'\' is niet ingevuld.<br />';										
									} else {
										if (!validateString(elements[i].value, legal[validation])) {
											errorfields.push(elements[i].title);
											if (validation == 'letters') var only = 'letters';
											if (validation == 'numbers') var only = 'cijfers';
											if (validation == 'letters_numbers') var only = 'letters en cijfers';
											feedback += 'Het veld \''+elements[i].title+'\' mag alleen '+only+' bevatten.<br />';
										}
									}
									break;							
								case 'email':
									if (!validateEmail(elements[i].value)) {
										errorfields.push(elements[i].title);
										feedback += 'Het veld \''+elements[i].title+'\' is geen correct e-mailadres.<br />';
									}
									break;
								case 'postal':
									if (elements[i].value == '') {
										errorfields.push(elements[i].title);
										feedback += 'Het veld \''+elements[i].title+'\' is niet ingevuld.<br />';										
									} else {
										// 1234AB
										if (elements[i].value.length != 6) {
											errorfields.push(elements[i].title);
											feedback += 'Het veld \''+elements[i].title+'\' moet 6 karakters bevatten.<br />';
										} else {
											var numbers = elements[i].value.substr(0,4);
											var letters = elements[i].value.substr(4,2);
											if (!validateString(numbers, legal['numbers']) || !validateString(letters, legal['letters'])) {
												errorfields.push(elements[i].title);
												feedback += 'Het veld \''+elements[i].title+'\' is geen correcte postcode.<br />';
											}
										}
									}
									break;
							}
							break;
						case 'checkbox':
							//str += "Value:" + elements[i].checked + "\n";
							if (validation == 'notempty' && !elements[i].checked) {
								errorfields.push(elements[i].title);
								feedback += 'Het veld \''+elements[i].title+'\' moet worden aangevinkt.<br />';
							}
							break;
						case 'select-multiple':
							var selected = new Array(); 
							for (var j = 0; j < elements[i].options.length; j++) {
								if (elements[i].options[j].selected) selected.push(elements[i].options[j].value);
							}
							if (validation == 'notempty' && selected.length == 0) {
								errorfields.push(elements[i].title);
								feedback += 'Bij het veld \''+elements[i].title+'\' is geen keuze gemaakt.<br />';
							}
							break;
					}
				}
			}
		}
	}
	
	if (errorfields.length == 0) {
		//no errors -> submit form
		form.submit();
	} else {
		//display errors
		$('#feedback_'+formId).html(feedback);
		$('#feedback_'+formId).removeClass("feedback_green");
		$('#feedback_'+formId).addClass("feedback_red");
		window.location.hash = 'pointer_'+formId;
	}
}

/* form field checks */
function validateString(string,legal) {
	if (string == '') return false;
	string = string.toLowerCase();
	for (var i = 0; i < string.length; i++) {
		if (legal.indexOf(string.charAt(i)) == -1) {
			return false;
		}
	}
	return true;
}

function validateEmail(address) {
	
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	return reg.test(address);
}

/* dreamweaver rollover */
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  if (pngRollOver) {var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}}
}