﻿var newLocation = "";
var ArchiveDates = null;
function Calendar_OnDateClick(calendarInstance, args) {
    checkDatesList();
    var currentSelectedDate = args.get_renderDay().get_date();
    var year = currentSelectedDate[0];
    var month = currentSelectedDate[1];
    var day = currentSelectedDate[2];
    var compareDate = month + "/" + day + "/" + year;

    for (var i = 0; i < ArchiveDates.length; i++) {
        var ArchiveSelectedDate = new Date(ArchiveDates[i])
        var finalComparedate = new Date(compareDate);
        if (finalComparedate.toDateString() == ArchiveSelectedDate.toDateString()) {
            selectNews(args);
        }
    }
};

function DayRenderFunc(sender, eventArgs) {
    checkDatesList();
    
    var cell = eventArgs.get_cell();
    cell.disabled = true;
    
    var currentRenderDate = eventArgs.get_renderDay();
    currentRenderDate.selectable = false;
    currentRenderDate.isSelectable = false;
    
    var currentDate = currentRenderDate.get_date();
    var year = currentDate[0];
    var month = currentDate[1];
    var day = currentDate[2];
    var displayDay = currentDate[2];
    displayDay = displayDay.toString();
    
    var compareDate = month + "/" + day + "/" + year;
    var compareSelectedDate = new Date(compareDate);
    
    cell.innerHTML = "<label class='NotSelectable'>" + displayDay + "</label>";    
            
    for (var i = 0; i < ArchiveDates.length; i++) 
    {
        var ArchiveSelectedDate = new Date(ArchiveDates[i]);

        if (ArchiveSelectedDate.toDateString() == compareSelectedDate.toDateString()) 
        {
            currentRenderDate.selectable = true;
            currentRenderDate.isSelectable = true;
            cell.disabled = false;

            cell.innerHTML = "<label class='SelectableDates'>" + displayDay + "</label>";
            lastArchiveDatesIndex = i;
            break;
        }
    }
    
}

function selectNews(args) {

    var currentSelectedDate = args.get_renderDay().get_date();
    var year = currentSelectedDate[0];
    var month = currentSelectedDate[1];
    var day = currentSelectedDate[2];
    var compareDate = month + "/" + day + "/" + year;

    for (var i = 0; i < ArchiveDates.length; i++) {
        var ArchiveSelectedDate = new Date(ArchiveDates[i])
        var finalComparedate = new Date(compareDate);
        if (finalComparedate.toDateString() == ArchiveSelectedDate.toDateString()) {
            var newArgs = currentSelectedDate.toString().split(",");
            var year = newArgs[0];
            var month = getMonthName(newArgs[1]);
            var day = newArgs[2];

            ShowPleaseWaitWindow();

            //add set time out or wait window will not display correctly
            newLocation = (rootUrl + year + "/" + month + "/" + day + categoryUrl + "/");
            setTimeout('goToNewArchiveDate()', 600);
        }
    }


}

function checkDatesList() {
    if (ArchiveDates == null && arrayDate != null) {
        ArchiveDates = new Array(arrayDate.split(","));
        ArchiveDates = ArchiveDates[0];
    }
}

function goToNewArchiveDate() {
    window.location = newLocation;
}

function getMonthName(monthNum) {
    var MonthArray = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");

    var monthName = "";
    if (monthNum > 0 && monthNum < 13)
        monthName = MonthArray[monthNum - 1];

    return monthName;
}
