// Date picker - From date //


// Prepare to show a date picker linked to three select controls 
function readLinkedFrom() { 
    $('#eventsSearchFromDates').val($('#eventsSearchFrom span.eventsSearchMonth select').val() + '/' + 
        $('#eventsSearchFrom span.eventsSearchDay select').val() + '/' + $('#eventsSearchFrom span.eventsSearchYear input').val()); 
    return {}; 
} 
 
// Update three select controls to match a date picker selection 
function updateLinkedFrom(date) { 
    if (date.substring(0, 1) != '0') {
      $('#eventsSearchFrom span.eventsSearchMonth select').val(date.substring(0, 2));
    } else {
      $('#eventsSearchFrom span.eventsSearchMonth select').val(date.substring(1, 2));
    }
    if (date.substring(3, 4) != '0') {
      $('#eventsSearchFrom span.eventsSearchDay select').val(date.substring(3, 5));
    } else {
      $('#eventsSearchFrom span.eventsSearchDay select').val(date.substring(4, 5));
    }
    $('#eventsSearchFrom span.eventsSearchYear input').val(date.substring(6, 10)); 
} 

// Prevent selection of invalid dates through the select controls 
function checkLinkedDaysFrom() { 
    var daysInMonth = 32 - new Date($('#eventsSearchFrom span.eventsSearchYear input').val(), 
        $('#eventsSearchFrom span.eventsSearchMonth select').val() - 1, 32).getDate(); 
    $('#eventsSearchFrom span.eventsSearchDay select option').attr('disabled', ''); 
    $('#eventsSearchFrom span.eventsSearchDay select option:gt(' + (daysInMonth - 1) +')').attr('disabled', 'disabled'); 
    if ($('#eventsSearchFrom span.eventsSearchDay select').val() > daysInMonth) { 
        $('#eventsSearchFrom span.eventsSearchDay select').val(daysInMonth); 
    } 
} 

$(document).ready(function(){
  $("#eventsSearchFromDates").datepicker({ 
    minDate: new Date(2008, 1 - 1, 1), 
    maxDate: new Date(2012, 12 - 1, 31), 
    defaultDate: new Date(),
    beforeShow: readLinkedFrom, 
    onSelect: updateLinkedFrom, 
    showOn: "both", 
    buttonImage: "./?a=29559",
    buttonImageOnly: true 
  }); 
  $("#eventsSearchFrom span.eventsSearchMonth select, #selectYear").change(checkLinkedDaysFrom);
});


// Date picker - To date //


function readLinkedTo() { 
    $('#eventsSearchToDates').val($('#eventsSearchTo span.eventsSearchMonth select').val() + '/' + 
        $('#eventsSearchTo span.eventsSearchDay select').val() + '/' + $('#eventsSearchTo span.eventsSearchYear input').val()); 
    return {}; 
} 
 
// Update three select controls to match a date picker selection 
function updateLinkedTo(date) { 
    if (date.substring(0, 1) != '0') {
      $('#eventsSearchTo span.eventsSearchMonth select').val(date.substring(0, 2));
    } else {
      $('#eventsSearchTo span.eventsSearchMonth select').val(date.substring(1, 2));
    }
    if (date.substring(3, 4) != '0') {
      $('#eventsSearchTo span.eventsSearchDay select').val(date.substring(3, 5));
    } else {
      $('#eventsSearchTo span.eventsSearchDay select').val(date.substring(4, 5));
    }
    $('#eventsSearchTo span.eventsSearchYear input').val(date.substring(6, 10)); 
} 

// Prevent selection of invalid dates through the select controls 
function checkLinkedDaysTo() { 
    var daysInMonth = 32 - new Date($('#eventsSearchTo span.eventsSearchYear input').val(), 
        $('#eventsSearchTo span.eventsSearchMonth select').val() - 1, 32).getDate(); 
    $('#eventsSearchTo span.eventsSearchDay select option').attr('disabled', ''); 
    $('#eventsSearchTo span.eventsSearchDay select option:gt(' + (daysInMonth - 1) +')').attr('disabled', 'disabled'); 
    if ($('#eventsSearchTo span.eventsSearchDay select').val() > daysInMonth) { 
        $('#eventsSearchTo span.eventsSearchDay select').val(daysInMonth); 
    } 
}

$(document).ready(function(){
  $("#eventsSearchToDates").datepicker({ 
    minDate: new Date(2008, 1 - 1, 1), 
    maxDate: new Date(2012, 12 - 1, 31), 
//    defaultDate: new Date(2007, 1 - 1, 1),
    defaultDate: new Date(),
    beforeShow: readLinkedTo, 
    onSelect: updateLinkedTo, 
    showOn: "both", 
    buttonImage: "./?a=29559",
    buttonImageOnly: true 
  }); 
  $("#eventsSearchTo span.eventsSearchMonth select, #selectYear").change(checkLinkedDaysTo);
});
