﻿window.scrollTo = function(){}
// Search Validation Javascript file
function ValidateCheckInDate_ClientValidate(source, args)
{
    if (args.Value != "")
    {
        var checkInDate;        
        //Check In Date
        if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AccommodationControl_txtCheckInDate"))        
          checkInDate = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AccommodationControl_txtCheckInDate").value;        

        if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AccommodationControl_AccommodationSearchCustomDropDownControl_txtCheckInDate"))        
          checkInDate = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AccommodationControl_AccommodationSearchCustomDropDownControl_txtCheckInDate").value;        
        
        if(document.getElementById("SearchControl01_AccommodationControl_AccommodationSearchCustomDropDownControl_txtCheckInDate"))        
          checkInDate = document.getElementById("SearchControl01_AccommodationControl_AccommodationSearchCustomDropDownControl_txtCheckInDate").value;        

        var curCheckInDateArray = checkInDate.split("/");      
        //Create Current checkIn Date
        var curCheckInDate = new Date();
            curCheckInDate.setDate(curCheckInDateArray[0]); 
            //Removed 1 month as Javascript sees months from 0-11 NOT 1-12
            curCheckInDate.setMonth(curCheckInDateArray[1]-1);
            curCheckInDate.setYear(curCheckInDateArray[2]);        
        var futureCheckInDate = new Date();
        //Add 1 day
        futureCheckInDate.setDate(futureCheckInDate.getDate()+1);        
        if(curCheckInDate < futureCheckInDate)        
            args.IsValid = false;        
        else        
            args.IsValid = true;        
    }
    else
        args.IsValid = false;    
}


function ValidateDepDate_ClientValidate(source, args)    
{    
    if (args.Value != "")
    {
        var checkInDate = args.Value;              
       
       if(checkInDate != "")
       {
            var curCheckInDateArray = checkInDate.split("/");      
            //Create Current checkIn Date
            var curCheckInDate = new Date();
                curCheckInDate.setDate(curCheckInDateArray[0]); 
                //Removed 1 month as Javascript sees months from 0-11 NOT 1-12
                curCheckInDate.setMonth(curCheckInDateArray[1]-1);
                curCheckInDate.setYear(curCheckInDateArray[2]);        
            var futureCheckInDate = new Date();
            //Add 1 day
            futureCheckInDate.setDate(futureCheckInDate.getDate()+1);        
            if(curCheckInDate < futureCheckInDate)        
                args.IsValid = false;        
            else        
                args.IsValid = true;   
        }     
        else
        {    
            args.IsValid = false; 
        }
    }
    else
        args.IsValid = false;    
}

function ValidateDepDatePackageSearch_ClientValidate(source, args)
{
    if (args.Value != "")
    {
        var checkInDate;        
        //Check In Date
        if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_PackagesControl_txtDepDate"))        
        {
          checkInDate = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_PackagesControl_txtDepDate").value;  
        }        

       
        var curCheckInDateArray = checkInDate.split("/");      
        //Create Current checkIn Date
        var curCheckInDate = new Date();
            curCheckInDate.setDate(curCheckInDateArray[0]); 
            //Removed 1 month as Javascript sees months from 0-11 NOT 1-12
            curCheckInDate.setMonth(curCheckInDateArray[1]-1);
            curCheckInDate.setYear(curCheckInDateArray[2]);        
        var futureCheckInDate = new Date();
        //Add 1 day
        futureCheckInDate.setDate(futureCheckInDate.getDate()+1);        
        if(curCheckInDate < futureCheckInDate)        
            args.IsValid = false;        
        else        
            args.IsValid = true;        
    }
    else
        args.IsValid = false;    
}


function ValidatePassengers_ClientValidate(source, args)
{
    var adults;
    var children;
    var infants;    
    var rooms = 1;    
    var totalPax;
    var id;
    //Flights
    if(document.getElementById("SearchControl01_radFlights"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radFlights"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    if(document.getElementById(id + "_radFlights").checked)
    {
        //adults
        if(document.getElementById(id + "_FlightsControl_ddlFlightAdults"))
        {        
            adults = document.getElementById(id + "_FlightsControl_ddlFlightAdults").value;
        }
        else
        {
            adults = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightAdults").value;
        }        
        //children
        if(document.getElementById(id + "_FlightsControl_ddlFlightChildren"))
        {
            children = document.getElementById(id + "_FlightsControl_ddlFlightChildren").value;
        }
        else
        {
           children = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightChildren").value; 
        }        
        //infants
        if(document.getElementById(id + "_FlightsControl_ddlFlightInfants"))
        {        
            infants = document.getElementById(id + "_FlightsControl_ddlFlightInfants").value;
        }
        else
        {
            infants = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightInfants").value;
        }        
    }
    //Accommodation 
    if(document.getElementById("SearchControl01_radAccom"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radAccom"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    
    if(document.getElementById(id + "_radAccom").checked)
    {
        var adults = 0;
        var children = 0;
        var infants = 0;
        var numRooms = document.getElementById(id + "_AccommodationControl_ddlRooms").value;
        for(roomNumber = 1; roomNumber <= numRooms; roomNumber++)
        {
            adults = adults + parseInt(document.getElementById(id + "_AccommodationControl_ddlAccomAdultsRoom" + roomNumber).value);
            children = children + parseInt(document.getElementById(id + "_AccommodationControl_ddlAccomChildrenRoom" + roomNumber).value);
            infants = infants + parseInt(document.getElementById(id + "_AccommodationControl_ddlAccomInfantsRoom" + roomNumber).value);
        }
    }
    //Packages
    if(document.getElementById("SearchControl01_radPackages"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radPackages"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    if(document.getElementById(id + "_radPackages").checked)
    {
        var adults = 0;
        var children = 0;
        var infants = 0;
        if(document.getElementById(id + "_PackagesControl_ddlRooms"))
        {
            var numRooms = document.getElementById(id + "_PackagesControl_ddlRooms").value;
            for(roomNumber = 1; roomNumber <= numRooms; roomNumber++)
            {       
                adults = adults + parseInt(document.getElementById(id + "_PackagesControl_ddlPackagesAdultsRoom" + roomNumber).value);
                children = children + parseInt(document.getElementById(id + "_PackagesControl_ddlPackagesChildrenRoom" + roomNumber).value);
                infants = infants + parseInt(document.getElementById(id + "_PackagesControl_ddlPackagesInfantsRoom" + roomNumber).value);
            }
        }
        else
        {
            var numRooms = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlRooms").value;
            for(roomNumber = 1; roomNumber <= numRooms; roomNumber++)
            {       
                adults = adults + parseInt(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlPackagesAdultsRoom" + roomNumber).value);
                children = children + parseInt(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlPackagesChildrenRoom" + roomNumber).value);
                infants = infants + parseInt(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlPackagesInfantsRoom" + roomNumber).value);
            }
        }
    }
    totalPax = parseInt(adults) + parseInt(children) + parseInt(infants);   
    if(totalPax > 9)
    {    
        args.IsValid = false;
    }
    else
    {
        args.IsValid = true;
    }
}
function ValidatateChildAges_Packages(source, args)
{
    var id = "";
    if(document.getElementById("SearchControl01_radPackages"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radPackages"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    if(document.getElementById(id + "_PackagesControl_ddlRooms"))
    {
        var numRooms = document.getElementById(id + "_PackagesControl_ddlRooms").value;
        var valid = true;
        
        //Iterate through rooms
        for(i = 1; i <= numRooms; i++)
        {
            var numChildren = document.getElementById(id + "_PackagesControl_ddlPackagesChildrenRoom" + i).value;
            //Iterate through children
            for(j = 1; j <= numChildren; j++)
            {
                if(document.getElementById(id + "_PackagesControl_room" + i + "_child" + j + "_cell").value == 0)
                    valid = false;            
            }
        }
    }
    else
    {
        var numRooms = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlRooms").value;
        var valid = true;
        
        //Iterate through rooms
        for(i = 1; i <= numRooms; i++)
        {
            var numChildren = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlPackagesChildrenRoom" + i).value;
            //Iterate through children
            for(j = 1; j <= numChildren; j++)
            {
                if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_room" + i + "_child" + j + "_cell").value == 0)
                    valid = false;            
            }
        }
    }
    args.IsValid = valid;
}

function ValidatateChildAges_Accom(source, args)
{  
    var id = "";
    if(document.getElementById("SearchControl01_radAccom"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radAccom"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    var numRooms = document.getElementById(id + "_AccommodationControl_ddlRooms").value;
    var valid = true;
    
    //Iterate through rooms
    for(i = 1; i <= numRooms; i++)
    {
          var numChildren = document.getElementById(id + "_AccommodationControl_ddlAccomChildrenRoom" + i).value;
        //Iterate through children
        for(j = 1; j <= numChildren; j++)
        {
            if(document.getElementById(id + "_AccommodationControl_room" + i + "_child" + j + "_cell").value == 0)
                valid = false;            
        }
    }
    args.IsValid = valid;
}

function ValidateChildAges_Flight(source, args)
{
    var id = "";    
    if(document.getElementById("SearchControl01_radFlights"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radFlights"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    if(document.getElementById(id + "_FlightsControl_ddlFlightChildren"))
    {
        var numChildren = document.getElementById(id + "_FlightsControl_ddlFlightChildren").value;
        var valid = true;
        
        for(i = 1; i <= numChildren; i++)
        {
            if(document.getElementById(id + "_FlightsControl_child" + i + "_cell").value == 0)
                valid = false;        
        }
    }
    else
    {
        var numChildren = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightChildren").value;
        var valid = true;
        
        for(i = 1; i <= numChildren; i++)
        {
            if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_child" + i + "_cell").value == 0)
                valid = false;        
        }
    }
    args.IsValid = valid;
}

function ValidateAdultsAgainstInfants_ClientValidate(source, args)
{
    var adults = parseInt(0);
    var infants = parseInt(0);
    var totalPax;
    var id = "";    
    //Flights
    if(document.getElementById("SearchControl01_radFlights"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radFlights"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    if(document.getElementById(id + "_radFlights").checked)
    {
        if(document.getElementById(id + "_FlightsControl_ddlFlightInfants"))
        {
            //adults
            if(document.getElementById(id + "_FlightsControl_ddlFlightAdults") && document.getElementById(id + "_radFlights").checked)
                adults = parseInt(document.getElementById(id + "_FlightsControl_ddlFlightAdults").value);        
            //infants
            if(document.getElementById(id + "_FlightsControl_ddlFlightInfants") && document.getElementById(id + "_radFlights").checked)
                infants = parseInt(document.getElementById(id + "_FlightsControl_ddlFlightInfants").value);
        }
        else
        {
            //adults
            if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightAdults") && document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radFlights").checked)
                parseInt(adults = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightAdults").value);        
            //infants
            if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightInfants") && document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radFlights").checked)
                infants = parseInt(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliateFlightsControl_ddlFlightInfants").value);
        }       
    }
    //Accommodation
    //if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radAccom").checked)
    //{
        // removed for now as there is nothing wrong with having more infants than adults with accom only
    //}       
    //Packages
    if(document.getElementById("SearchControl01_radPackages"))
    {
        id = "SearchControl01";
    }
    else if(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_radPackages"))
    {
        id = "ctl00_ContentPlaceHolder_ctl00_SearchControl01";
    }
    if(document.getElementById(id + "_radPackages").checked)
    {
        if(document.getElementById(id + "_PackagesControl_ddlRooms"))
        {
            var numRooms = document.getElementById(id + "_PackagesControl_ddlRooms").value;
            for(roomNumber = 1; roomNumber <= numRooms; roomNumber++)
            {
                adults = adults + parseInt(document.getElementById(id + "_PackagesControl_ddlPackagesAdultsRoom" + roomNumber).value);            
                infants = infants + parseInt(document.getElementById(id + "_PackagesControl_ddlPackagesInfantsRoom" + roomNumber).value);
            }
        }
        else
        {
            var numRooms = document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlRooms").value;
            for(roomNumber = 1; roomNumber <= numRooms; roomNumber++)
            {
                adults = adults + parseInt(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlPackagesAdultsRoom" + roomNumber).value);            
                infants = infants + parseInt(document.getElementById("ctl00_ContentPlaceHolder_ctl00_SearchControl01_AffiliatePackagesControl_ddlPackagesInfantsRoom" + roomNumber).value);
            } 
        }
    }
    
    if(adults < infants)
        args.IsValid = false;    
}
