function trim_all(strObjName){ 

	//this function removes the spaces from the variables

        var strObj = strObjName;

        var strRet = "";

        for (i = 0;i < strObj.length;i++)

        {

                if(strObj.charAt(i) != " " && strObj.charAt(i) != "")

                        strRet = strRet+strObj.charAt(i);

        }

        return strRet;

}

function getExt(filename) {



   var dot_pos = filename.lastIndexOf(".");



   if(dot_pos == -1)



      return "";



   return filename.substr(dot_pos+1).toLowerCase();



}



	// -------------------------------------------------------------------

// compareDates(date1,date1format,date2,date2format)

//   Compare two date strings to see which is greater.

//   Returns:

//   1 if date1 is greater than date2

//   0 if date2 is greater than date1 of if they are the same

//  -1 if either of the dates is in an invalid format

// -------------------------------------------------------------------

function compareDates(date1,dateformat1,date2,dateformat2) {

	var d1=getDateFromFormat(date1,dateformat1);

	var d2=getDateFromFormat(date2,dateformat2);

	if (d1==0 || d2==0) {

		return -1;

		}

	else if (d1 > d2) {

		return 1;

		}

	return 0;

	}



// ------------------------------------------------------------------

// formatDate (date_object, format)

// Returns a date in the output format specified.

// The format string uses the same abbreviations as in getDateFromFormat()

// ------------------------------------------------------------------

function formatDate(date,format) {

	format=format+"";

	var result="";

	var i_format=0;

	var c="";

	var token="";

	var y=date.getYear()+"";

	var M=date.getMonth()+1;

	var d=date.getDate();

	var E=date.getDay();

	var H=date.getHours();

	var m=date.getMinutes();

	var s=date.getSeconds();

	var yyyy,yy,MMM,MM,dd,hh,h,mm,ss,ampm,HH,H,KK,K,kk,k;

	// Convert real date parts into formatted versions

	var value=new Object();

	if (y.length < 4) {y=""+(y-0+1900);}

	value["y"]=""+y;

	value["yyyy"]=y;

	value["yy"]=y.substring(2,4);

	value["M"]=M;

	value["MM"]=LZ(M);

	value["MMM"]=MONTH_NAMES[M-1];

	value["NNN"]=MONTH_NAMES[M+11];

	value["d"]=d;

	value["dd"]=LZ(d);

	value["E"]=DAY_NAMES[E+7];

	value["EE"]=DAY_NAMES[E];

	value["H"]=H;

	value["HH"]=LZ(H);

	if (H==0){value["h"]=12;}

	else if (H>12){value["h"]=H-12;}

	else {value["h"]=H;}

	value["hh"]=LZ(value["h"]);

	if (H>11){value["K"]=H-12;} else {value["K"]=H;}

	value["k"]=H+1;

	value["KK"]=LZ(value["K"]);

	value["kk"]=LZ(value["k"]);

	if (H > 11) { value["a"]="PM"; }

	else { value["a"]="AM"; }

	value["m"]=m;

	value["mm"]=LZ(m);

	value["s"]=s;

	value["ss"]=LZ(s);

	while (i_format < format.length) {

		c=format.charAt(i_format);

		token="";

		while ((format.charAt(i_format)==c) && (i_format < format.length)) {

			token += format.charAt(i_format++);

			}

		if (value[token] != null) { result=result + value[token]; }

		else { result=result + token; }

		}

	return result;

	}



// ------------------------------------------------------------------

// getDateFromFormat( date_string , format_string )

//

// This function takes a date string and a format string. It matches

// If the date string matches the format string, it returns the 

// getTime() of the date. If it does not match, it returns 0.

// ------------------------------------------------------------------

function getDateFromFormat(val,format) {

	val=val+"";

	format=format+"";

	var i_val=0;

	var i_format=0;

	var c="";

	var token="";

	var token2="";

	var x,y;

	var now=new Date();

	var year=now.getYear();

	var month=now.getMonth()+1;

	var date=1;

	var hh=now.getHours();

	var mm=now.getMinutes();

	var ss=now.getSeconds();

	var ampm="";

	

	while (i_format < format.length) {

		// Get next token from format string

		c=format.charAt(i_format);

		token="";

		while ((format.charAt(i_format)==c) && (i_format < format.length)) {

			token += format.charAt(i_format++);

			}

		// Extract contents of value based on format token

		if (token=="yyyy" || token=="yy" || token=="y") {

			if (token=="yyyy") { x=4;y=4; }

			if (token=="yy")   { x=2;y=2; }

			if (token=="y")    { x=2;y=4; }

			year=_getInt(val,i_val,x,y);

			if (year==null) { return 0; }

			i_val += year.length;

			if (year.length==2) {

				if (year > 70) { year=1900+(year-0); }

				else { year=2000+(year-0); }

				}

			}

		else if (token=="MMM"||token=="NNN"){

			month=0;

			for (var i=0; i<MONTH_NAMES.length; i++) {

				var month_name=MONTH_NAMES[i];

				if (val.substring(i_val,i_val+month_name.length).toLowerCase()==month_name.toLowerCase()) {

					if (token=="MMM"||(token=="NNN"&&i>11)) {

						month=i+1;

						if (month>12) { month -= 12; }

						i_val += month_name.length;

						break;

						}

					}

				}

			if ((month < 1)||(month>12)){return 0;}

			}

		else if (token=="EE"||token=="E"){

			for (var i=0; i<DAY_NAMES.length; i++) {

				var day_name=DAY_NAMES[i];

				if (val.substring(i_val,i_val+day_name.length).toLowerCase()==day_name.toLowerCase()) {

					i_val += day_name.length;

					break;

					}

				}

			}

		else if (token=="MM"||token=="M") {

			month=_getInt(val,i_val,token.length,2);

			if(month==null||(month<1)||(month>12)){return 0;}

			i_val+=month.length;}

		else if (token=="dd"||token=="d") {

			date=_getInt(val,i_val,token.length,2);

			if(date==null||(date<1)||(date>31)){return 0;}

			i_val+=date.length;}

		else if (token=="hh"||token=="h") {

			hh=_getInt(val,i_val,token.length,2);

			if(hh==null||(hh<1)||(hh>12)){return 0;}

			i_val+=hh.length;}

		else if (token=="HH"||token=="H") {

			hh=_getInt(val,i_val,token.length,2);

			if(hh==null||(hh<0)||(hh>23)){return 0;}

			i_val+=hh.length;}

		else if (token=="KK"||token=="K") {

			hh=_getInt(val,i_val,token.length,2);

			if(hh==null||(hh<0)||(hh>11)){return 0;}

			i_val+=hh.length;}

		else if (token=="kk"||token=="k") {

			hh=_getInt(val,i_val,token.length,2);

			if(hh==null||(hh<1)||(hh>24)){return 0;}

			i_val+=hh.length;hh--;}

		else if (token=="mm"||token=="m") {

			mm=_getInt(val,i_val,token.length,2);

			if(mm==null||(mm<0)||(mm>59)){return 0;}

			i_val+=mm.length;}

		else if (token=="ss"||token=="s") {

			ss=_getInt(val,i_val,token.length,2);

			if(ss==null||(ss<0)||(ss>59)){return 0;}

			i_val+=ss.length;}

		else if (token=="a") {

			if (val.substring(i_val,i_val+2).toLowerCase()=="am") {ampm="AM";}

			else if (val.substring(i_val,i_val+2).toLowerCase()=="pm") {ampm="PM";}

			else {return 0;}

			i_val+=2;}

		else {

			if (val.substring(i_val,i_val+token.length)!=token) {return 0;}

			else {i_val+=token.length;}

			}

		}

	// If there are any trailing characters left in the value, it doesn't match

	if (i_val != val.length) { return 0; }

	// Is date valid for month?

	if (month==2) {

		// Check for leap year

		if ( ( (year%4==0)&&(year%100 != 0) ) || (year%400==0) ) { // leap year

			if (date > 29){ return 0; }

			}

		else { if (date > 28) { return 0; } }

		}

	if ((month==4)||(month==6)||(month==9)||(month==11)) {

		if (date > 30) { return 0; }

		}

	// Correct hours value

	if (hh<12 && ampm=="PM") { hh=hh-0+12; }

	else if (hh>11 && ampm=="AM") { hh-=12; }

	var newdate=new Date(year,month-1,date,hh,mm,ss);

	return newdate.getTime();

	}

	

// ------------------------------------------------------------------

// isDate ( date_string, format_string )

// Returns true if date string matches format of format string and

// is a valid date. Else returns false.

// It is recommended that you trim whitespace around the value before

// passing it to this function, as whitespace is NOT ignored!

// ------------------------------------------------------------------

function isDate(val,format) {

	var date=getDateFromFormat(val,format);

	if (date==0) { return false; }

	return true;

	}

	// ------------------------------------------------------------------

// Utility functions for parsing in getDateFromFormat()

// ------------------------------------------------------------------

function _isInteger(val) {

	var digits="1234567890";

	for (var i=0; i < val.length; i++) {

		if (digits.indexOf(val.charAt(i))==-1) { return false; }

		}

	return true;

	}

function _getInt(str,i,minlength,maxlength) {

	for (var x=maxlength; x>=minlength; x--) {

		var token=str.substring(i,i+x);

		if (token.length < minlength) { return null; }

		if (_isInteger(token)) { return token; }

		}

	return null;



}



function checkme(){
	var name = document.formulier1.name;	
	if(trim_all(name.value) == ""){

			alert("Uw naam invullen a.u.b. !");

			name.focus();

			return false;

	}
	var gender = document.formulier1.gender;	
	var cnt1 = -1;	
	for (var i=document.formulier1.gender.length-1; i > -1; i--) {
		if (document.formulier1.gender[i].checked) {cnt1 = i; i = -1;}
		}
	if (cnt1 > -1) {	

		}

	else{	

		alert("Vul in: man of vrouw a.u.b. !");

		gender.focus();

		return false;

	}		

		 

	var street = document.formulier1.street;	

	if(trim_all(street.value) == ""){

			alert("Uw straatnaam invullen a.u.b. !");

			street.focus();

			return false;

	}
	var zip = document.formulier1.zip;

	var pincode = /^[0-9]{4}[a-zA-Z]{2}$/;

    if(!pincode.test(zip.value)){                

        alert("Uw postcode invullen a.u.b. ! Bijvoorbeeld: 6588TL");

		zip.value="";

		zip.focus();		

		return false;               

       }
	var hometown = document.formulier1.hometown;	
	if(trim_all(hometown.value) == ""){

			alert("Uw woonplaats invullen a.u.b. !");

			hometown.focus();

			return false;

	}
	var hobbies = document.formulier1.hobbies;	
	if(trim_all(hobbies.value) == ""){

			alert("Uw hobby’s invullen a.u.b. !");

			hobbies.focus();

			return false;

	}
	//date validations-----------
	var dob = document.formulier1.dob;	
	if(trim_all(dob.value) == ""){

			alert("Geef uw geboortedatum de juiste volgorde a.u.b. ! Bijvoorbeeld: 30-12-1977");

			dob.value="";

			dob.focus();

			return false;

	}
	if(isDate (dob.value,"dd-mm-yyyy"))
	{

	}else{

		alert("Geef De Geboorte datum in het juiste formaat");

		dob.value="";

		dob.focus();

		return false;

	}

	//date validations ends--------------------------

	

	//date compare validation------------------
	var date = new Date();

	var curr_year = date.getFullYear();	

	endDate=dob.value;

	broken =endDate.split("-");

	var diff = curr_year - broken[2];

	//alert(diff);

	var lessthan = document.formulier1.lessthan;

	var cnt2 = -1;	
	if(diff >=18){

		if (document.formulier1.lessthan.checked == false) {

				alert("Ben je minimaal 18 ? Aanvinken a.u.b. !");

				lessthan.focus();

				return false;

				}

		else{

		}				

	}

	else

	{			

	}

	

	//date comparision ends--------------------------------

	

	var phone = document.formulier1.phone;

	if(trim_all(phone.value) == "")

	{

	   alert("Telefoonnummer invullen a.u.b. !");

	   phone.value="";	   

	   phone.focus();

	   return false;

	}else{	  

	}

	

	if(!CheckPhone(phone.value)){

		    alert("Telefoonnummer should be valid");

		    phone.value="";

			phone.focus();

			return false;

	}else{		

	}
	var email = document.formulier1.email;
	var reTESTfirstchar = /^[a-zA-Z]*$/;
	var reEmail         = /^[0-9a-zA-Z_\.-]+\@[0-9a-zA-Z_\-]+\.[0-9a-zA-Z_\.-]*$/;
	if(trim_all(email.value) == ""){

		alert("Uw e-mail adres invullen a.u.b. !");

		email.focus();

		return false;

	}else if(!reTESTfirstchar.test(email.value.charAt(0))){		

		alert("Moet beginnen met een alfabet");

		email.focus();

		return false;

	}else if(!reEmail.test(email.value)){		

		alert("E-mail In Ongeldig formaat");

		email.focus();

		return false;

	}else{

		

	}
	var cemail = document.formulier1.cemail;	
	if(trim_all(cemail.value) == "")
	{

	    alert("Vul nogmaals uw e-mail adres in ter controle a.u.b. !");	

	    cemail.focus();

		return false;

	}else{	  

	}

	var reTESTfirstchar = /^[a-zA-Z]*$/;

	var reEmail         = /^[0-9a-zA-Z_\.-]+\@[0-9a-zA-Z_\-]+\.[0-9a-zA-Z_\.-]*$/;

	if(trim_all(cemail.value) == ""){

		alert("E-mail Identiteitskaart Vereist");

		cemail.focus();

		return false;

	}else if(!reTESTfirstchar.test(cemail.value.charAt(0))){		

		alert("Moet beginnen met een alfabet");

		cemail.focus();

		return false;

	}else if(!reEmail.test(cemail.value)){		

		alert("E-mail In Ongeldig formaat");

		cemail.focus();

		return false;

	}else{		

	}
	if(cemail.value != email.value){

			alert("Oeps! Geen twee dezelfde e-mail adressen.. ");			

			cemail.focus();

			return false;

	}else{			

	}
	var participateHEADING = document.formulier1.participateHEADING;

	var cnt = -1;	

	for (var i=document.formulier1.participateHEADING.length-1; i > -1; i--) {

		if (document.formulier1.participateHEADING[i].checked) {cnt = i; i = -1;}

		}

	if (cnt > -1) {	

		}

	else{	
		alert("Vul een rubriek in a.u.b. !");
		return false;
	}
	var reason = document.formulier1.reason;
	if(trim_all(reason.value) == "")
	{

	   alert("Geef de reden waarom je wilt winnen");	
	   reason.focus();
	   return false;
	}else{	  

	}
	if(document.formulier1.limit.value != 0)
	{
		alert("Minimaal aantal karakters 200");
		reason.focus();		
		return false;
	}
	var fileToUpload = document.getElementById("fileToUpload").value; 
	var picObj = document.getElementById("loading1");
	if(picObj.style.display != "block"){
		
			if(location.href.indexOf("id=") == -1){
					alert("Oeps, je moet je foto nog uploaden. Selecteer een foto van jezelf of een foto die betrekking op jou heeft.");
					fileToUpload.focus();
					return false;
			}

	}else{			

		var filename = document.getElementById("txtfakefile").value;	

		var ext = getExt(filename);

		document.formulier1.extension.value=ext;

		if(trim_all(fileToUpload) != ""){

			if(ext != "jpg" && ext != "png" && ext != "gif"){

			alert("Ongeldig bestand (alleen jpg, png of gif-bestanden kunnen worden geupload)");

			fileToUpload.focus();

			return false;

			}else{			

			}

		} 

	}   
	document.formulier1.updte.value = 1;
	//alert(document.formulier1.updte.value);	
	document.formulier1.submit();
}

function CheckPhone(valSring)
{
	flagCheckNum=0;
	for (i = 0; i < valSring.length; i++){
		var alphaa = valSring.charAt(i);
		var hh = alphaa.charCodeAt(0);
		if((hh >= 47 && hh<58) || hh == 40 || hh == 41 || hh == 45 ){
			flagCheckNum++;
		}
	}
	if(flagCheckNum == valSring.length){
		return true;	
	}
	else{
		return false;
	}
}
