function validateLogin()
{

	if (document.frmSignin.email.value == "") 
	{
		alert("Email cannot be empty. Please try again.");
		document.frmSignin.email.focus();
		return false;
	}
	else if(document.frmSignin.password.value == "")
	{
		alert("Password cannot be empty. Please try again.");
		document.frmSignin.password.focus();
		return false;
	}
	else
	{
		return true;
	}
}

function checkUploadFile()
{
	//check the filename is not NULL and format should be GIF, JPG, or JPEG	
	var fileName = document.frmArt.NewItemImage.value;
	var caption = document.frmArt.artname.value;
	
	if(fileName=="" )
	{
		alert ("Please select an image to upload.");
		return false;
	}
	if(caption=="")
	{
		alert ("Please enter an art name.");
		document.frmArt.artname.focus();
		return false;
	}
	var n=fileName.lastIndexOf(".");
	var fileExtension=fileName.substring(n+1,fileName.length);
	fileExtension=fileExtension.toUpperCase();	
	if(fileExtension=="JPG" || fileExtension =="JPEG" || fileExtension =="GIF")
	{
		return true;			
	}
	else
	{
		alert("Please select a JPEG or GIF file only.");
		return false;
	}
}

function validateFormReg()
{	
	if (document.registration.username.value == "")
	{
		alert("Please enter a username.");
		document.registration.username.focus();
		return false;
	}

	if(document.registration.email.value == "" || !checkEMail(document.registration.email.value))
	{
		alert("Please enter a valid email address.");
		document.registration.email.focus();
		return false;
	}


	if (document.registration.password.value != document.registration.confirmpassword.value)
	{
		alert('Your passwords do not match. Please try again.');
		document.registration.password.focus();
		return false;
	}

	if(document.registration.password.value.length<6)
	{
		alert('Your password must contain at least 6 characters.');
		document.registration.password.focus();
		return false;
	}

	/*if(document.registration.firstname.value == "")
	{
		alert("Please enter a first name.");
		document.registration.firstname.focus();
		return false;
	}

	if(document.registration.lastname.value == "")
	{
		alert("Please enter a last name.");
		document.registration.lastname.focus();
		return false;
	}*/

	if(!validatephonenumber(document.registration.phonenumber.value))
	{
		alert("Please enter a 10-digit phone number.");
		document.registration.phonenumber.focus();
		return false;
	}

	if(!validatezipcode(document.registration.postalcode.value))
	{
		alert("Please enter a valid zip code.");
		document.registration.postalcode.focus();
		return false;
	}

	if (!validateDate(document.registration.year.value,document.registration.month.value,document.registration.day.value))
	{
		alert("Please enter a valid date of birth.");
		document.registration.month.focus();
		return false
	}
	
	return true;
}

function validateDate(year,month,day)
{
	if(year.length != 4 || year<1900)
		return false;

	var strBirth = year + '-' + month + '-' + day;

	var sRegular = /^(\d{2,4}-((((0?[13578])|(1[02]))-((0?[1-9]|[0-2][0-9])|(3[01])))|(((0?[469])|(11))-((0?[1-9]|[0-2][0-9])|(30)))|(0?[2]-(0?[1-9]|[0-2][0-9]))))$/;
		
	if(!sRegular.test(strBirth))		
		return false;

	return true;
}

//regular function to check @ and . in the email address
function checkEMail(sEMail)
{
	var sRegular = /^[A-Za-z0-9](([_\.\-]?[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/;
	if (sRegular.test(sEMail)) 
		return true;
	else 
		return false;
}

function validatezipcode(str)
{
	if(str == "")
		return true;
	
	var sRegular = /^[0-9]{5}$|^[0-9]{5}-?[0-9]{4}$/;

	if(!sRegular.test(str))		
		return false;

	return true;
}

function validatephonenumber(str)
{
	if(str == "")
		return true;
	
	var sRegular = /^[0-9]{10}$|^[0-9]{3}.[0-9]{3}.[0-9]{4}$|^[0-9]{3}-[0-9]{3}-[0-9]{4}$|^[0-9]{3} [0-9]{3} [0-9]{4}$|^\([0-9]{3}\)[0-9]{3}-[0-9]{4}$|^\([0-9]{3}\)[0-9]{3} [0-9]{4}$|^\([0-9]{3}\) [0-9]{3}-[0-9]{4}$|^\([0-9]{3}\) [0-9]{3} [0-9]{4}$/;
	//var sRegular = /^[0-9]{10}$/;
	if(!sRegular.test(str))
		return false;

	return true;
}

function validateFormMyinfo()
{
	if(document.myinfo.email.value == "" || !checkEMail(document.myinfo.email.value))
	{
		alert("Please enter a valid email address.");
		document.myinfo.email.focus();
		return false;
	}

	if (document.myinfo.password.value != document.myinfo.confirmpassword.value)
	{
		alert('Your passwords do not match. Please try again.');
		document.myinfo.password.focus();
		return false;
	}

	if(document.myinfo.password.value.length<6)
	{
		alert('Your password must contain at least 6 characters.');
		document.myinfo.password.focus();
		return false;
	}

	/*if(document.myinfo.firstname.value == "")
	{
		alert("Please enter a first name.");
		document.myinfo.firstname.focus();
		return false;
	}

	if(document.myinfo.lastname.value == "")
	{
		alert("Please enter a last name.");
		document.myinfo.lastname.focus();
		return false;
	}*/

	if(!validatezipcode(document.myinfo.postalcode.value))
	{
		alert("Please enter a valid zip code.");
		document.myinfo.postalcode.focus();
		return false;
	}

	if(!validatephonenumber(document.myinfo.phonenumber.value))
	{
		alert("Please enter a 10-digit phone number.");
		document.myinfo.phonenumber.focus();
		return false;
	}	

	return true;
}
