// JavaScript Document
var numb = '0123456789';
var lwr = 'abcdefghijklmnopqrstuvwxyz';
var upr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
var space = ' ';
var vowels = 'aeiouAEIOU';

function maxlength(element, maxvalue) {
	var text = element.value;
	//alert();
     var q = text.length;
     var r = q - maxvalue;
     var msg = 	"Sorry, you have input " + q + " characters into the text box.\n" + 
	 			"It can handle no more than " + maxvalue + " characters.\n" +
				"Please abbreviate your text by at least " + r + " character";
	 if ( r > 1 ) msg+= "s";
	 msg+= ".";
     if (q > maxvalue) alert(msg);
}




function isValid(parm,val) {
if (parm == "") return true;
for (i=0; i<parm.length; i++) {
if (val.indexOf(parm.charAt(i),0) == -1) return false;
}
return true;
}

function isNum(parm) {return isValid(parm,numb);}
function isPhone(parm) {return isValid(parm,numb+space);}
function isLower(parm) {return isValid(parm,lwr);}
function isUpper(parm) {return isValid(parm,upr);}
function isAlpha(parm) {return isValid(parm,lwr+upr);}
function isAlphanum(parm) {return isValid(parm,lwr+upr+numb);}

function hasVowels(parm) {return has(parm,vowels);}
function has(parm,val) {
	if (parm == "") return true;
	for (i=0; i<parm.length; i++) {
		
		if (val.indexOf(parm.charAt(i),0) > -1) return true;
	
	}
	return false;
}


function checkPhone(data) {
	if ( isPhone(data.value) == false ) {
		alert("Please enter a valid Telephone Number");
		data.value = "";
	}
}

function checkMail(data)
{
	var x = data.value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!filter.test(x)) {
		alert("Please enter a valisd e-mail address");
		data.value = "";
	}
}

function checkForm(data,type) {
	//alert(data.Husband.value);
	var error_string = "";
	var html_data = "http://";
	var comments = data.Comments.value;
	var address = ""; 
	
	if ( type == "ME" ) {
		
		
		address = data.Address1.value;
		address += data.Address2.value;
		address += data.Address3.value;
		
		
		
		if ( data.Husband.value == "" ) error_string += "Husband Name Missing\n";
		if ( data.Wife.value == "" ) error_string += "Wife Name Missing\n";
		if ( data.Surname.value == "" ) error_string += "Surname Name Missing\n";
		
	}
	
	if ( type == "EE" ) {
		
		address = data.HisAddress1.value;
		address += data.HisAddress2.value;
		address += data.HisAddress3.value;
		address += data.HerAddress1.value;
		address += data.HerAddress2.value;
		address += data.HerAddress3.value;
		
		
		
		if ( data.HisFirstName.value == "" ) error_string += "His First Name Missing\n";
		if ( data.HisName.value == "" ) error_string += "His Surname Missing\n";
		if ( data.HerFirstName.value == "" ) error_string += "Her First Name Missing\n";
		if ( data.HerName.value == "" ) error_string += "Her Surname Missing\n";
	}
	
	if ( data.Email.value == "" ) error_string += "e-mail Address Missing\n";
	if ( data.Telephone.value == "" ) error_string += "Telephone Number Missing\n";
	if ( address == "" ) error_string += "Address Missing\n";
	
	
	
	if ( ! hasVowels(address) )  error_string = "Text Construct Error(s)";
	if ( ! hasVowels(data.Comments.value) )  error_string = "Text Construct Error(s)";

		
	if ( comments.indexOf(html_data) > 0 ) error_string += "Remove HTML data in comments text\n";
	
	if ( error_string != "" ) {
		error_string = "Please correct the following error(s) :-\n" + error_string;
		alert(error_string);
		return false;
	}
	else {
		return true;
		
	}

}