$(document).ready(function() { 
    /* Create odd ( / even) class on result elements */
    $("#results_list li:nth-child(odd)").addClass("odd");
		/* Create odd class on sidebar-panel */
		$(".sidebar-panel li:nth-child(odd)").addClass("odd");
});	

$(document).ready(function() { 
    /* Calendar widget */

    var strToDate = function (s) {
        return $.datepicker.parseDate('yy-mm-dd', s);
    };

    var submitForm = function () {
        $('#spinner').show();
        $('#searchform').submit();
    }
    //
    // Create list of dates
    var selectable = {}
    var minDateStr;
    var maxDateStr;

    $('#dateselector select').find('option').each(
        function(i, e) {
            // Skip default selection / label
            if (!$(this).val()) {
                return;
            }

            var value = $(this).text();
            selectable[value] = true;
            if (!minDateStr || value < minDateStr) {
                minDateStr = value;
            }

            if (!maxDateStr || value > maxDateStr) {
                maxDateStr = value;
            }
        }
    );

    var selectedStr = $('#dateselector select option:selected').val();
    var selectedDate;
    if (selectedStr) {
        selectedDate = strToDate(selectedStr);
    }
    // Replace select with widget and hidden text field
    $('#dateselector select').remove();
    $('#dateselector').append(
        '<input id="id-departure_date" type="hidden" value="' +  $.datepicker.formatDate('yy-mm-dd', selectedDate) + '"  name="departure_date" />'
    );

    if (selectedDate) {
        $('#dateselector').append('<a href="#" class="remove-selection" id="id-cancel_date_selection">' + $.datepicker.formatDate('dd-mm-yy', selectedDate) + '</a>');
        $('#id-cancel_date_selection').click(function() {
            $('#id-departure_date').val('');
            submitForm();
        });
    } else {
        $('#dateselector').append('<a href="#" id="id-showcal">Vertrekdatum</a>');
    }


    var minDate = strToDate(minDateStr);
    var maxDate = strToDate(maxDateStr);

    $('#dateselector input:hidden').datepicker({

        'hideIfNoPrevNext': true,

        'showOn': 'focus',

        'buttonText': 'Kies vertrekdatum',

        'beforeShowDay': function(dateObj) {
            var y = dateObj.getFullYear();
            var m = dateObj.getMonth() + 1;
            if (m < 10) {
                m = '0' + m;
            }
            var d = dateObj.getDate();
            if (d < 10) {
                d = '0' + d;
            }
            
            var dateStr = y + '-' + m + '-' + d;
            if (selectable[dateStr]) {
                return [true];
            } else {
                return [false];
            }
        },

       'firstDay': 1,

       'monthNames': ['januari', 'februari', 'maart', 'april', 'mei', 'juni',
                       'juli', 'augustus', 'september', 'oktober', 'november', 'december'], 

       'dayNamesMin': ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],

       'minDate': minDate,

       'maxDate': maxDate,

       'defaultDate': selectedDate,

       'altField': '#dateselector input:hidden',

       'altFormat': 'yy-mm-dd'

    });

    $('#id-showcal').click(function() {
        $('#dateselector input:hidden').datepicker('show');
    });

    // Remove button and add onChange events
    $('#searchform :input').change(function() {
        submitForm();
    });

    $('#searchbutton').remove();

});

