// JavaScript Document

function validateContact() {
    var msgString = "";
	document.getElementById("nameFirst").className='nonErrorStyle';
	document.getElementById("nameLast").className='nonErrorStyle';	
	document.getElementById("email").className='nonErrorStyle';
	document.getElementById("primaryPhone").className='nonErrorStyle';
	document.getElementById("txtComments").className='nonErrorStyle';

	if( document.ContactGB.nameFirst.value == "" ) { 
		msgString += "* Enter your first name.<br>"; 
		document.getElementById("nameFirst").className='errorStyle';
	}
	if( document.ContactGB.nameLast.value == "" ) { 
		msgString += "* Enter your last name.<br>";
		document.getElementById("nameLast").className='errorStyle';
	}	
	if( document.ContactGB.email.value == "" || !isEmail( document.ContactGB.email.value ) ) {
    		msgString += "* Enter your valid email address.<br>";
			document.getElementById("email").className='errorStyle';
    }
	if( document.ContactGB.primaryPhone.value == "" || !isPhoneNumber( document.ContactGB.primaryPhone.value ) ) {
			msgString += "* Enter a valid phone number.<br>"; 
			document.getElementById("primaryPhone").className='errorStyle';
    }
	if( document.ContactGB.txtComments.value == "" ) { 
		msgString += "* Enter your message.<br>"; 
		document.getElementById("txtComments").className='errorStyle';
	}
	if( msgString.length > 0 ) { 
		document.getElementById('error').innerHTML = msgString;
		return false; 
	} else {
			document.ContactGB.primaryPhone.value = correctPhoneNumber(document.ContactGB.primaryPhone.value);
	}
    return true;
}


function validateNewsletterEmail() {
	document.getElementById("newsletter").className='nonErrorStyle';
	if( document.rm_subscription.email.value == "" || !isEmail( document.rm_subscription.email.value ) ) {
			document.getElementById("newsletter").className='errorStyle';
			alert("Enter your valid email address.");
			return false;
    } else {
	return true;
	}
}

function validateMobilePhone() {
	document.getElementById("mobilenumber").className='nonErrorStyle';
	
	if( document.frmTextMessages.mobilenumber.value == "" || !isPhoneNumber( document.frmTextMessages.mobilenumber.value ) ) {
			 document.getElementById("mobilenumber").className='errorStyle';
			 alert("Please enter a valid mobile number!");
			 return false; 
    } else {
			document.frmTextMessages.mobilenumber.value = correctPhoneNumber(document.frmTextMessages.mobilenumber.value);
	}
    return true;
} 



function rm_validateForm(theForm){
        var x = theForm.email.value;

        var regExp=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i

        if (regExp.test(x)){
            return true;
        }else{
            alert("Please input a valid email address!");
            return false;
        }
        
    }



//Validation Functions//
function isEmail(string) {
    if (string.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
        return true;
    else
        return false;
}
function isPhone(string) {
    if (string.search(/^\d{10}/) != -1)
        return true;
    else
        return false;
}
function isPhoneNumber(string) {
    if (string.search(/^(1\s*[-\/\.]?)?(\((\d{3})\)|(\d{3}))\s*[-\/\.]?\s*(\d{3})\s*[-\/\.]?\s*(\d{4})\s*(([xX]|[eE][xX][tT])\.?\s*(\d+))*$/) != -1)
        return true;
    else
        return false;
}
function isZip(string) {
    if (string.search(/^\d{5}/) != -1)
        return true;
    else
        return false;
}
function isTwoLetters(string) {
    if (string.length > 1)
        return true;
    else
        return false;
}
function isFourLetters(string) {
    if (string.length > 3)
        return true;
    else
        return false;
}
function isPostalCode(string) {
    if (string.search(/^\s*[a-ceghj-npr-tvxy]\d[a-ceghj-npr-tv-z](\s)?\d[a-ceghj-npr-tv-z]\d\s*$/i) != -1) {
        return true;
	} else {
        return false;
	}
}
function correctPhoneNumber (string) {
	 phoneNumber = string.replace(/ /g,"");
	 phoneNumber = phoneNumber.replace(/\(/g,"");
	 phoneNumber = phoneNumber.replace(/\)/g,"");
	 phoneNumber = phoneNumber.replace(/-/g,"");
	 phoneNumber = phoneNumber.replace(/\./g,"");
	 return phoneNumber;
}
function trim(str){
	while(''+str.charAt(0)==' ')
	str=str.substring(1,str.length);
	while(''+str.charAt(str.length-1)==' ')
	str=str.substring(0,str.length-1);
	return str;
}