﻿// JScript File
var gCalBtn = null;
var gCalMonth = 'cMonth';
var gCalYear = 'cYear';
var gCalRetVal = 'txtDepartDate';
var gPnlId = 'idCalendar';
var flg = false;
var gToday = null;
function renderCalendar( curMonth, curYear)
{
    gCalBtn = null;
    
    var monthName = ['January','February','March','April','May','June','July','August','September','October','November','December'];
    var dayTitle = ['S','M','T','W','T','F','S'];
    var maxDay = [31,28,31,30,31,30,31,31,30,31,30,31];
    var html = '';
    var m = new Date( curYear, curMonth-1, 1 );
    m.od = m.getDay() + 1;
    maxDay[1]=(((m.getFullYear()%100!=0)&&(m.getFullYear()%4==0))||(m.getFullYear()%400==0))?29:28;
    var t = gToday;
    var today;
    var tMonth;
    var tYear;
    
    if( curYear == t.getFullYear() && curMonth == t.getMonth()+1 ){ today = t.getDate()+2;tMonth=t.getMonth()+1;tYear=t.getFullYear();}
    else{today = 0;tMonth=t.getMonth()+1;tYear=t.getFullYear();}
    //alert(tYear + ' = '+tMonth);
    html += '<div ><table cellspacing=0 cellpadding=0 width=210 border=0 align=center style="border:1px solid black;">';
    html += '<tr align=center><td class=CalMonth><input type="button" value="<" onclick="onChangeMonth(\'-\');" class=CalBtn></td>';
    html += '<td colspan=5 class=CalMonth>' + monthName[curMonth-1] + ' - ' + curYear + '</td>';
    html += '<td class=CalMonth><input type="button" value=">" onclick="onChangeMonth(\'+\');" class=CalBtn></td></tr>';
    html += '<tr align=center>';
    
    for( var i=0; i<7; i++)
        html += '<td class=Caldaysofweek>' + dayTitle[i] + '</td>';
        
    html += '</tr><tr align=center>';
    
    for( var i=1; i<=42; i++ )
    {
        var btnCss = 'CalBtn';
        var x;
        var t = '';
        var s = '';
        
        if( (i-m.od>=0 ) && ( i-m.od<maxDay[curMonth-1] ) ){x = i-m.od+1;}
        else{x = '&nbsp;';}

        if (x==today) //DD added
        {
            //t='style="color:red;"';
            btnCss = 'CalBtnS';
            s = 'id=tday';
        }
        
        if( flg && ( x<today || ( curMonth<=tMonth && curYear<=tYear && today==0) ) )
        {
            s = 'disabled';
            btnCss = 'CalBtnD';
        }
        if( x!= '&nbsp;')
            html+='<td class=Caldays><input class=' + btnCss + ' '+t+' type=button value='+x+' '+s+' onClick="onSelDate(this);"></td>';
        else
            html += '<td class=Caldays>&nbsp;</td>';
        if(((i)%7==0)&&(i<36))html+='</tr><tr align="center">';
    
    }
    
    html += '</tr>';
    html += '</table></div>';
    return html;
}

function onSelDate(obj)
{
    var m = parseInt( document.getElementById(gCalMonth).value );
    var y = parseInt( document.getElementById(gCalYear).value );
    var d  = obj.value;
    
    if( d< 10 )
        d = "0" + d;
    
    if( m < 10 )
        m = '0' + m;
    
    if(gCalBtn != null)
    {
        gCalBtn.className = 'CalBtn';
    }
    else if( document.getElementById('tday') != null )
    {
        document.getElementById('tday').className = 'CalBtn';
    }
    obj.className = 'CalBtnS';
    gCalBtn = obj;
    document.getElementById(gCalRetVal).value = d + '/' + m + '/' + y;
    // do something
    onCalendarAction();
}

function onChangeMonth( ch )
{
    var m = parseInt( document.getElementById(gCalMonth).value );
    var y = parseInt( document.getElementById(gCalYear).value );
    if( ch == '+' )
    {
        m++;
        if( m > 12){
            y++;
            m = 1;
            }
    }
    else
    {
        m--;
        if(m<1)
        {
            y--;
            m = 12;
        }
    }
    document.getElementById(gPnlId).innerHTML = renderCalendar(m, y);
    document.getElementById(gCalMonth).value = m;
    document.getElementById(gCalYear).value = y;
}