﻿var ddNumberofNightsClientID = null;
var rdateEarliestClientID = null;
var rdateLatestClientID = null;
var ddDestinationClientID = null;

function UpdateNightsSelector(result) {
    var ddNumberofNights = $get(ddNumberofNightsClientID);
    

    var IndexValue = ddNumberofNights.selectedIndex;
    var SelectedVal = ddNumberofNights.options[IndexValue].value;
    //alert(SelectedVal);
    
    ddNumberofNights.innerHTML = "";
    if (result != null && result.length!=0) {
        for (var i = 0; i < result.length; i++) {
            var item = result[i];
            var newItem = document.createElement('option');
            newItem.selected = item.Value == SelectedVal;
            newItem.innerHTML = item.Text;
            newItem.value = item.Value;
            ddNumberofNights.appendChild(newItem);
        }
    }
    else
        alert("No cruises exist for these search criterias.");
}

function OnEarliestDateSelected(sender, e) {
    var rdateLatest = $find(rdateLatestClientID);
    var date = sender.get_selectedDate();
    if (date != null) {
        rdateLatest.set_minDate(date);
        date.setDate(date.getDate() + 7);
        if (date != rdateLatest.get_selectedDate())
            rdateLatest.set_selectedDate(date);
        else
            SearchFormService.GetNightRanges(sender.get_selectedDate(), date, getDestination(), UpdateNightsSelector);
    }
    else
        SearchFormService.GetNightRanges(null, rdateLatest.get_selectedDate(), getDestination(), UpdateNightsSelector);
}

function OnDestinationChanged(ddDestination) {
    var rdateEarliest = $find(rdateEarliestClientID);
    var rdateLatest = $find(rdateLatestClientID);
    SearchFormService.GetNightRanges(rdateEarliest.get_selectedDate(), rdateLatest.get_selectedDate(), ddDestination.options[ddDestination.selectedIndex].value, UpdateNightsSelector);
}

function OnLatestDateSelected(sender, e) {
    var rdateEarliest = $find(rdateEarliestClientID);
    SearchFormService.GetNightRanges(rdateEarliest.get_selectedDate(), sender.get_selectedDate(), getDestination(), UpdateNightsSelector);
}

function pageLoad() {
    if (rdateEarliestClientID) {
        var rdateEarliest = $find(rdateEarliestClientID);
        var rdateLatest = $find(rdateLatestClientID);
        if (rdateEarliest) {
            var date = rdateEarliest.get_selectedDate();
            if (date != null)
                rdateLatest.set_minDate(date);
        }
    }
}

function getDestination()
{
    var ddDestination = null;
    if (ddDestinationClientID)
        ddDestination = $get(ddDestinationClientID);
    var destination = null;
    if (ddDestination)
        destination = ddDestination.options[ddDestination.selectedIndex].value;
    return destination;
}

if (typeof (Sys) !== 'undefined')
    Sys.Application.notifyScriptLoaded();
