﻿//GET URL
function getUrl(date)
    {    
    var strURL = "Availability.aspx?id=" + this.$('#hid').val() + "&arrival=" + date + "&cur=" + this.$('.ddlcurrency').val();
    this.window.location = strURL;                
    }
    
//SET CURRENCY
function setCurrency(currency)
    {    
    switch (currency) 
        {
        case 'AUD': 
            this.$('.money').text("Australian Dollars"); 
            break;
        case 'EUR': 
            this.$('.money').text("Euros"); 
            break;
        case 'GBP': 
            this.$('.money').text("British Pounds"); 
            break;
        case 'USD': 
            this.$('.money').text("United States Dollars"); 
            break;
        case 'CAD': 
            this.$('.money').text("Canadian Dollars"); 
            break;
        case 'INR': 
            this.$('.money').text("Indian Rupees"); 
            break;
        case 'CNY': 
            this.$('.money').text("Chinese Yuan"); 
            break;
        case 'JPY': 
            this.$('.money').text("Japanese Yen"); 
            break;
        case 'NZD': 
            this.$('.money').text("New Zealand Dollars"); 
            break;
        default: 
            currency = 'AUD'; 
            break;
        } 
    this.$('#ddlcurrency').val(currency); 
    this.$('#icon').attr({src: "../repository/icons/flag/" + currency + ".png",title: "Currency: " + currency,alt: "Currency: " + currency});              
    } 
    
//CREATE DATE
function createDate(daysToAdd)
    {
    var start = this.$('.txtStart').val();
    var now = this.$('#tod').val();
        
    if (start === "")
        {
        start = now;
        }
    else
        {
        var dayfield=start.split("/")[0];
        var monthfield=start.split("/")[1];
        var yearfield=start.split("/")[2];        
        var datePassed = new Date(yearfield, monthfield-1, dayfield);
        datePassed.setDate(datePassed.getDate() + daysToAdd);
        
        dayfield=now.split("/")[0];
        monthfield=now.split("/")[1];
        yearfield=now.split("/")[2] ;   
        var today = new Date(yearfield, monthfield-1, dayfield);
        var eoy = new Date();
        eoy.setDate(eoy.getDate() + 351);

        //Check if date has passed
        if (datePassed < today)
            {
            start = today;
            }
        else
            {
            start = datePassed.getDate() + "/" + (datePassed.getMonth() + 1) + "/" + datePassed.getFullYear();
            } 
            
        //Check if date is too far ahead
        if(datePassed > eoy)
            {
            start = eoy.getDate() + "/" + (eoy.getMonth() + 1) + "/" + eoy.getFullYear();
            }
        else
            {
            start = datePassed.getDate() + "/" + (datePassed.getMonth() + 1) + "/" + datePassed.getFullYear();
            }    
        return start;  
        }             
    }

//GET RATES
function getRates() //used for both currency change and date change
    {
    setCurrency(this.$('.ddlcurrency').val());    
    getUrl(createDate(0));  
    }

//HIDE OR SHOW BUTTONS       
function showButtons()
    {
    //Convert txtStart to date
    var txtStart = this.$('.txtStart').val();    
    var dayfield=txtStart.split("/")[0];
    var monthfield=txtStart.split("/")[1];
    var yearfield=txtStart.split("/")[2] ;       
    var dateStart = new Date(yearfield, monthfield-1, dayfield);
    
    //Convert server(today) to date
    var today = this.$('#tod').val();    
    dayfield=today.split("/")[0];
    monthfield=today.split("/")[1];
    yearfield=today.split("/")[2];   
    var dateToday = new Date(yearfield, monthfield-1, dayfield);
    
    //Get end of year using server(today)
    var dateEOY = new Date();
    dateEOY.setDate(dateToday.getDate() + 350);   

    //Show/Hide buttons
    if( dateStart <= dateToday) { this.$('.prev').hide(); }
    if( dateStart >= dateEOY) { this.$('.next').hide(); }          
    }
        
//PAGE SETUP
function pageSetup()
    {        
    try
        {
        var start = this.document.getElementById("txtStart"); 
        start.setAttribute("autocomplete","off");
        this.$(".txtStart").datepicker({dateFormat: 'dd/mm/yy',minDate: 0, maxDate: '+11m +2w +2d'});
        //SHOULD NOT BE SECURE 
        var currentURL=location.href.substring(0,5)            
        if(currentURL.toLowerCase()==="https")
            {
            var oldURL = this.window.location.hostname + this.window.location.pathname;
            var newURL = "http://" + oldURL;
            window.location = newURL;
            }
        }
    catch(err)
        {
        this.window.alert(err);
        }         
    this.$('#ddlcurrency').change(function() { getRates(); });
    this.$('#txtStart').change(function() { getRates(); });    
    setCurrency(this.$('#cur').val());
    showButtons();
    }
    
//PAGELOAD        
this.$(this.document).ready(function() 
    {
    try
        {
        pageSetup();
        }
    catch(err)
        {
        this.window.alert(err);
        }
    });   
     
//NEXT BUTTON    
function getNext()
    {   
    getUrl(createDate(7));    
    } 
//PREV BUTTON
function getPrev()
    {
    getUrl(createDate(-7));    
    }


