var month="";
var day="";
var year="";
var now="";
var monthNames = new Array ("January","February","March","April","May","June","July","August","September","October","November","December");

// Grabs a parameter from the URL.  Returns an empty
// string if parameter does not exist.
function getParameter(param) {

        var val = "";
        var qs = window.location.search;
        var start = qs.indexOf(param);

        if (start != -1) {
                start += param.length + 1;
                var end = qs.indexOf("&", start);
                if (end == -1) {
                        end = qs.length
                }
                val = qs.substring(start,end);
        }
        return val;
}
var contextstr = getParameter("context");
var datestr = getParameter("date");

function getMonthNumber( thestr ) {
	// returns the index into the cdcMonthNames array of 'thestr'.
	// returns -1 if invalid
	var thenumber = -1;
	for( var i = 0; i < cdcMonthNames.length; i++ ) {
		if( thestr == cdcMonthNames[i] ) {
			thenumber = i;
			break;
		}
	}
	return thenumber;
}

function getDateObjectFromString( thestr ){
	// returns date object based on the CDC string, 'thestr'
	// returns today if 'thestr' is null
	if( thestr != "" ) {
		var tmparray = thestr.split('/');
		
		if( (tmparray.length == 3) && (tmparray[0] >= 0) && (tmparray[0] >= 0) && (tmparray[0] >= 0) ) {
			var tmpdate = new Date( tmparray[2], getMonthNumber( tmparray[1] ), tmparray[0] );
			return tmpdate;
		} else {
			return new Date();
		}
	} else {
		return new Date();
	}	
}

function doOnLoad() {
	setToday();
	Go();
}

function setToday() {	
	now   = getDateObjectFromString( datestr );
	day   = now.getDate();
	month = now.getMonth();
	year  = now.getYear();
	if (year < 2000) {  
		year = year + 1900; 
	}
	this.focusDay = day;
	displayCalendar(month, year);
}

function setPreviousMonth() {
	day   = 0;
	if (month == 0) {
		month = 11;
		if (year > 1000) {
			year--;
		}
	} else { 
		month--; 

	}
	displayCalendar(month, year);
}

function setNextMonth() {
	day   = 0;
	if (month == 11) {
		month = 0;
		year++;
	} else { 
		month++; 
	}
	displayCalendar(month, year);
}

// Previous and Next Year Functions

function setPreviousYear() {
	year--;
	displayCalendar(month, year);
}

function setNextYear() {
		year++;
	displayCalendar(month, year);
}

function displayCalendar(month, year) {      
	var thisDay;
	month = parseInt(month);
	year = parseInt(year);
	var i = 0;
	var days = getDaysInMonth(month+1,year);
	var firstOfMonth = new Date (year, month, 1);
	var startingPos = firstOfMonth.getDay();
	days += startingPos;
	
	var myValue = "";
	myValue  = '<table bgcolor="#A8ADB4" width="177" cellspacing="0" cellpadding="0" border="0"><tr><td>';
	myValue += '<table width="100%" cellpadding="4" cellspacing="1" border="0"><tr valign="top"><td bgColor="#FFA243" align="center" width="100%">';
	myValue += '<table width="100%" cellpadding="0" cellspacing="0" border="0">';
	myValue += '<td align="left"><img src="/swa/i/s.gif" width="5" height="1" alt="" border="0"><a href="javascript:setPreviousYear()" class="modulecontentlink">&lt;&lt;</a>&nbsp;&nbsp;<a href="javascript:setPreviousMonth()" class="modulecontentlink">&lt;</a></td>';
	myValue += '<td align="center" width="110%"><span class="modulecontentbold">'+monthNames[month]+' '+year+'</span></td>';
	myValue += '<td align="right"><a href="javascript:setNextMonth()" class="modulecontentlink">&gt;</a>&nbsp;&nbsp;<a href="javascript:setNextYear()" class="modulecontentlink">&gt;&gt;</a><img src="/swa/i/s.gif" width="5" height="1" alt="" border="0"></td></table></td></tr>';
	myValue += '<tr bgcolor="#ffffff"><td>';
	myValue += '<table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td class="modulecontentbold" align="center" width="14%">Su</td><td class="modulecontentbold" align="center" width="14%">Mo</td><td class="modulecontentbold" align="center" width="14%">Tu</td><td class="modulecontentbold" align="center" width="14%">We</td><td class="modulecontentbold" align="center" width="14%">Th</td><td class="modulecontentbold" align="center" width="14%">Fr</td><td class="modulecontentbold" align="center" width="14%">Sa</td></tr>';
	myValue += '<tr bgcolor="#ffffff"><td colspan="7" height="6"><img src="/swa/i/s.gif" alt="" border="0" height="6" width="1"></td>';
	myValue += '<tr bgcolor="#ffffff">';
	for (i = 0; i < startingPos; i++) {
		myValue += "<td></td>";
	}
	for (i = startingPos; i < days; i++) {
	
		if ( i%7 == 0 ) {
			myValue += '<tr bgcolor="#ffffff" height="17">';
		}
		myValue += "<td align='center'>";
		thisDay = i-startingPos+1;
		myValue += '<a href="javascript:opener.assignDate( new Date(\''+year+'\',\''+month+'\',\''+thisDay+'\'), \''+contextstr+'\' );window.close()" class="modulelink">'+thisDay+'</a></td>';
		if ( i%7 == 6 ) {
			myValue += "</td></tr>";
		}
	}

	myValue += "</tr></table></td></tr></table></td></tr></table>";
	
	if (document.all) {  // IE
		if (document.all.calendarA){
			document.all.calendarA.innerHTML = myValue;
		}
	} else if (document.getElementById)  {  // Mozilla
		if (document.getElementById('calendarA')){
			document.getElementById('calendarA').innerHTML = myValue;	
		}
	} else {  // Netscape 4.x
		if (document.layers.calendarA) {
			document.layers.calendarA.document.open();
			document.layers.calendarA.document.writeln(myValue);
			document.layers.calendarA.document.close();
		}
	}
	

function getDaysInMonth(month,year)  {
var days;
if (month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12)  days=31;
else if (month==4 || month==6 || month==9 || month==11) days=30;
else if (month==2)  {
if (isLeapYear(year)) { days=29; }
else { days=28; }
}
return (days);
}
function isLeapYear (Year) {
if (((Year % 4)==0) && ((Year % 100)!=0) || ((Year % 400)==0)) {
return (true);
} else { return (false); }
}
}
// End -->