function trim(stringToTrim) {
	return stringToTrim.replace(/^\s+|\s+$/g,"");
}
function ltrim(stringToTrim) {
	return stringToTrim.replace(/^\s+/,"");
}
function rtrim(stringToTrim) {
	return stringToTrim.replace(/\s+$/,"");
}

// Set the Date
var dayName = new Array("Sun,", "Mon,", "Tues,", "Wed,", "Thurs,", "Fri,", "Sat,");
var monName = new Array("Jan", "Feb", "March", "April", "May", "June", "July", "Aug", "Sept",  "Oct", "Nov", "Dec");
var now = new Date();

// Check login information
function checkLoginFields(input) {

	var requiredFields = new Array("userid", "password");
	var fieldNames = new Array("User ID", "Password");
	
	var fieldCheck = true;
	var fieldsNeeded = "\nA value must be entered in the following field(s):\n\n\t";
	
	for(var fieldNum=0; fieldNum < requiredFields.length; fieldNum++) {
		if ((input.elements[requiredFields[fieldNum]].value == " ") ||
		   (input.elements[requiredFields[fieldNum]].value == "")) {
			fieldsNeeded += fieldNames[fieldNum] + "\n\t";
			fieldCheck = false;
		}
	}

	// Some fields are missing
	if (fieldCheck == true) {
		return true;
	}
	else {
		alert(fieldsNeeded);
		return false;
	}
}



// Check login information
function checkRegisterFields(input) {

	var requiredFields = new Array("company_name", "name", "surname", "email", "phone");
	var fieldNames = new Array("Company Name", "First Name", "Surname", "Email address", "Phone Number");
	
	var fieldCheck = true;
	var fieldsNeeded = "\nA value must be entered in the following field(s):\n\n\t";
	
	for(var fieldNum=0; fieldNum < requiredFields.length; fieldNum++) {
		if ((input.elements[requiredFields[fieldNum]].value == " ") ||
		   (input.elements[requiredFields[fieldNum]].value == "")) {
			fieldsNeeded += fieldNames[fieldNum] + "\n\t";
			fieldCheck = false;
		}
	}

	// Some fields are missing
	if (fieldCheck == true) {
		return true;
	}
	else {
		alert(fieldsNeeded);
		return false;
	}
}


// Contact form code
// Check Contact us information
function checkRequiredContactRequestFields(input) {

	var requiredFields = new Array("Name", "Company", "Email", "Phone");
	var fieldNames = new Array("Name", "Company", "Email address", "Phone no.");
	
	var fieldCheck = true;
	var fieldsNeeded = "\nA value must be entered in the following field(s):\n\n\t";
	
	for(var fieldNum=0; fieldNum < requiredFields.length; fieldNum++) {
		if ((input.elements[requiredFields[fieldNum]].value == " ") ||
		   (input.elements[requiredFields[fieldNum]].value == "")) {
			fieldsNeeded += fieldNames[fieldNum] + "\n\t";
			fieldCheck = false;
		}
	}

	// Some fields are missing
	if (fieldCheck == true) {
			
		// VALIDATE EMAIL ADDRESS MORE
		if (!validEmail(input.Email.value))
		{
			alert("Invalid email address")
			return false
		}
		return true;
	}
		
	else {
		alert(fieldsNeeded);
		return false;
	}
}


// Check Contact us information
function checkRequiredTechBriefingRequestFields(input) {

	var requiredFields = new Array("Name", "Company", "Email", "Phone");
	var fieldNames = new Array("Name", "Company", "Email address", "Phone no.");
	
	var fieldCheck = true;
	var fieldsNeeded = "\nA value must be entered in the following field(s):\n\n\t";
	
	for(var fieldNum=0; fieldNum < requiredFields.length; fieldNum++) {
		if ((input.elements[requiredFields[fieldNum]].value == " ") ||
		   (input.elements[requiredFields[fieldNum]].value == "")) {
			fieldsNeeded += fieldNames[fieldNum] + "\n\t";
			fieldCheck = false;
		}
	}

	// Some fields are missing
	if (fieldCheck == true) {
			
		// VALIDATE EMAIL ADDRESS MORE
		if (!validEmail(input.Email.value))
		{
			alert("Invalid email address")
			return false
		}
		return true;
	}
		
	else {
		alert(fieldsNeeded);
		return false;
	}
}













function validEmail(bnpemail)
{
	invalidChars = " /:,;"
	
	if (bnpemail == "") 
	{ 
		return false
	}
	
	for (i=0; i<invalidChars.length;i++)
	{
		badChar = invalidChars.charAt(i)
		if (bnpemail.indexOf(badChar,0) > -1)
		{
			return false
		}
	}
	
	atPos = bnpemail.indexOf("@",1)
	if (atPos == -1)
	{
		return false
	}
	
	if (bnpemail.indexOf("@",atPos+1) != -1)
	{
		return false
	}
	
	periodPos = bnpemail.indexOf(".",atPos)
	if (periodPos == -1)
	{
		return false
	}
	
	if (periodPos+3 > bnpemail.length)
	{
		return false
	}
	
	return true
}	

