﻿// JScript File
      function dayofWeek(day){
            switch( day ) {
                case 0: s = "Sunday"; break;
                case 1: s = "Monday"; break;
                case 2: s = "Tuesday"; break;
                case 3: s = "Wednesday"; break;
                case 4: s = "Thursday"; break;
                case 5: s = "Friday"; break;
                case 6: s = "Saturday"; break;
                default: s = "Unknownday"
            }
            return s;
        }
        
        function monthofYear(mon){
            switch( mon ) {
                case 1: s = "Jan"; break;
                case 2: s = "Feb"; break;
                case 3: s = "Mar"; break;
                case 4: s = "Apr"; break;
                case 5: s = "May"; break;
                case 6: s = "Jun"; break;
                case 7: s = "Jul"; break;
                case 8: s = "Aug"; break;
                case 9: s = "Sep"; break;
                case 10: s = "Oct"; break;
                case 11: s = "Nov"; break;
                case 12: s = "Dec"; break;
                default: s = "Unknownmonth"
            }
            return s;
        }
      
        function PickDate(dest,e){
            LoadCalendar(dest,'','');
            
            var cal = document.getElementById("calender");
            if (cal.style.visibility=='visible') {
                cal.style.visibility='hidden'
            } else {
                cal.style.top=(window.event) ? event.clientY : e.clientY + 'px';
                cal.style.left=(window.event) ? event.clientX : e.clientX + 'px';
                cal.style.visibility='visible'
            }
        }
        
        function LoadCalendar(dest,month,year) {
            var table = document.getElementById('tbCalender').getElementsByTagName('tbody')[0];
            RemoveRows(table);

            if (month=='') month = new GetDate(dest).getMonth() + 1;
            if (year=='') year = new GetDate(dest).getYear();
            
            if (year<200) year = year+1900;
            
            if (month==0) {
                month=12;
                year=year-1;
            }

            if (month==13) {
                month=1;
                year=year+1;
            }
                        
            SetMonth(dest,month,year);

            var myDate=new Date();
            var curColumn = 0;
            var newRow = true;
            
            var rw;
            
            for (var x = 1; x <= 31; x++){
                myDate.setFullYear(year,month-1,x);
                if (myDate.getMonth() != month-1) {
                    break;
                } else {
                    if (myDate.getDay() == 0) newRow = true;
                    
                    if (newRow) {
                        if (rw) {
                            curColumn = 0;
                            AppendRow(table,rw)
                            rw = CreateRow(table);     
                        }
                        rw = CreateRow(table);
                        newRow=false;
                    }
                    
                    if (curColumn < myDate.getDay()) {
                        while (curColumn < myDate.getDay()) {
                            rw = AddTD(rw,"&nbsp;");
                            curColumn++;
                        }
                    }
                    var chkDate = GetDate(dest);
                    var select;
                    if (myDate.getDate() == chkDate.getDate()){
                        //alert(myDate.toDateString());
                        //alert(chkDate.toDateString());
                        select = true;
                    } else {
                        //alert(myDate.toDateString());
                        //alert(chkDate.toDateString());
                        select = false;
                    }
                    if (select) {
                        rw = AddTD(rw,'<a href="#" onMouseover="this.style.backgroundColor=\'lightblue\';" onMouseout="this.style.backgroundColor=\'#d3d3d3\';" onclick="SetDate(\''+dest+'\','+month.toString()+','+x.toString()+','+year.toString()+');return 0">'+x.toString()+'</a>',select);
                    } else {
                        rw = AddTD(rw,'<a href="#" onMouseover="this.style.backgroundColor=\'lightblue\';" onMouseout="this.style.backgroundColor=\'white\';" onclick="SetDate(\''+dest+'\','+month.toString()+','+x.toString()+','+year.toString()+');return 0">'+x.toString()+'</a>',select);
                    }
                    curColumn++;
                }
            }
            
            while (curColumn <= 6) {
                rw = AddTD(rw,"&nbsp;");
                curColumn++;
            }
            AppendRow(table,rw)               
        
        }
        
        function SetMonth(dest,month,year) {
            var td
            var intPrevMonth;
            var intNextMonth;
            var intPrevYear;
            var intNextYear;
            
            intPrevMonth = month - 1;
            intPrevYear = year;
            intNextMonth = month + 1;
            intNextYear = year;
            
            if (intPrevMonth == 0){
                intPrevMonth = 12;
                intPrevYear = year - 1;
            }

            if (intNextMonth == 13){
                intNextMonth = 1;
                intNextYear = year + 1;
            }
           
            td = document.getElementById("prevmonth");
            td.innerHTML = '<a href="#" onclick="LoadCalendar(\''+dest+'\','+intPrevMonth+','+intPrevYear+')">&lt;&lt;</a>';

            td = document.getElementById("nextmonth");
            td.innerHTML = '<a href="#" onclick="LoadCalendar(\''+dest+'\','+intNextMonth+','+intNextYear+')">&gt;&gt;</a>';
            
            //monthofYear
            td = document.getElementById("caltitle");
            td.innerHTML = monthofYear(month)+' - '+year;
        }

        function RemoveRows(tb) {
            var x=document.getElementsByTagName("TR");
            while (x.length > 2) {
                tb.removeChild(x[2]);
                x=document.getElementsByTagName("TR");
            }
        }
        
        function CreateRow(tb) {
            var row = document.createElement("TR");
            return row;
        }
        
        function AppendRow(tb,row) {
            tb.appendChild(row);
        }
        
        function AddTD(row,data,select) {
            var td1 = document.createElement("TD");
            td1.style.textAlign="center";
            //td1.appendChild(document.createTextNode(data));
            td1.innerHTML = data;
            if (select) td1.style.backgroundColor="#d3d3d3";
            //td1.attributes.add("align","center");
            row.appendChild(td1);
            return row;
        }

        function GetDate(dest) {
            var tb = document.getElementById(dest);
            var dt = new Date();
            if (tb.value == '') {
                dt = new Date();
            } else {
                dt.setTime(Date.parse(tb.value));            
            }
            
            return dt;
        }
        
        function SetDate(dest,mon,day,year) {
            var tb = document.getElementById(dest);
            tb.value = mon+"/"+day+"/"+year;
            
            var cal = document.getElementById("calender");
            cal.style.visibility='hidden';
        }