﻿
    /*window.onload = function(){
        setTime(document.getElementById('ctl00_BP_txtPickupDate'), 'ctl00_BP_ddlPickupTime', true);
    }*/
    

    
       function setReturnLoc(returnLoc)
   {
       setTime(document.getElementById('ctl00_BP_txtPickupDate'), 'ctl00_BP_ddlPickupTime', true);                
       document.getElementById('ctl00_BP_ddlReturnLoc').selectedIndex = returnLoc;
   }
    
    
    function setTime(sender, timeControl, pickupSelect)
    {
        var theDate = sender.value;
        
        var pickupLoc = document.getElementById('ctl00_BP_ddlPickupLoc');
        
        
        //### Public Holiday Code
        /*
        if (pickupLoc.options[pickupLoc.selectedIndex].value == 'KIN')
        {
            var PublicHols = new Array('01 Jan', '26 Jan', '06 Apr', '09 Apr', '25 Apr', '11 Jun', '01 Oct', '25 Dec', '26 Dec');        
        }
        else
        {    
            var pickupDate = document.getElementById('ctl00_BP_txtPickupDate');
            var fooDate = new Date(pickupDate.value);
            var curDate = new Date();
            
            */
            
            /*
            curDate.setDate(curDate.getDate()+2)
            if (fooDate < curDate)
            {
                window.alert('Note: This depot requires 3 days notice for online reservations. For bookings within the next 3 days please telephone the office direct.');
                pickupDate.value = '';
                
                return false;
            }
            */
            
            /*
            var PublicHols = new Array('01 Jan', '26 Jan', '05 Mar', '06 Apr', '09 Apr', '25 Apr', '04 Jun', '01 Oct', '25 Dec', '26 Dec');
        }
        for (var x=0; x < PublicHols.length; x++)
        {
            if (theDate.substring(4, 10) == PublicHols[x])
            {
                if (pickupSelect)
                {
                    window.alert('Bayswater Car Rental is not open on public holidays - please choose another pickup date.');
                }
                else
                {
                    window.alert('Bayswater Car Rental is not open on public holidays - please choose another return date.');
                }
                
                sender.value = '';
                return;
            }
        }
        
        
        PublicHols = new Array('05 Apr', '07 Apr');
        for (var x=0; x < PublicHols.length; x++)
        {
            if (theDate.substring(4, 10) == PublicHols[x])
            {
                if (pickupSelect)
                {
                    window.alert('Bayswater Car Rental is booked out for this pickup date.');
                }
                else
                {
                    window.alert('Bayswater Car Rental is booked out for this return date.');
                }
                sender.value = '';
                return;
            }
        }        
        */
        var dayArrayMed = new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');
        var pickupTime = document.getElementById(timeControl);
        pickupTime.options.length = 0;
        var listItem = document.createElement('option');
        var hourTime = new Date();
        hourTime.setMinutes(00);
        
        listItem.text = 'Select a time';
        listItem.value = '0';
        try
        {
            pickupTime.add(listItem, null);
        }
        catch(Err) //For IE.
        {
            pickupTime.add(listItem);
        }



        if (pickupLoc.options[pickupLoc.selectedIndex].value == 'KIN') {
            switch (theDate.substring(0, 3)) {
                case 'Sat':
                    hourTime.setHours(8);
                    for (var i = 0; i <= 7; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    break;
                case 'Sun':
                    hourTime.setHours(9);
                    for (var i = 0; i <= 6; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    /*Code for 30 mins
                    hourTime.setHours(hourTime.getHours() - 1);
                    hourTime.setMinutes(30);    
                    addTimeToOption(hourTime, pickupTime);                  
                    */
                    break;

                default:

                    hourTime.setHours(7);
                    for (var i = 0; i <= 11; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    break;
            }

        }
        else if (pickupLoc.options[pickupLoc.selectedIndex].value == 'PER') {
            switch (theDate.substring(0, 3)) {
                case 'Sat':
                    hourTime.setHours(8);
                    for (var i = 0; i <= 4; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    break;

                case 'Sun':
                    hourTime.setHours(9);
                    for (var i = 0; i <= 2; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    /*Code for 30 mins*/
                    hourTime.setHours(hourTime.getHours() - 1);
                    hourTime.setMinutes(30);    
                    addTimeToOption(hourTime, pickupTime);                  
                    break;

                default:
                    hourTime.setHours(8);
                    for (var i = 0; i <= 9; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    break;
            }
        }
        else {
            switch (theDate.substring(0, 3)) {
                case 'Sat':
                    hourTime.setHours(8);
                    for (var i = 0; i <= 4; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    break;

                case 'Sun':
                    window.alert('This depot is not open on Sunday');
                    sender.value = '';
                    return;
                    break;

                default:
                    hourTime.setHours(8);
                    for (var i = 0; i <= 9; i++) {
                        addTimeToOption(hourTime, pickupTime);
                        hourTime.setHours(hourTime.getHours() + 1);
                    }
                    break;
            }
        }
        
        /*
        switch (theDate.substring(0,3))
        {
            case 'Sat':
            hourTime.setHours(8);
            for (var i = 0; i <=4; i++)
            {
                addTimeToOption(hourTime, pickupTime);
                hourTime.setHours(hourTime.getHours() + 1);
            }
            break;
            case 'Sun':
                if (pickupLoc.options[pickupLoc.selectedIndex].value == 'FRE' ||
                pickupLoc.options[pickupLoc.selectedIndex].value == 'SUB' ||
                pickupLoc.options[pickupLoc.selectedIndex].value == 'BAY')
                {
                    window.alert('This depot is not open on Sunday');
                    sender.value = '';
                    return;
                }
                
            hourTime.setHours(9);
            
            for (var i = 0; i <=2; i++)
            {
                addTimeToOption(hourTime, pickupTime);
                hourTime.setHours(hourTime.getHours() + 1);
            }
                hourTime.setHours(hourTime.getHours() - 1);
                hourTime.setMinutes(30);    
                addTimeToOption(hourTime, pickupTime);                  
            break;
            
            default :
            if (pickupLoc.options[pickupLoc.selectedIndex].value == 'KIN')
            {
                hourTime.setHours(7);
                for (var i = 0; i <=11; i++)
                {
                    addTimeToOption(hourTime, pickupTime);
                    hourTime.setHours(hourTime.getHours() + 1);
                }   
            }
            else
            {
                hourTime.setHours(8);
                for (var i = 0; i <=10; i++)
                {
                    addTimeToOption(hourTime, pickupTime);
                    hourTime.setHours(hourTime.getHours() + 1);
                }   
            }
         
            break;
        }
        */
        if (pickupSelect)
        {
            var returnDate = document.getElementById('ctl00_BP_txtReturnDate');
            //Messy date reformating.
            var fooDate = new Date(Date.parse(theDate));
            fooDate.setDate(fooDate.getDate()+7);
            
            returnDate.value = fooDate.toDateString().substring(0,3) + ' ';
            
            if (fooDate.toString().substring(9,10) == ' ')
            {
                returnDate.value += '0';
                returnDate.value += fooDate.toString().substring(8,9);
                returnDate.value += ' ' + fooDate.toDateString().substring(4,7) + ' ' + fooDate.toDateString().substring(10,15);
            }
            else
            {    
                returnDate.value += fooDate.toString().substring(8,10);
                returnDate.value += ' ' + fooDate.toDateString().substring(4,7) + ' ' + fooDate.toDateString().substring(11,16);
            }
            setTime(returnDate, 'ctl00_BP_ddlReturnTime', false);
        }
        setReturnTime()   
    }
    
    
    function addTimeToOption(hourTime, pickupTime)
    {
        var listItem = document.createElement('option');
        var minutes;
        if (hourTime.getMinutes() == '0')
        {
            minutes = '00';
        }
        else
        {
            minutes = hourTime.getMinutes();
        }
        if (hourTime.getHours() < 12)  
        {
            listItem.text = hourTime.getHours() + ':' + minutes + " am";
            
        }
        else
        {
            listItem.text = hourTime.getHours() -12 + ':' + minutes + " pm";
            if (listItem.text == '0:' + minutes + ' pm')
            {
                listItem.text = '12:' + minutes + ' pm';
            }
            
        }
        listItem.value = hourTime.getHours() + ':' + minutes;
        if (listItem.value.length == 4)
        {
            listItem.value = "0" + listItem.value;
        }
        
        try
        {
            pickupTime.add(listItem, null);
        }
        catch(Err) //For IE.
        {
            pickupTime.add(listItem);
        }
        
    }
    /*
    function confirmDOB(sender)
    {
        var strDOB = sender.value.substring(3,6) + sender.value.substring(0,3) + sender.value.substring(6,10);
        var DOB = new Date(strDOB)
        var eYear = new Date();
        var yYear = new Date();
        eYear.setFullYear(eYear.getFullYear() - 79);
        yYear.setFullYear(yYear.getFullYear() - 21);
        if (DOB.getFullYear() < eYear.getFullYear() || DOB.getFullYear() > yYear.getFullYear())
        {
            window.alert('Sorry, Bayswater car rental do not rent cars to drivers within your age bracket');
            sender.value = '';
        }
    }
   */
   function setReturnTime()
   {
        var returnTime = document.getElementById('ctl00_BP_ddlReturnTime');
        var pickupTime = document.getElementById('ctl00_BP_ddlPickupTime');
        try
        {
            returnTime.value = pickupTime.value;
            
            if (returnTime.value != pickupTime.value) {
                if (pickupTime.selectedIndex > 4) {
                    returnTime.selectedIndex = returnTime.length -1;
                }
                else {
                    returnTime.selectedIndex = 1;
                }
            }
            
        }
        catch(Err)
        {
            returnTime.selectedIndex = 1;
        }
   }
   

   
   function validateDates(sender, args)
   {
    var pickupDate = document.getElementById('ctl00_BP_txtPickupDate');
    var returnDate = document.getElementById('ctl00_BP_txtReturnDate');
    
    var fooDate = new Date(pickupDate.value);
    var barDate = new Date(returnDate.value);
    if (fooDate > barDate)
    {
        window.alert('Return date cannot be before pickup date.');
        returnDate.value = '';
        return false;
    }
    
    fooDate.setDate(fooDate.getDate() + 3);
    if (fooDate > barDate)
    {
        window.alert('Minimum online booking is for 3 days.');
        returnDate.value = '';
        return false;
    }
    

    
   }
   
   //## Realigning formnames.
   function fixFormNames()
   {
    var pickupDate = document.getElementById('ctl00_BP_txtPickupDate');
    var returnDate = document.getElementById('ctl00_BP_txtReturnDate');
    
    
    document.getElementById('pickup_loc').value = document.getElementById('ctl00_BP_ddlPickupLoc').options[document.getElementById('ctl00_BP_ddlPickupLoc').selectedIndex].value;
    document.getElementById('return_loc').value =  document.getElementById('pickup_loc').value; 
    
    
    var PcurDate = new Date(Date.parse(pickupDate.value));
    document.getElementById('pickup_day').value = pickupDate.value.substring(4,6); 
    if (parseInt(PcurDate.getMonth()+1) < 10)
    {
        document.getElementById('pickup_month').value = "0"
        document.getElementById('pickup_month').value += eval(PcurDate.getMonth()+ 1);
    }
    else
    {
        document.getElementById('pickup_month').value = eval(PcurDate.getMonth()+ 1);
    }
    document.getElementById('pickup_year').value = pickupDate.value.substring(11,16);
    document.getElementById('pickup_time').value = document.getElementById('ctl00_BP_ddlPickupTime').value;
   
    
    var RcurDate = new Date(Date.parse(returnDate.value));
    document.getElementById('return_day').value = returnDate.value.substring(4,6);   
    
    if (parseInt(RcurDate.getMonth()+1) < 10)
    {
        document.getElementById('return_month').value = "0";
        document.getElementById('return_month').value += eval(RcurDate.getMonth()+ 1);
    }
    else
    {
        document.getElementById('return_month').value = eval(RcurDate.getMonth()+ 1);
    }
    document.getElementById('return_year').value = returnDate.value.substring(11,16);
    document.getElementById('return_time').value = document.getElementById('ctl00_BP_ddlReturnTime').value;
    
    if (document.getElementById('ctl00_BP_rbnAgeRange_0').checked)
    {
        document.getElementById('renter_age_range').value = document.getElementById('ctl00_BP_rbnAgeRange_0').value;    
    }
    else
    {
        document.getElementById('renter_age_range').value = document.getElementById('ctl00_BP_rbnAgeRange_1').value;
    }

    if (document.getElementById('ctl00_BP_rbnLicenseType_0').checked) {
        //document.getElementById('corp_rate_id').value = document.getElementById('ctl00_BP_rbnLicenseType_0').value;
        document.getElementById('corp_rate_id').value = "";
    }
    else {
        document.getElementById('corp_rate_id').value = document.getElementById('ctl00_BP_rbnLicenseType_1').value;
    }

    
    var formObj = document.getElementById('aspnetForm');

    if (document.getElementById('pickup_loc').value == "KIN") {
        formObj.action = "https://secure.carsplus.com.au/webres/bayswater/res2.html"
    }
    else {
        formObj.action = "https://secure.carsplus.com.au/webres/bayswaterwa/res2.html"
    }
    
    
    __utmLinkPost(formObj);
        
    /*
    var DOB = document.getElementById('txtDOB').value;
    var strDOB = DOB.substring(3,6) + DOB.substring(0,3) + DOB.substring(6,10);
    var DOB = new Date(strDOB);
    var strDOB = DOB.getFullYear().toString() + '-';
    if (DOB.getMonth() < 10)
    {
        strDOB += '0';
    }
    strDOB += (DOB.getMonth() + 1);
    strDOB += '-';
    if (DOB.getDate() <10)
    {
        strDOB += '0';
    }
    strDOB += DOB.getDate().toString();
    
    document.getElementById('renter_bdate').value = strDOB;
    */

   }

