var date, month, year, current, locale;
    
locale = {
    days: ["Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag", "Zondag"],
    daysShort: ["Zon", "Maa", "Din", "Woe", "Don", "Vri", "Zat", "Zon"],
    daysMin: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zo"],
    months: ["Januari", "Februari", "Maart", "April", "Mei", "Juni", "Juli", "Augustus", "September", "Oktober", "November", "December"],
    monthsShort: ["Jan", "Feb", "Maa", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
    weekMin: 'wk'
};
    
now = new Date();
current = now;
month = current.getMonth();
year = current.getFullYear();

function switchMonth(date) {
    "use strict";
    current = date, month = date.getMonth(), year = date.getFullYear();

    ajaxCall();
}

function ajaxCall()
{
    var input = $('.filter input:checked'), post, filters = new Array();
    $.each(input, function (k) {
        filters[k] = $(this).val();
    });

    // javascript vind het nodig om maanden van 0-11 te nummeren, dus month + 1
    post = {
        month: month + 1, 
        year: year, 
        filters: filters.join(',')
    };

    $.get('/ajax/activiteiten.html', post, update, 'html');
    
    $.get('/ajax/get-dates.json', post, function (data) {
        var k, v;
        $('.datepickerDays:visible').find('td').removeClass('datepickerSelected');
        $.each(data, function (k, v) {
            $.each($('.datepickerDays:visible').find('span'), function () {
                var $this = $(this);
                $this.filter(function () {
                    if ($(this).text() == v) {
                        $this.parent('a').parent('td').addClass('datepickerSelected');
                    }
                });
            });
        });
    }, 'json');
}

function update(html) {
    $('h1').text(locale.months[month] + ' ' + year);
    Cufon.refresh('h1');
    $('div.column.big.left').html(html);
}

$(document).ready(function () {
    
    "use strict";
    $('#datepicker').DatePicker({
        flat: true,
        date: false,
        format: 'Y-m-d',
        calendars: 1,
        mode: 'multiple',
        onRender: function (date) {
            return {
                disabled: true,
                className: date.toDateString() === now.toDateString() ? 'today' : false
            };
        },
        locale: locale
    });

    if ($('#datepicker').length) {
        switchMonth(now);
    }
    
    $('.filter input').change(ajaxCall);
});
