
var onCalendar = false;
// all month arrays start with current month
var months = new Array(12); // all the monthnames in current language 
var monthsNrs = new Array(12); // all the nrs of the months
var daysInMonth = new Array(12); // nr of days per month for all months
var firstDayinMonth = new Array(12); // first day of the month for all months
var monthYears = new Array(12); // the year in which the month is
var dayNames = new Array(7); // the first letter of the day in current language

var curDay = 6; // today
var curMonth = -7;
months[0] = 'september';
monthsNrs[0] = '9';
months[1] = 'oktober';
monthsNrs[1] = '10';
months[2] = 'november';
monthsNrs[2] = '11';
months[3] = 'december';
monthsNrs[3] = '12';
months[4] = 'januari';
monthsNrs[4] = '1';
months[5] = 'februari';
monthsNrs[5] = '2';
months[6] = 'maart';
monthsNrs[6] = '3';
months[7] = 'april';
monthsNrs[7] = '4';
months[8] = 'mei';
monthsNrs[8] = '5';
months[9] = 'juni';
monthsNrs[9] = '6';
months[10] = 'juli';
monthsNrs[10] = '7';
months[11] = 'augustus';
monthsNrs[11] = '8';
daysInMonth[0] = '30';
firstDayinMonth[0] = '3';
monthYears[0] = '2010';
daysInMonth[1] = '31';
firstDayinMonth[1] = '5';
monthYears[1] = '2010';
daysInMonth[2] = '30';
firstDayinMonth[2] = '1';
monthYears[2] = '2010';
daysInMonth[3] = '31';
firstDayinMonth[3] = '3';
monthYears[3] = '2010';
daysInMonth[4] = '31';
firstDayinMonth[4] = '6';
monthYears[4] = '2011';
daysInMonth[5] = '28';
firstDayinMonth[5] = '2';
monthYears[5] = '2011';
daysInMonth[6] = '31';
firstDayinMonth[6] = '2';
monthYears[6] = '2011';
daysInMonth[7] = '30';
firstDayinMonth[7] = '5';
monthYears[7] = '2011';
daysInMonth[8] = '31';
firstDayinMonth[8] = '0';
monthYears[8] = '2011';
daysInMonth[9] = '30';
firstDayinMonth[9] = '3';
monthYears[9] = '2011';
daysInMonth[10] = '31';
firstDayinMonth[10] = '5';
monthYears[10] = '2011';
daysInMonth[11] = '31';
firstDayinMonth[11] = '1';
monthYears[11] = '2011';
dayNames[0] = 'z';
dayNames[1] = 'm';
dayNames[2] = 'd';
dayNames[3] = 'w';
dayNames[4] = 'd';
dayNames[5] = 'v';
dayNames[6] = 'z';


function changestyle(obj, new_style)
{
	obj.className = new_style;
}

function getCalendar(){
    var top = '<table class="calendar" cellpadding="0" cellspacing="1" style="width:123px;height:128px;margin-left:auto;margin-right:auto">' +
                      '<tr>';
    if(curMonth > 0){
        top += '<td style="height:14px;"><a href="javascript:previousMonth();" title="Vorige maand">&lt;&lt;</a></td>';
    } else {
        top += '<td style="height:14px;">&nbsp;</td>';
    }
    top += '<td colspan="5" class="header">'+months[curMonth]+' '+monthYears[curMonth]+'</td>';
    if(curMonth < 11) {
        top += '<td><a href="javascript:nextMonth();" title="Volgende maand">&gt;&gt;</a></td>';
    } else {
        top += '<td>&nbsp;</td>';
    }
    top +=  '</tr>' +
                      '<tr>' +
                        '<td style="height:12px;width:15px;">' + dayNames[0] + '</td>' +
                        '<td style="height:12px;width:15px;">' + dayNames[1] + '</td>' +
                        '<td style="height:12px;width:15px;">' + dayNames[2] + '</td>' +
                        '<td style="height:12px;width:15px;">' + dayNames[3] + '</td>' +
                        '<td style="height:12px;width:15px;">' + dayNames[4] + '</td>' +
                        '<td style="height:12px;width:15px;">' + dayNames[5] + '</td>' +
                        '<td style="height:12px;width:15px;">' + dayNames[6] + '</td>' +
                      '</tr>';
   var innerTable = '';
   var dayCount = parseInt(daysInMonth[curMonth]) + parseInt(firstDayinMonth[curMonth])-1;
   var curDayCount = 1;
   for (var x = 0; x < 42; x++)
   {
        if (x % 7 == 0) {
            //innerTable += '<tr class=\"trnormal\" onmouseOver=\"changestyle(this, \'trover\');\" onmouseout=\"changestyle(this,\'trnormal\');\">';
            innerTable += '<tr class=\"trnormal\">';
        }
        
        if (x < firstDayinMonth[curMonth] || x > dayCount) {
            innerTable += '<td style="height:14px;width:15px;">&nbsp;</td>';
        }
        else {
            if (curMonth == 0 && curDayCount < curDay) {
                innerTable += '<td class="unselectableday" style="height:14px;width:15px;">'+curDayCount+'</td>';
            }
            else {
                //innerTable += '<td class="selectableday" style="height:14px;width:15px;" onmouseover="this.style.cursor=\'hand\'" onclick="selectDay(\''+curDayCount+'-'+monthsNrs[curMonth]+'-'+monthYears[curMonth]+'\');"><a class="selectabledaylink" href="javascript:selectDay(\''+curDayCount+'-'+monthsNrs[curMonth]+'-'+monthYears[curMonth]+'\');hideCal();">'+curDayCount+'</a></td>';
                innerTable += '<td class="selectableday" style="height:14px;width:15px;" onmouseout="this.style.border=\'1px solid #fff\'" onmouseover="this.style.cursor=\'hand\';this.style.border=\'1px solid #000\'" onclick="selectDay(\''+curDayCount+'-'+monthsNrs[curMonth]+'-'+monthYears[curMonth]+'\');"><a class="selectabledaylink" href="javascript:selectDay(\''+curDayCount+'-'+monthsNrs[curMonth]+'-'+monthYears[curMonth]+'\');hideCal();">'+curDayCount+'</a></td>';
            }
            curDayCount++;
        }

        if ((x+1) % 7 == 0) {
            innerTable += '</tr>';
        }
   }
   return top + innerTable + '</table>';
}
document.getElementById('calendarPanel').innerHTML = getCalendar();

function selectDay(day){
    document.getElementById('ctl00_cph_main_SearchDrilldownDefault_ddlArrival_chosenDateInput').value = day;
    if('true' == 'true')
        submitFrontSearch();
    showHide();
}
function previousMonth(){
    curMonth--;
    getCalendar();
    document.getElementById('calendarPanel').innerHTML = getCalendar();
}
function nextMonth(){
    curMonth++;
    getCalendar();
    document.getElementById('calendarPanel').innerHTML = getCalendar();
}

function showHide(){
    if(document.getElementById('calendarcontainer').style.display == ''){
        document.getElementById('calendarcontainer').style.visibility='hidden';
        document.getElementById('calendarcontainer').style.display='none';
        document.getElementById('showHide').style.display='none';
    } else {
        document.getElementById('calendarcontainer').style.visibility='visible';
        document.getElementById('calendarcontainer').style.display='';
        document.getElementById('showHide').style.display='';
    }
}
function hideCal(){
    document.getElementById('calendarcontainer').style.visibility='hidden';
    document.getElementById('calendarcontainer').style.display='none';
    document.getElementById('showHide').style.display='none';
}
function catchMouseDown(e) {
    if(e != null){
        if(e.target.id != 'ctl00_cph_main_SearchDrilldownDefault_ddlArrival_chosenDateInput' 
            && e.target.id != 'dropdownarrow' && !onCalendar){
            hideCal();
        }
    } else {
        if(event.srcElement.id != 'ctl00_cph_main_SearchDrilldownDefault_ddlArrival_chosenDateInput' 
            && event.srcElement.id != 'dropdownarrow' && !onCalendar){
            hideCal();
        }
    }
    return true;
}

document.onmousedown=catchMouseDown;