// JavaScript Document

function ignoreIt(obj)
{
	obj.blur();
}

function checkEmailValid(emailStr,msg)
{
	var emailPat=/^(.+)@(.+)$/
	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
	var validChars="\[^\\s" + specialChars + "\]"
	var quotedUser="(\"[^\"]*\")"
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
	var atom=validChars + '+'
	var word="(" + atom + "|" + quotedUser + ")"
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
	var errMsg="";   
	var matchArray=emailStr.match(emailPat)

	if (matchArray==null) 
	{
	   errMsg=errMsg+msg+" Email Address seems incorrect";
	   return errMsg;
	}
	else
	{
	  var user=matchArray[1]
	  var domain=matchArray[2]
	  if (user.match(userPat)==null) 
	  {
		errMsg=errMsg+msg+" Email Address seems incorrect";
		return errMsg;       
	  }
	  var IPArray=domain.match(ipDomainPat)
	  if (IPArray!=null) 
	  {
		  for (var i=1;i<=4;i++) 
			  {
			if (IPArray[i]>255) 
				{
				errMsg=errMsg+msg+" Email Address seems incorrect";
				return errMsg;
				}//IF
			  }//for
	   }//IP Array
	   var domainArray=domain.match(domainPat)
	   if (domainArray==null) 
	   {
		 errMsg=errMsg+msg+" Email Address seems incorrect";
		 return errMsg;
	   }
	   var atomPat=new RegExp(atom,"g")
	   var domArr=domain.match(atomPat)
	   var len=domArr.length
	   if (domArr[domArr.length-1].length<2 || domArr[domArr.length-1].length>3) 
	   {
		 errMsg=errMsg+msg+" Email Address seems incorrect";
		 return errMsg;	
	   } 
	   if (len<2) 
	   {
		 errMsg=errMsg+msg+" Email Address seems incorrect";
		 return errMsg;	 
	   } 
	 }//End  Match
	return "0";
}

function checkDataEntry(obj)
{
	var mycode
	var count=0;
	if(obj.length!=0)
	{
		for(i=0; i<obj.length; i++)
		{
			mycode = obj.charCodeAt(i);
			if((mycode>47 && mycode<58) || (mycode>64 && mycode<91) || (mycode>96 && mycode<123) || (mycode>3584 && mycode<3631) || (mycode>3647 && mycode<3653))
			{
				count=count+1;
			}
		}
	}
	return count;
}

function checkReservation()
{
	if(checkDataEntry(document.frmData.strContactName.value)==0)
	{
		alert("Please enter your Contact Name");
		return false;
	}
	var e=document.frmData.strEmail.value;
	if(checkDataEntry(e)==0)
	{
		alert("Please enter your Email Address");
		return false;
	}
	else
	{
		if (checkEmailValid(e)!="0") 
		{
			alert(checkEmailValid(e,'Your'));
			return false;	
		}
	}
	if(checkDataEntry(document.frmData.strTelephone.value)==0)
	{
		alert("Please enter your Telephone Number");
		return false;
	}
	if(document.frmData.strDateBox.value=="Click icon to select =>")
	{
		alert("Please select your Reservation Date");
		return false;
	}
	else
	{
		var millisecond=1;
		var second=millisecond*1000;
		var minute=second*60;
		var hour=minute*60;
		var day=hour*24;
		var year=day*365;
		var dateObj;
		
		dateObj=Date.parse(Date())
		var newDate;
		var dVal=dateObj.valueOf();
		var selDate=document.frmData.strDateBox.value;
		newDate=new Date(dVal-day*1);
		if(Date.parse(selDate)<Date.parse(newDate))
		{
			alert("The Reservation Date selected is in the past, please select a future date");
			return false;
		}
	}

	if (document.frmData.intHour.value==0 && document.frmData.intMinute.value==99)
	{
		alert("Please select your Reservation Time");
		return false;
	}
	else if (document.frmData.intHour.value==0 && document.frmData.intMinute.value!=99)
	{
		alert("Please select your Reservation Time");
		return false;
	}
	else if (document.frmData.intHour.value!=0 && document.frmData.intMinute.value==99)
	{
		alert("Please select your Reservation Time");
		return false;
	}

	var hr=document.frmData.intHour.value;
	var mn=document.frmData.intMinute.value;
	var tm=hr+":"+mn;
	{
		if(tm=="21:15" || tm=="21:30" || tm=="21:45")
		{
			alert("Sorry, the last reservation is at 21:00 pm");
			return false;
		}
	}
	
	if(document.frmData.chkFacialMsg.checked==false && document.frmData.chkThaiMsg.checked==false && document.frmData.chkOilMsg.checked==false && document.frmData.chkHandMsg.checked==false && document.frmData.chkScrub.checked==false && document.frmData.chkManicure.checked==false && document.frmData.chkWaxing.checked==false)
	{
		alert("Please select at least one service");
		return false;
	}
	return true;
}

function checkContact()
{
	if(checkDataEntry(document.frmData.strContactName.value)==0)
	{
		alert("Please enter your Contact Name");
		return false;
	}
	var e=document.frmData.strEmail.value;
	if(checkDataEntry(e)==0)
	{
		alert("Please enter your Email Address");
		return false;
	}
	else
	{
		if (checkEmailValid(e)!="0") 
		{
			alert(checkEmailValid(e,'Your'));
			return false;	
		}
	}
	if(checkDataEntry(document.frmData.strComment.value)==0)
	{
		alert("Please enter your Comments");
		return false;
	}
	return true;
}

