﻿//Global variable declaration
var urlPath = "http://skywaytour/";	//Used to redirect to different script files

//Add new trim function to string class
String.prototype.trim = function()
{
  return this.replace(/^\s+|\s+$/g,'');
}

//Function checkMail to validate for valid email address
function checkMail(Element)
{
   apos    = Element.value.indexOf("@"); 
  dotpos  = Element.value.lastIndexOf(".");
  lastpos = Element.value.length-1;
  
  if(apos<1 || dotpos-apos<2 || lastpos-dotpos>3 || lastpos-dotpos<2)
  {
    alert("Enter valid mail");
    Element.focus();
    return false;
  }	
  return true;	
}
//Contact us form functions starts here
function cont_onsubmit_contactus() 
{
 var frm = document.cont;
 if(frm.name1.value.trim() == "")
 {
  alert("Please enter name")
  frm.name1.value = "";
  frm.name1.focus();
  return false;
 }
 if(frm.addr.value.trim() == "")
 {
  alert("Please enter address")
  frm.addr.value = "";
  frm.addr.focus();
  return false;
 } 
 if(frm.city.value.trim() == "")
 {
  alert("Please enter city")
  frm.city.value = "";
  frm.city.focus();
  return false;
 }
 if(frm.state.value.trim() == "")
 {
  alert("Please enter state")
  frm.state.value = "";
  frm.state.focus();
  return false;
 }  
 if(frm.phone.value.trim() == "")
 {
  alert("Please enter phone number")
  frm.phone.value = "";
  frm.phone.focus();
  return false;
 } 
 return true; 
}
//Contact us form functions ends here

//Function validateReser to validate reservations form
   
  function validateName (element)
  {
    if(element.value.trim() == "")
    {
      alert("Please enter your name.");
      element.value = "";
      element.focus();
      return false;
    }  
    return true;  
  }
   
   
   
    function validateaddress(element)
   {
    if(element.value.trim() == "")
    {
      alert("Please enter Address.");
      element.value = "";
      element.focus();
      return false;
    }
    return true;
    }
    
    function validateLocality(element)
    {
        if(element.value.trim() == "")
        {
          alert("Please enter locality  name.");
          element.value = "";
          element.focus();
          return false;
        }   
       return true; 
    }    
  
   function Validateservice(element1,element2)
   {
       /* if(element1.value.trim() == "" && element2.value.trim()=="")
        {
          alert("Please select sevice.");
          //element.value = "";
          element1.focus();
          return false;
        }  */
        return true;
    }  
    
    function validateDrop(element)
    {
        if(element.value.trim() == "None")
        {
          alert("Please select Pickup/Drop.");
          
          element.focus();
          return false;
        } 
        return true     
     }   
    
    function validateDate(element1,element2,element3)
    {
      var cdate1= new Date();
      
      var cdate=new Date(cdate1.getFullYear(),cdate1.getMonth (),cdate1.getDate (),00,00);
      var vdate= new Date(ReturnDateFromString (element1.value + "-"+element2.value+"-"+element3.value)); 
      var cmin = cdate.getMinutes() ;
     
      var vmin=vdate.getMinutes();       
        if(element1.value =="Day" || element2.value.trim()=="Month" || element3.value=="Year" )
        {
          alert("Please select a date");
          
          element1.focus();
          
          return false;
        } 
       else if(checkDate (element1,element2,element3)==false)
       {
        alert ("Invalid Date");
        return false;
       }
       else if(vdate<cdate ==true)
       {
        alert("Date cannot be less today's date");
        return false
       }
                      
        
        return true;
     }  
     
     function validateTime(Delement1,Delement2,Delement3,Telement1,Telement2)
     {
        var tempdate= new Date ();
        var hrs=tempdate.getHours ()+4;
        var min=tempdate.getMinutes ();
        var maxdate=new Date (tempdate.getFullYear (),tempdate.getMonth (),tempdate.getDate (),hrs,min); 
        
        var vdate= ReturnDateFromString (Delement1.value + "-"+Delement2.value+"-"+Delement3.value);
      
        
        var bhrs= eval(Telement1.value);
        var bmin=eval(Telement2.value);
        
        var bookdate=new Date (vdate.getFullYear (),vdate.getMonth (),vdate.getDate (),bhrs,bmin);
        
        var dtime= (bookdate.getTime()-maxdate.getTime());
        if (dtime<0)
        {
             alert("Booking time should to Greater than or Equal to 4 hours from the time of booking");
             return false;
         }
         
         return true;
     }
       
   

//Function to redirect to http://www.skywaytour.com
function redirect(id)
{
  window.location = "http://www.skywaytour.com";
}

//Rent a car form functions starts here 

//Function to change the car name in dropdownlist box when the user clicks on car image
function changecar(carid,comboid)
{
  document.getElementById(comboid).setAttribute("selectedIndex",carid);
  document.getElementById("carSel").style.background = "#739ACE";
  window.scroll(100,415);		
  
  if(carid=='3' || carid=='4')
  {
    document.getElementById("non-ac").style.visibility = "hidden"
  }
  else
  {
    document.getElementById("non-ac").style.visibility = "visible"
  }
}

//Function to set A/C or Non A/C depending upon the car selected by user
function changeac(comboid)
{	
  document.getElementById("carSel").style.background = "#EFF3FF";		
	
  if(comboid=='3' || comboid=='4')
  {
	document.getElementById("non-ac").style.visibility = "hidden"
  }
  else
  {
    document.getElementById("non-ac").style.visibility = "visible"
  }
}	

//Function is called on window onload
function window_onload_car() 
{
  document.cont.name.focus();
}

//Function to format the date as dd/mm/yyyy
function FormatDate(dt)
{
	var str   = dt.split('-');	
	var month = 0;
	var mon	  = String();
	mon		  = str[1];
	mon		  = mon.toUpperCase();
	
	switch(mon)
	{
		case 'JAN':
				month=0;
				break;
		case 'FEB':
				month=1;
				break;
		case 'MAR':
				month=2;
				break;
		case 'APR':
				month=3;
				break;
		case 'MAY':
				month=4;
				break;
		case 'JUN':
				month=5;
				break;
		case 'JUL':
				month=6;
				break;
		case 'AUG':
				month=7;
				break;
		case 'SEP':
				month=8;
				break;
		case 'OCT':
				month=9;
				break;
		case 'NOV':
				month=10;
				break;
		case 'DEC':
				month=11;
				break;
	}
		
	var tempDat = str[0] + "/" + (month + 1) + "/" + str[2];
	return tempDat;
};

//Function to convert the date from one format to another
function ReturnDateFromString(cdt)
{
	var str   = cdt.split('/');	
	var month = 0;
	var mon	  = String();
	mon		  = str[1];
	mon		  = mon.toUpperCase();		
	
	switch(mon)
	{
		case 'JAN':
				month=0;
				break;
		case 'FEB':
				month=1;
				break;
		case 'MAR':
				month=2;
				break;
		case 'APR':
				month=3;
				break;
		case 'MAY':
				month=4;
				break;
		case 'JUN':
				month=5;
				break;
		case 'JUL':
				month=6;
				break;
		case 'AUG':
				month=7;
				break;
		case 'SEP':
				month=8;
				break;
		case 'OCT':
				month=9;
				break;
		case 'NOV':
				month=10;
				break;
		case 'DEC':
				month=11;
				break;
	}
		
	var tempDat = new Date(str[2],month,str[0]);
	return tempDat;
};	



function checkDate(element1,element2,element3)
{
 
    var myDayStr = element1.value;
    var myMonthStr = element2.value;
    var myYearStr = eval( element3.value);
    var myMonth = new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
    var myDateStr=ReturnDateFromString (myDayStr+"/"+myMonthStr+"/"+myYearStr );
    

/* Using form values, create a new date object
using the setFullYear function */
var myDate = new Date(myDateStr);

myDate.setFullYear( myYearStr, myDate.getMonth (), myDayStr );

if ( myMonth [myDate.getMonth()] != myMonthStr ) 
{
  return false;
} else 
{
  return true;
}
 
}
 
//Hotel reservation form functions starts here
function cont_onsubmit_hotel() 
{
 var frm = document.cont;
 if(frm.name.value.trim() == "")
 {
  alert("Please enter name")
  frm.name.value = "";
  frm.name.focus();
  return false;
 }
 if(frm.addr.value.trim() == "")
 {
  alert("Please enter address")
  frm.addr.value = "";
  frm.addr.focus();
  return false;
 } 
 if(frm.phone.value.trim() == "")
 {
  alert("Please enter phone number")
  frm.phone.value = "";
  frm.phone.focus();
  return false;
 }
 if(frm.Cell.value.trim() == "")
 {
  alert("Please enter cell number")
  frm.Cell.value = "";
  frm.Cell.focus();
  return false;
 }   
 if(frm.email.value.trim() == "")
 {
  alert("Please enter email")
  frm.email.value = "";
  frm.email.focus();
  return false;
 }
 if(frm.email.value.trim() != "")
 {
  if(checkMail(frm.email) != true)  
   return false;
 }
 if(frm.place.value.trim() == "")
 {
  alert("Please enter place")
  frm.place.value = "";
  frm.place.focus();
  return false;
 } 
 
 /*
if(frm.checkInDate.value.trim() && frm.checkOutDate.value.trim())
{
  firstDat = ReturnDateFromString(frm.checkInDate.value);
  secDat   = ReturnDateFromString(frm.checkOutDate.value);  
  
  if(validate(firstDat,secDat))
    return true;
  else  
    return false;  
}
*/

 firstDat = ReturnDateFromString(frm.checkInDate.value);
 secDat	  = ReturnDateFromString(frm.checkOutDate.value);
			
 if((secDat - firstDat) == 0)
 { 
   alert("Check in date & Check out date can't be same.");
   return false;
 }
 
 if((secDat - firstDat) < 0)
 { 
   alert("Check in date must occur before Check out date.");
   return false;   
 }

 if(frm.noRooms.value.trim() == "")
 {
  alert("Please enter number of rooms")
  frm.noRooms.value = "";
  frm.noRooms.focus();
  return false;
 } 
 if(frm.noAdults.value.trim() == "")
 {
  alert("Please enter number of adults")
  frm.noAdults.value = "";
  frm.noAdults.focus();
  return false;
 } 
 /*
 if(frm.extBed.value.trim() == "")
 {
  alert("Please enter value for extra bed")
  frm.extBed.value = "";
  frm.extBed.focus();
  return false;
 }  
 if(frm.children.value.trim() == "")
 {
  alert("Please enter children")
  frm.children.value = "";
  frm.children.focus();
  return false;
 } 
 */  
 return true; 
}


