// JavaScript Document

function isEmail( email ) {
	var re1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)|(\,)/;
	var re2 = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
	return ( !re1.test(email) && re2.test(email) );
}


function checkFields () {
	var formname = arguments[0];
	var successdiv = arguments[1];
	var status = true;
	var message = "Niet alle velden zijn correct ingevuld.";

	for (i = 2; i < arguments.length; i=i+2 ) {
		myArg = eval('document.forms[\''+formname+'\'].'+arguments[i]);
		if (myArg.style != undefined) {myArg.style.border = 'solid 1px #669966';};
		switch(arguments[i+1]) {
			case 'R': //varfield
			if (myArg.value == ''){ 
				myArg.style.border = 'solid 1px #FF0000';
				status=false;
			};
			break;
			case 'E': //email 
			if (myArg.value == '' || !isEmail(myArg.value)){ 
				myArg.style.border = 'solid 1px #FF0000';
				message += "<br>Email adres is niet correct.";
				status=false;
			};
			break;
			case 'I': //radiobuttons
			var radioChecked = false;
			var radioLength = eval('document.forms[formname].'+arguments[i]+'.length');
			for (r=0;r < radioLength;r++) {
				 if (eval('document.forms[formname].'+arguments[i]+'['+r+'].checked'))  radioChecked = true;
			}
			if (!radioChecked) {
				//eval('document.getElementById(\''+arguments[i]+'_alert\').style.border = \'solid 1px #FF0000\';');
				status=false;
			}
			break;
			case 'C': //checkbox 
			if (!$("#"+myArg.id).attr('checked')){ 
				myArg.style.border = 'solid 1px #FF0000';
				message += "<br>- "+myArg.name+"</span> is niet aangevinkt.";
				status=false;
			};
			break;

		}
	}

	if ($("#"+formname).attr("xmlpost") && status){
	// submit
	status = false;
	setTimeout(function() {
	var error_text;
	$.ajax({
	type: $("#"+formname).attr("method"),
	url: $("#"+formname).attr("xmlpost"),
	data : $("#"+formname).serialize(),
	dataType: "xml",
	success: function(xml) {
			$(xml).find('item').each(function(){
				 error_text = $(this).find('error').text();
			 }); //close each(
			if (error_text == 'success') {
				alerter("De gegevens zijn succesvol verzonden.","alerter_success");
				$("#"+formname).fadeOut("fast");
				$('#'+successdiv).fadeIn("slow");				
			}else {
				alerter("Fout bij opslaan van gegevens:<br><span style=\"font-size:9px\">("+error_text+")</span>","alerter_error");
			}
			

		},
          error: function(data) {
			alerter("Er is iets foutgegaan ("+data.status+")","alerter_error");
          }

 	}); //close $.ajax
						},1000);
	}else {
		alerter(message,"alerter_error");
	};
	return status;
}



function alerter(txt,myclass) {
	$("#alerterDiv").removeClass();
	// init eerste keer
	if ($("#alerterDiv").attr('id') == undefined) {
		$("body").append('<div id="alerterDiv"></div>');
	}
	
	if (myclass) {
		$("#alerterDiv").addClass(myclass);
	}else {
		$("#alerterDiv").addClass("alerter");
	}
	$("#alerterDiv").html(txt).fadeIn("slow",function(){setTimeout(function(){$("#alerterDiv").fadeOut("slow")},3000);});;
}



function selectAllInfo(w,myId) {
	setTimeout(function(){
		if (w=="all") {
			
			
			if($("#spOnderwerpAll").attr("CHECKED") !=  "checked")
			{
				for (i=1;i<=5;i++) {
					$("#spOnderwerp"+i).attr({'CHECKED' : "checked"});
					$("#spOnderwerp"+i).attr({'checked' : "checked"});
				}
				$("#spOnderwerpAll").attr({'CHECKED' : "checked"});
				$("#spOnderwerpAll").attr({'checked' : "checked"});
			}else{
				for (i=1;i<=5;i++) {
					$("#spOnderwerp"+i).attr({'CHECKED' : ""});
					$("#spOnderwerp"+i).attr({'checked' : ""});
				}
				$("#spOnderwerpAll").attr({'CHECKED' : ""});
				$("#spOnderwerpAll").attr({'checked' : ""});				
			}
			
			//--
			
		}else if(w=="no") {
			
				$("#spOnderwerpAll").attr({'CHECKED' : ""});
				$("#spOnderwerpAll").attr({'checked' : ""});
			
			if($("#"+myId).attr("CHECKED") ==  "checked"){ $("#"+myId).attr({'CHECKED' : ""});;			
			}else if($("#"+myId).attr("CHECKED") ==  "")
			{ $("#"+myId).attr({'CHECKED' : "checked"}); }
			
		}else {
			$("#spOnderwerpAll").attr({'CHECKED' : ""});
			$("#spOnderwerpAll").attr({'checked' : ""});
		}
	},200);


	
}
