var form1=document.getElementById("magicdust-enquiry-form");
var form2=document.getElementById("magicdust-existing-form");
var form3=document.getElementById("magicdust-support-form");
var emailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
var valid=false;

var warning=new Array(4);
for(x=0; x < 4 ;x++) {
	warning[x]=false;
}

var label=new Array(10);
label[0]=document.getElementById("name-info-1");
label[1]=document.getElementById("email-info-1");
label[2]=document.getElementById("message-info-1");
label[3]=document.getElementById("name-info-2");
label[4]=document.getElementById("email-info-2");
label[5]=document.getElementById("message-info-2");
label[6]=document.getElementById("name-info-3");
label[7]=document.getElementById("email-info-3");
label[8]=document.getElementById("website-info-3");
label[9]=document.getElementById("message-info-3");

var check=new Array(10);
check[0]=document.getElementById("name-1");
check[1]=document.getElementById("email-1");
check[2]=document.getElementById("message-1");
check[3]=document.getElementById("name-2");
check[4]=document.getElementById("email-2");
check[5]=document.getElementById("message-2");
check[6]=document.getElementById("name-3");
check[7]=document.getElementById("email-3");
check[8]=document.getElementById("website-3");
check[9]=document.getElementById("message-3");

var error=new Array(4);
error[0]='<span class="alert">Please enter a name.</span><br />';
error[1]='<span class="alert">Please enter a valid email address.</span><br />';
error[2]='<span class="alert">Please enter a message of at least 10 characters.</span><br />';
error[3]='<span class="alert">Please enter a valid website address.</span><br />';

function badResult(position,errorNumber) {
	label[position].innerHTML=error[errorNumber];
	check[position].value="";
}

function goodResult(position) {
	label[position].innerHTML="";
}

function validateName(name,position,errorNumber) {
	if(name.length < 3) {
		badResult(position,errorNumber);
		return true;	
	} else {
		goodResult(position);
		return false;
	}
}

function validateEmail(email,position,errorNumber) {
	if (!emailFilter.test(email)) {
		badResult(position,errorNumber);
		return true;	
	} else {
		goodResult(position);
		return false;
	}
}

function validateMessage(message,position,errorNumber) {
	if(message.length < 10) {
		badResult(position,errorNumber);
		return true;	
	} else {
		goodResult(position);
		return false;
	}
}

function validateWeb(web,position,errorNumber) {
	var webFilter = new RegExp();
	webFilter.compile("^[A-Za-z]+://[A-Za-z0-9-_]+\\.[A-Za-z0-9-_%&\?\/.=]+$");
	if (!webFilter.test(web)) {
		badResult(position,errorNumber);
		return true;	
	} else {
		goodResult(position);
		return false;
	} 
}

function validate1() {
	valid=true;
	if(validateName(check[0].value,0,0)) {
		warning[0]=true;
	} else {
		warning[0]=false;
	}
	if(validateEmail(check[1].value,1,1)) {
		warning[1]=true;
	} else {
		warning[1]=false;
	}
	if(validateMessage(check[2].value,2,2)) {
		warning[2]=true;
	} else {
		warning[2]=false;
	}
	for(x=0; x < 3 ;x++) {
		if(warning[x]==true) {
			valid=false;
		}
	}
	if(valid==false) {
		return false;
	}
}

function validate2() {
	valid=true;
	if(validateName(check[3].value,3,0)) {
		warning[0]=true;
	} else {
		warning[0]=false;
	}
	if(validateEmail(check[4].value,4,1)) {
		warning[1]=true;
	} else {
		warning[1]=false;
	}
	if(validateMessage(check[5].value,5,2)) {
		warning[2]=true;
	} else {
		warning[2]=false;
	}
	for(x=0; x < 3 ;x++) {
		if(warning[x]==true) {
			valid=false;
		}
	}
	if(valid==false) {
		return false;
	}
}

function validate3() {
	valid=false;
	if(validateName(check[6].value,6,0)) {
		warning[0]=true;
	} else {
		warning[0]=false;
	}
	if(validateEmail(check[7].value,7,1)) {
		warning[1]=true;
	} else {
		warning[1]=false;
	}
	if(validateWeb(check[8].value,8,3)) {
		warning[2]=true;
	} else {
		warning[2]=false;
	}
	if(validateMessage(check[9].value,9,2)) {
		warning[3]=true;
	} else {
		warning[3]=false;
	}
	for(x=0; x < 4 ;x++) {
		if(warning[x]==true) {
			valid=false;
		}
	}
	if(valid==false) {
		return false;
	}
}

form1.onsubmit=validate1;
form2.onsubmit=validate2;
form3.onsubmit=validate3;