
var today = new Date();
var mon = today.getMonth();	
var dt = today.getDate();			// current date (number)
var dy = today.getDay();			// current day of the week

var year = today.getFullYear();
var months = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
var monthlen = new Array(31,checkLeapYear(year),31,30,31,30,31,31,30,31,30,31);
var days = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday")
var minidays = new Array("Su", "Mo", "Tu", "We", "Th", "Fr", "Sa")
var child = "";

function checkLeapYear(theyear) {
	// 1.Years divisible by four are leap years, unless...
	// 2.Years also divisible by 100 are not leap years, except...
	// 3.Years divisible by 400 are leap years.

	if ( ((theyear % 4 == 0) && (theyear % 100 != 0)) || (theyear % 400 == 0) ) {
		return("29");
	} else {
		return("28");
	}
}

var mo =today.getMonth(); 							//get month
var year = today.getFullYear();						//get year

//variables for current month
var first = months[mo] + " 01, " + year;
firstday = new Date(first);							//first starting day of month
startday = firstday.getDay();
var factor = startday - 1;							//variables for leap year
var endday = parseInt(monthlen[mo]) + factor;


// variables for previous month
var prevmo = mo;
if(prevmo == 0) {
			prevmo = 11;
		} else {
			prevmo--;
			}

var prfirst = months[prevmo] + " 01, " + year;
prfirstday = new Date(prfirst);
prstartday = prfirstday.getDay();
var prfactor = prstartday +1 ;	
var prendday = parseInt(monthlen[prevmo]) + prfactor;	

// variables for next month
var nextmo= mo;
if(nextmo < 11) {
			nextmo++;
		} else {
			nextmo = 0;
			year++
			}

	




