﻿// JScript File
//------**
//-----++validate Tell A Friend form
function MM_validateForm() { //v3.0
  var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
    for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
    if (val) { nm=val.name; if ((val=val.value)!="") {
      if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
        if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
      } else if (test!='R') { num = parseFloat(val);
        if (val!=''+num) errors+='- '+nm+' must contain a number.\n';
        if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
          min=test.substring(8,p); max=test.substring(p+1);
          if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
    } } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
  } if (errors)  alert('The following error(s) occurred:\n'+errors);
	 document.MM_returnValue = (errors == '');
}
//-----++
//-------?? Validate Login Form
function SubmitLoginForm()
{
if (document.LoginForm.LoginNametxt.value == '')
    {
    	alert("\"Login Name\" is required.");
		document.LoginForm.LoginNametxt.focus();
		return false;
    }
if (document.LoginForm.Passwordtxt.value == '')
    {
    	alert("\"Password\" is required.");
		document.LoginForm.Passwordtxt.focus();
		return false;
    }
    	//msg = "Are you sure you want to continue?";
    //if (confirm(msg))
   // {
	    document.LoginForm.submit();
    //}
    //else return false;	
}
//---------??
//----$$
//Delete email - Temporarly deletes currently opened email in Email_Message.aspx
function DeleteMessage()
{
    msg = "Are you sure to delete the message?";
    if (confirm(msg))
    {
	return true;
	}
    else return false;
}
//----$$
//----^^ Validate Change login form
function SubmitChangeLoginForm()
{
    if (document.LoginChangeForm.LoginNametxt.value == '')
    {
    	alert("\"Login Name\" is required.");
		document.LoginChangeForm.LoginNametxt.focus();
		return false;
    }
    if (document.LoginChangeForm.OldPasswordtxt.value == '')
    {
    	alert("\"Old Password\" is required.");
		document.LoginChangeForm.OldPasswordtxt.focus();
		return false;
	}
	if (document.LoginChangeForm.NewPasswordtxt.value == '')
    {
    	alert("\"New Password\" is required.");
		document.LoginChangeForm.NewPasswordtxt.focus();
		return false;
	}
	if (document.LoginChangeForm.ConfirmPasswordtxt.value == '')
    {
    	alert("\"Confirm Password\" is required.");
		document.LoginChangeForm.ConfirmPasswordtxt.focus();
		return false;
	}
	if (document.LoginChangeForm.ConfirmPasswordtxt.value != document.LoginChangeForm.NewPasswordtxt.value)
    {
    	alert("New Password and Confirm Password are not same.");
		document.LoginChangeForm.ConfirmPasswordtxt.focus();
		document.LoginChangeForm.ConfirmPasswordtxt.select();
		return false;
	}
	msg = "Are you sure you want to continue?";
    if (confirm(msg))
    {
	    document.LoginChangeForm.submit();
    }
    else return false;	
}
//----^^
//------$$ Validate TellAFriend form
function submitForm()
{
	if(document.tellafriendform.yourname.value == '')
	{
		alert("\"Your Name\" is required.");
		document.tellafriendform.yourname.focus();
		return false;
	}
//-------
	if(document.tellafriendform.youremail.value == '')
	{
		alert("\"Your Email\" is required.");
		document.tellafriendform.youremail.focus();
		return false;
	}
//-------	
	if(!checkEmailAddress(document.tellafriendform.youremail.value,true,true))
	{
		//alert("Your email address is not valid");
		document.tellafriendform.youremail.focus();
		return false;
	}
//-------	
	if(document.tellafriendform.friendsname.value == '')
	{
		alert("\"Friend's Name\" is required.");
		document.tellafriendform.friendsname.focus();
		return false;
	}
//-------
	if(document.tellafriendform.friendsemail.value == '')
	{
		alert("\"Friend's Email\" is required.");
		document.tellafriendform.friendsemail.focus();
		return false;
	}
//-------	
	if(!checkEmailAddress(document.tellafriendform.friendsemail.value,true,true))
	{
		//alert("Your friend's email address is not valid");
		document.tellafriendform.friendsemail.focus();
		return false;
	}
//-------	
	if(document.tellafriendform.comments.value == '') 
	{
		alert("\"Comments\" is a required.");
		document.tellafriendform.comments.focus();
		return false;
	}
	else if (document.tellafriendform.comments.value.length >250)
	{
		alert("\"Comments\" size is too long to store, please reduce the size.");
		document.tellafriendform.comments.focus();
		return false;
	}
//-------	
	//document.tellafriendform.Browser.value = navigator.appName
	//document.tellafriendform.Platform.value = navigator.platform
	//document.tellafriendform.Version.value = navigator.appVersion
		msg = "Are you sure you want to continue?";
    if (confirm(msg))
    {
	    document.tellafriendform.submit();
    }
    else return false;	
}
//---$$
//-------%%Submit Ask our doctor form in Ayurveda page
function submitaskourdoctorForm()
{
	if(document.Askourdoctorform.Name.value == '')
	{
		alert("\"Your Name\" is required.");
		document.Askourdoctorform.Name.focus();
		return false;
	}
//-------
	if(document.Askourdoctorform.Address.value == '')
	{
		alert("\"Your Address\" is required.");
		document.Askourdoctorform.Address.focus();
		return false;
	}
//-------
	if(document.Askourdoctorform.Email.value == '')
	{
		alert("\"Your Email\" is required.");
		document.Askourdoctorform.Email.focus();
		return false;
	}
//-------	
	if(!checkEmailAddress(document.Askourdoctorform.Email.value,true,true))
	{
		//alert("Your email address is not valid");
		document.Askourdoctorform.Email.focus();
		return false;
	}
//-------	
	if(document.Askourdoctorform.Question.value == '') 
	{
		alert("\"Question\" is required.");
		document.Askourdoctorform.Question.focus();
		return false;
	}
	else if (document.Askourdoctorform.Question.value.length >250)
	{
		alert("\"Question\" size is too long, please reduce the size.");
		document.Askourdoctorform.Question.focus();
		return false;
	}
//-------	
		msg = "Are you sure you want to continue?";
        if (confirm(msg))
        {
	    document.Askourdoctorform.submit();
        }
        else return false;
	
}
//-------%%
//---**validate Main Reservation form
function SubmitReservationForm()
{
	if(document.Reservationform.customer_nametxt.value == '')
	{
		alert("\"Name\" is required.");
		document.Reservationform.customer_nametxt.focus();
		return false;
	}
//-------
	if(document.Reservationform.customer_addresstxt.value == '')
	{
		alert("\"Address\" is required.");
		document.Reservationform.customer_addresstxt.focus();
		return false;
	}
//-------	
	if(!checkEmailAddress(document.Reservationform.customer_emailtxt.value,true,true))
	{
		//alert("Your email address is not valid");
		document.Reservationform.customer_emailtxt.focus();
		return false;
	}
//-------	
	if(document.Reservationform.checkintxt.value == '')
	{
		alert("\"Check in date\" is required.");
		//document.Reservationform.checkintxt.focus();
		return false;
	}
//-------
	if(document.Reservationform.checkouttxt.value == '')
	{
		alert("\"Check out date\" is required.");
		//document.Reservationform.checkouttxt.focus();
		return false;
	}
//-------
var currentdate = new Date();
var checkindate = new Date();
var checkoutdate = new Date();

var currentdate = new Date(currentdate);
var checkindate = new Date(document.Reservationform.checkintxt.value);
var checkoutdate = new Date(document.Reservationform.checkouttxt.value);
/*alert(thisdate.getDate());
alert(thisdate.getMonth());
alert(thisdate.getYear());*/
currentdate = formatDate(currentdate,"dd/MMM/yyyy");
checkindate = formatDate(checkindate,"dd/MMM/yyyy");
checkoutdate = formatDate(checkoutdate,"dd/MMM/yyyy");
//alert(compareDates(thisdate,"dd/MM/yyyy",thisdate1,"dd/MM/yyyy"));
    if (!compareDates(currentdate,"dd/MMM/yyyy",checkindate,"dd/MMM/yyyy") == 0)
	{
		alert("\"Check in date\" should not be less than today's date.");
		document.Reservationform.checkintxt.value='';
		return false;
	}
	if (!compareDates(checkindate,"dd/MMM/yyyy",checkoutdate,"dd/MMM/yyyy") == 0)
	{
		alert("\"Check out date\" should be a date after Check in date.");
		document.Reservationform.checkouttxt.value='';
		return false;
	}
//-------
	if(document.Reservationform.roomstxt.value == '')
	{
		alert("Enter no.of rooms required");
		document.Reservationform.roomstxt.focus();
		return false;
	}
	else if(!isInteger(document.Reservationform.roomstxt.value))
	{
	alert("Please enter a numeric value at \"Rooms\" field");
	document.Reservationform.roomstxt.select();
	return false;
	}
//-------	
	if(document.Reservationform.SelectRoom.value == '') 
	{
		alert("Select a room type");
		document.Reservationform.SelectRoom.focus();
		return false;
	}
//-------	
	if(document.Reservationform.adultstxt.value == '')
	{
		alert("Enter no.of adults");
		document.Reservationform.adultstxt.focus();
		return false;
	}
	else if(!isInteger(document.Reservationform.adultstxt.value))
		{
	alert("Please enter a numeric value at \"Adults\" field");
	document.Reservationform.adultstxt.select();
	return false;
	}
//-------	
if(document.Reservationform.adultstxt.value == '')
	{
		alert("Enter no.of adults");
		document.Reservationform.adultstxt.focus();
		return false;
	}
//-------
 if (!document.Reservationform.childrenstxt.value == '')
	{
		if(!isInteger(document.Reservationform.childrenstxt.value))
	        {
	        alert("Please enter a numeric value at \"Childrens\" field");
	        document.Reservationform.childrenstxt.select();
	        return false;
	        }
	}
//-------	
	if (document.Reservationform.comments.value.length >250)
	{
		alert("\"Comments\" are too long, please reduce the size.");
		document.Reservationform.comments.focus();
		return false;
	}
	//document.Reservationform.Browser.value = navigator.appName
	//document.Reservationform.Platform.value = navigator.platform
	//document.Reservationform.Version.value = navigator.appVersion
	        msg = "Are you sure to submit the reservation?";
        if (confirm(msg))
        {
	        document.Reservationform.submit();
        }
        else return false;
}
//---**
//----&&
function EstimateAmount()
{
	if(document.Reservationform.roomstxt.value == '')
	{
		alert("Enter no.of rooms required");
		document.Reservationform.roomstxt.focus();
		return false;
	}
	else if(!isInteger(document.Reservationform.roomstxt.value))
	{
	alert("Please enter a numeric value at \"Rooms\" field");
	document.Reservationform.roomstxt.select();
	return false;
	}
//-------	
	if(document.Reservationform.SelectRoom.value == '') 
	{
		alert("Select a room type");
		document.Reservationform.SelectRoom.focus();
		return false;
	}
	//-------Find amount
  var noofdays = document.Reservationform.roomstxt.value;
  var now = new Date();
  var mnth = now.getMonth();
 	if (mnth > 3 && mnth < 9)
        {
	    if(document.Reservationform.SelectRoom.value == "Pool Villas")
	     {
	        alert('$' +(noofdays * 100) + ' Per day')
	     }
	    else if (document.Reservationform.SelectRoom.value == "Standard Rooms")
	    {
	     alert('$' + (noofdays * 70) + ' Per day')
	    }
       }
    else
    {
       if(document.Reservationform.SelectRoom.value == "Pool Villas")
	     {
	        alert('$' +(noofdays * 150) + ' Per day')
	     }
	    else if (document.Reservationform.SelectRoom.value == "Standard Rooms")
	    {
	     alert('$' + (noofdays * 100) + ' Per day')
	    }
    } 
}
//----&&
//----## Function to validate Reply form of email messages to Duke's Forest
function SubmitReplyForm()
{
if(document.EmailReplyForm.email_emailtxt.value == '')
	{
		alert("Email address is required");
		document.EmailReplyForm.email_emailtxt.focus();
		return false;
	}
if(document.EmailReplyForm.email_replytxt.value == '')
	{
		alert("Reply message is required");
		document.EmailReplyForm.email_replytxt.focus();
		return false;
	}
   msg = "Are you sure to send the reply?";
        if (confirm(msg))
        {
	        document.EmailReplyForm.submit();
        }
        else return false;
}
//----##

function checkEmailAddress(addr,man,db) {
if (addr == '' && man) 
	{
		if (db) alert('email address is mandatory');
		return false;
	}
var invalidChars = '\/\'\\ ";:?!()[]\{\}^|';
for (i=0; i<invalidChars.length; i++) {
   if (addr.indexOf(invalidChars.charAt(i),0) > -1) {
      if (db) alert('email address contains invalid characters');
      return false;
   }
}
for (i=0; i<addr.length; i++) {
   if (addr.charCodeAt(i)>127) {
      if (db) alert("email address contains non ascii characters.");
      return false;
   }
}
var atPos = addr.indexOf('@',0);
if (atPos == -1) {
   if (db) alert('email address must contain an @');
   return false;
}
if (atPos == 0) {
   if (db) alert('email address must not start with @');
   return false;
}
/*if (addr.indexOf('@', atPos + 1) > - 1) {
   if (db) alert('email address must contain only one @');
   return false;
}*/
if (addr.indexOf('.', atPos) == -1) {
   if (db) alert('email address must contain a period in the domain name');
   return false;
}
if (addr.indexOf('@.',0) != -1) {
   if (db) alert('period must not immediately follow @ in email address');
   return false;
}
if (addr.indexOf('.@',0) != -1){
   if (db) alert('period must not immediately precede @ in email address');
   return false;
}
if (addr.indexOf('..',0) != -1) {
   if (db) alert('two periods must not be adjacent in email address');
   return false;
}
var suffix = addr.substring(addr.lastIndexOf('.')+1);
if (suffix.length != 2 && suffix != 'com' && suffix != 'net' && suffix != 'org' && suffix != 'edu' && suffix != 'int' && suffix != 'mil' && suffix != 'gov' & suffix != 'arpa' && suffix != 'biz' && suffix != 'aero' && suffix != 'name' && suffix != 'coop' && suffix != 'info' && suffix != 'pro' && suffix != 'museum') {
   if (db) alert('invalid primary domain in email address');
   return false;
}
return true;
}
//Validates in input value - Permits only integer input for postal code
function funValidateNum()
			{
			
				if(event.shiftKey == false)
					{
						if ((event.keyCode >= 48 && event.keyCode <= 57 ) || (event.keyCode >= 96 && event.keyCode <= 105 ) || (event.keyCode >= 37 && event.keyCode <= 40 ) || ( event.keyCode == 110 ) || ( event.keyCode == 190) || ( event.keyCode == 8) || ( event.keyCode == 13) || ( event.keyCode == 46) || ( event.keyCode == 9)) //check for alphabets 	
						return true;
						else
						{	
							event.returnValue =0
							return false;
						}
					}
				else if(event.shiftKey == true && event.keyCode==9)
					{
						return true
					}
					else
					{
						event.returnValue =0
						return false;
					}
			}
			
//general purpose function - input value entered?
function isEmpty(iS){
   var inputStr=trimIt(iS);
   if (inputStr == null || inputStr == ""){
      //window.alert("empty " + inputStr); 
	  return true;
   } 
   //window.alert("filled " + inputStr);
   return false;
}
 // general purpose function to see if a number is
 // positive or negative
 function isInteger(inputVal){
      inputStr = inputVal.toString();
   	  for (var i=0; i<inputStr.length; i++)
	  {
	     var oneChar = inputStr.charAt(i);
	     /*if (i==0 && oneChar=="-"){
		  continue;
		  }
		 if (oneChar<"0" || oneChar>"9") 
		 {
		   return false;
		 }*/
		 if (oneChar == "0" || oneChar == "1" || oneChar == "2" || oneChar == "3" || oneChar == "4" || oneChar == "5" || oneChar == "6" || oneChar == "7" || oneChar == "8" || oneChar == "9")
		 {
		 continue;
		 }
		 else
		 {
		 return false;
		 }
	   }
	   return true;
}

function ClearReservationForm()
{
//var frmname = formname;
	//if (frmname == "ContactUs")
	//{
		document.Reservationform.reset();
		//iIndex = getRegions(document.frmFeedback.selCountry, document.frmFeedback.selRegion, "");
	//}
	//else if (frmname == "CustomerLogin")
	//{
	//document.frmCustomerLogin.reset();		
	//}
}
