﻿	var MonthDayArray = new Array(12);
	MonthDayArray[0]=MonthDayArray[2]=MonthDayArray[4]=MonthDayArray[6]=MonthDayArray[7]=MonthDayArray[9]=MonthDayArray[11]=31;
	MonthDayArray[3]=MonthDayArray[5]=MonthDayArray[8]=MonthDayArray[10]=30;
	MonthDayArray[1]=28;

	var MonthNameArray = new Array(12);
	MonthNameArray[0] = 'January';
	MonthNameArray[1] = 'February';
	MonthNameArray[2] = 'March';
	MonthNameArray[3] = 'April';
	MonthNameArray[4] = 'May';
	MonthNameArray[5] = 'June';
	MonthNameArray[6] = 'July';
	MonthNameArray[7] = 'August';
	MonthNameArray[8] = 'September';
	MonthNameArray[9] = 'October';
	MonthNameArray[10] = 'November';
	MonthNameArray[11] = 'December';

	
	var ServerTime = new Date();
	//ServerTime = ServerTime.getDate();
	
	var dtMin = new Date(ServerTime);
	
	
	dtMin = new Date(dtMin.setDate(dtMin.getDate() - 1));
	var dtMax = new Date();
	dtMax = new Date(dtMax.setDate(dtMax.getDate() + 14));
	var dtCurrentMonth = new Date(ServerTime);
	var dtSelectedDate = new Date(ServerTime);
	var returnTxtBox = '';

	function GetMonthDayCount(dt)
	{
		var c = MonthDayArray[dt.getMonth()];
		if((1==dt.getMonth()) && IsLY(dt.getFullYear()))
		{
			c = c + 1;
		}
		return c;
	}

	function ShowCalendar(event, txtid, SelectedDate, opencalendar)
	{
	    returnTxtBox = txtid;

	    var PreSelectedDate = document.getElementById(returnTxtBox).value;
	    
		var dt = new Date(ServerTime);

		if(PreSelectedDate != '')
		{
            var PreSelectedDate = PreSelectedDate.split('/');
			dt = new Date(PreSelectedDate[2], PreSelectedDate[1]-1, PreSelectedDate[0]);
        }

		if(SelectedDate != '')
    		dt = new Date(SelectedDate);        
	
	    dtCurrentMonth = dt;
	    
		var dtFirst = new Date('01 ' + MonthNameArray[dt.getMonth()] + ' ' + dt.getFullYear());

		if(!event) { event = window.event }

		var CalendarControl = document.getElementById('CalendarControl');
		var CalendarTitleBar = document.getElementById('TitleBar');

		CalendarTitleBar.innerHTML = MonthNameArray[dt.getMonth()] + "&nbsp;&nbsp;" + dt.getFullYear();

		var myDates = document.getElementById('Dates').getElementsByTagName("div");

		var c = GetMonthDayCount(dt);

		var mty = dtFirst.getDay() - 1;
		if(mty < 0)
			mty = 6;
		
		for (var i=0;i<myDates.length;i++)
		{
			if (i>5)
			{
				if (i>33)
				{
					document.getElementById('d' + (i-5)).style.display=(c>i-6?"block":"none");
				}
				var d = new Date(dt.getFullYear(),dt.getMonth(),i-5);
				SetClk(myDates[i],((!dtMin||d>=dtMin)&&(!dtMax||d<=dtMax)));
				//SetClk(myDates[i],true);
			}
			else
			{
				if (mty>0)
				{
					myDates[i].style.display="inline";
					mty--;
				}
				else myDates[i].style.display="none";
			}
		}

		myDates[dt.getDate()+5].className += " picked";

        if(opencalendar == 1)
        {
		    CalendarControl.style.display = '';
		    CalendarControl.style.left = event.clientX - 300;
		    CalendarControl.style.top = event.clientY + document.documentElement.scrollTop + document.body.scrollTop - 50;
		}
		
	}

	function CloseCalendar()
	{
		var CalendarControl = document.getElementById('CalendarControl');
		CalendarControl.style.display = 'none';
	}

	function IsLY(y)
	{
		if(0==y%4&&((y%100!=0)||(y%400==0)))
		{
			return true;
		} else {
			return false;
		}
	}

	function SetClk(d,f)
	{
		d.className =(f?"pointer":"invalid");
		d.onclick=f?DtClk:null;
	}

	function DtClk(e)
	{
		if(!e) { e = window.event }
		EvtTgt(e).style.backgroundColor="";

		var myDay = EvtTgt(e).innerHTML;
		if(myDay.length == 1)
		{
			myDay = '0' + myDay;
		}
		var myMonth = (dtCurrentMonth.getMonth()+1).toString();
		if(myMonth.length == 1)
		{
			myMonth = '0' + myMonth;
		}

		dtSelectedDate = myDay + '/' + myMonth + '/' + dtCurrentMonth.getFullYear();

		var CalendarControl = document.getElementById('CalendarControl');
		CalendarControl.style.display = 'none';
		
		Update(dtSelectedDate);
	}


	function EvtTgt(e)
	{
		var el;
		if(e.target)el=e.target;
		else if(e.srcElement)el=e.srcElement;
		if(el.nodeType==3)el=el.parentNode; // defeat Safari bug
		return el;
	}

	function ChangeMonth(e, intMonthChange)
	{	
		dtCurrentMonth = new Date(dtCurrentMonth.getFullYear(),(dtCurrentMonth.getMonth())+intMonthChange,1)
		ShowCalendar(e, returnTxtBox, dtCurrentMonth, 0);
	}

	function Update(dtSelectedDate)
	{
    	var s = document.getElementById(returnTxtBox);
    	s.value = dtSelectedDate;
    	
    	setTimeout('__doPostBack(\'ctl00$_objContent$_drpDay\',\'\')', 0);       
	}

