﻿var calendarAjaxHandler = '/Frontend/DHF/DHF.Widget.Teasers.Calendar/Server/DHF.Widget.Teasers.Calendar.ashx';
var $currentMonthDays = new Array();

$(document).ready(function() {


    $('.calendarDiv').createEventCalendar(null, beforeShowDay, onChangeMonthYear, onSelect);


    function getEventsByCategoryId(sCategoryId, iYear, iMonth) {
        //Message.ShowLoading();
        var parameters = {
            url: calendarAjaxHandler,
            data:
			{
			    method: "getEventsByCategoryId",
			    categoryId: sCategoryId,
			    year: iYear,
			    month: iMonth
			},
            callback: function(data) {
                //Message.HideLoading();
                if (data == null) {
                    $currentMonthDays = null;
                }
                else {
                    $currentMonthDays = data;
                }
            }
        }
        DataProvider.getJSON(parameters);
    }

    function beforeShowDay(date) {

        var result = new Array();
        if ($currentMonthDays != null) {
            
            /*
            for (key in $currentMonthDays) {
                if ($currentMonthDays[key].Date.getTime() == date.getTime()) {

                    //selectable
                    result[0] = true;
                    //default ui representation
                    result[1] = 'datepickerItemNews';
                    //tooltip text
                    if (parseInt($currentMonthDays[key].Count) > 1) {
                        result[2] = 'See arrangementer';
                    }
                    else {
                        result[2] = $currentMonthDays[key].Event.Title;
                    }

                }
            }*/
            for (var i = 0; i < $currentMonthDays.length; i++)
            {
                if (Date.parse($currentMonthDays[i].Date).getDate() == date.getDate()) {

                        //selectable
                        result[0] = true;
                        //default ui representation
                        result[1] = 'datepickerItemNews';
                        //tooltip text
                        if (parseInt($currentMonthDays[i].Count) > 1) {
                            result[2] = 'Se arrangementer';
                        }
                        else {
                            result[2] = $currentMonthDays[i].Event.Title;
                        }

                    }
            }
        }
        else {
            //selectable
            result[0] = true;
            //default ui representation
            result[1] = '';
            //tooltip text
            result[2] = '';
        }
        return result;

    }
    function onChangeMonthYear(year, month, inst, sCategoryId) {
        getEventsByCategoryId(sCategoryId, year, month);
        return;
    }
    function onSelect(dateText, inst, url) {

        
        window.location.href = url + '?eventDate=' + dateText + 'T00:00:00'; 
    }
});