/* This script and many more are available free online at
The JavaScript Source!! http://javascript.internet.com
Created by: Shaun Bailey | http://www.sbwebdevelopment.co.uk */
// set up variables
var monthsArray = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
var daysArray = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
var prevYears = 10;	// number of years before current date
var futureYears = 10;	// number of years after current date
var today = new Date();
var nowMonth = today.getMonth();
var nowYear = today.getFullYear();
var curMonth = nowMonth;
var curYear = nowYear;
var monthEvents;
today.setDate(1);	// set to first day of the month

var calendarEvents = new Array();

// create event object
function newEvent(startDay, startMonth, startYear, startTime, endDay, endMonth, endYear, endTime, type, title, evtLocation, address, city, province, url1, url1Title, url2, url2Title, url3, url3Title) {
	this.startDate = getDateObj(startDay, startMonth, startYear);
	this.startDay = startDay;
	this.startMonth = startMonth;
	this.startYear = startYear;
	this.startTime = startTime;

	this.endDate = getDateObj(endDay, endMonth, endYear)
	this.endDay = endDay;
	this.endMonth = endMonth;
	this.endYear = endYear;
	this.endTime = endTime;

	this.type = type;
	this.title = title;
	this.evtLocation = evtLocation;
	this.address = address;
	this.city = city;
	this.province = province;
	this.url1 = url1;
	this.url1Title = url1Title;
	this.url2 = url2;
	this.url2Title = url2Title;
	this.url3 = url3;
	this.url3Title = url3Title;
	this.createMonth = createMonth;

	calendarEvents.push(new calendarEvent(startDay, startMonth, startYear, startTime, endDay, endMonth, endYear, endTime, type, title, evtLocation, address, city, province, url1, url1Title, url2, url2Title, url3, url3Title, this.startDate, this.endDate));	
}

function calendarEvent(startDay, startMonth, startYear, startTime, endDay, endMonth, endYear, endTime, type, title, evtLocation, address, city, province, url1, url1Title, url2, url2Title, url3, url3Title, origStartDate, origEndDate)
{
	this.startDate = getDateObj(startDay, startMonth, startYear);
	this.startDay = startDay;
	this.startMonth = startMonth;
	this.startYear = startYear;
	this.startTime = startTime;

	this.endDate = getDateObj(endDay, endMonth, endYear)
	this.endDay = endDay;
	this.endMonth = endMonth;
	this.endYear = endYear;
	this.endTime = endTime;

	this.type = type;
	this.title = title;
	this.evtLocation = evtLocation;
	this.address = address;
	this.city = city;
	this.province = province;
	this.url1 = url1;
	this.url1Title = url1Title;
	this.url2 = url2;
	this.url2Title = url2Title;
	this.url3 = url3;
	this.url3Title = url3Title;

	
	this.origStartDate = origStartDate;
	this.origEndDate = origEndDate;

	if(this.endDate != null)
	{
		if(this.startDate < this.endDate)
		{
			var newDate = new Date();
			newDate.setHours(0,0,0,0);
			newDate.setFullYear(this.startDate.getFullYear(), this.startDate.getMonth(), this.startDate.getDate());
			newDate.setDate(newDate.getDate() + 1);
			calendarEvents.push(new calendarEvent(newDate.getDate(), (newDate.getMonth() + 1), newDate.getFullYear(), this.startTime, this.endDay, this.endMonth, this.endYear, this.endTime, this.type, this.title, this.evtLocation, this.address, this.city, this.province, this.url1, this.url1Title, this.url2, this.url2Title, this.url3, this.url3Title, this.origStartDate, this.origEndDate));			
		}
	}
}

function getDateObj(d, m, y){
	if(d == '' || m == '' || y == ''){
		return null;
	}else{
		var xDate = new Date();
		xDate.setHours(0,0,0,0);
		xDate.setDate(d);
		xDate.setMonth(m - 1);
		xDate.setFullYear(y);
		return xDate;
	}
}

// creates calendar for the current month
function createMonth() {
	
	var startDay = today.getDay();	// first day of the month
	var monLength = monthLength(curMonth, curYear);	// number of days in month
	var lastDay = startDay+monLength-1;	// last day of the month
	monthEvents = new Array();	// array to hold events for current month
	var content = "";


	// search through events for current month
	for(i=0;i<calendarEvents.length;i++) {
		//alert(calendarEvents[i].title + "\n" + calendarEvents[i].startDay + "/" + calendarEvents[i].startMonth + "/" + calendarEvents[i].startYear + "\n" + calendarEvents[i].endDay + "/" + calendarEvents[i].endMonth + "/" + calendarEvents[i].endYear);
		if(calendarEvents[i].startMonth == (curMonth+1) && (calendarEvents[i].startYear == curYear)) {
			monthEvents[monthEvents.length] = i;
			//alert(calendarEvents[i].title + "\n" + calendarEvents[i].startDay + "/" + calendarEvents[i].startMonth + "/" + calendarEvents[i].startYear + "\n" + calendarEvents[i].endDay + "/" + calendarEvents[i].endMonth + "/" + calendarEvents[i].endYear)
		}
	}

	content += "<div style=\"width:629px;background-color:#FFF;padding-bottom:30px;\"><table cellpadding=\"0\" cellspacing=\"0\" width=\"578\">";
	content += "<tr>";
	content += "<td style=\"width:428px;\"><span class=\"calTitle\">Event Calendar:</span> <span class=\"calTitleDate\">" + monthsArray[curMonth] + " " + curYear + "</span></td>";
	content += "<td style=\"width:60px;\">";
	content += "<a class=\"button\" href=\"javascript:void(prev())\" onMouseOut=\"MM_swapImgRestore();\" onMouseOver=\"MM_swapImage('monthPrev','','/crp/files/calendar/images/Arrow_L_Rollover.gif',1);\"><img name=\"monthPrev\" src=\"/crp/files/calendar/images/Arrow_L_Static.gif\" border=\"0\" /></a>";	
	content += "<a class=\"button\" href=\"javascript:void(next())\" onMouseOut=\"MM_swapImgRestore();\" onMouseOver=\"MM_swapImage('monthNext','','/crp/files/calendar/images/Arrow_R_Rollover.gif',1);\"><img name=\"monthNext\" src=\"/crp/files/calendar/images/Arrow_R_Static.gif\" border=\"0\" /></a>";
	content += "</td>";
	content += "<td style=\"width:30px; background:#ffffff url(/crp/files/calendar/images/bkg_divideLinevertical.gif) repeat-y center center;\"></td>";
	content += "<td style=\"width:60px;\">";
	content += "<a class=\"button\" href=\"javascript:void(showCal());\"><img name=\"viewCal\" src=\"/crp/files/calendar/images/CAL_ON.gif\" border=\"0\" /></a>";
	content += "<a class=\"button\" href=\"javascript:void(showList());\" onMouseOut=\"MM_swapImgRestore();\" onMouseOver=\"MM_swapImage('viewList','','/crp/files/calendar/images/List_RollOver.gif',1);\"><img name=\"viewList\" src=\"/crp/files/calendar/images/List_OFF.gif\" border=\"0\" /></a>";
	content += "</td>";
	content += "</tr>";
	content += "</table></div>";
	content += "";	
	// Create Calendar Outline
	content += "<table cellpadding=\"0\" cellspacing=\"0\">\n";
	content += "<tr><td colspan=\"3\"><img src=\"/crp/files/calendar/images/cal_months.gif\" /></td></tr>\n";
	content += "<tr><td style=\"width:7px; background-image:url(/crp/files/calendar/images/cal_left.gif);\"></td>\n";
	content += "<td>\n";

	content += "<table class=\"calendar\" cellpadding=\"0\" cellspacing=\"0\">\n";
	// create headers
	//content += "<tr>\n<th><a class=\"button\" href=\"javascript:void(prev())\"><img src=\"/crp/files/calendar/images/Arrow_L_ON.gif\" border=\"0\" /></a></th>\n";
	//content += "<th colspan=\"5\">" + monthsArray[curMonth] + " " + curYear + "</th>\n";
	//content += "<th><a class=\"button\" href=\"javascript:void(next())\"><img src=\"/crp/files/calendar/images/Arrow_R_ON.gif\" border=\"0\" /></a></th>\n";
	//content += "</tr><tr>\n";
	//for(i=0;i<7;i++) {
	//	content += "<th>" + daysArray[i] + "</th>\n";
	//}
	
	content += "</tr>\n<tr>\n";

	// create main content of calendar
	for(i=0;i<42;i++) {
		var occ = "";
		var occContent = "";
		var curDay = i+1-startDay;
		var fullContent = "";
		// check day against months events
		for(j=0;j<monthEvents.length;j++) {
				var occConten = "";
				var occDate = new Date();
				occDate.setDate(calendarEvents[monthEvents[j]].startDay);
				occDate.setMonth(calendarEvents[monthEvents[j]].startMonth - 1);
				occDate.setFullYear(calendarEvents[monthEvents[j]].startYear);

				if(curDay == calendarEvents[monthEvents[j]].startDay) {	
					occContent += getCalendarEntryStr(monthEvents[j], calendarEvents[monthEvents[j]]);
				}
		}
		if(i>lastDay && (i==35 || i == 28)) {	// do not show last row if not needed
			break;
		}
		
		if(i<startDay || i>lastDay) {	// show blank cells before and after month
			if(i < startDay){
				content += "<td class=\"diffMonth\"><span class=\"days\">" + getPrevMonthDay(startDay - i) + "</span><br />" + occContent + "</td>\n";
			}else{
				content += "<td class=\"diffMonth\"><span class=\"days\">" + getNextMonthDay(i - lastDay) + "<span><br />" + occContent + "</td>\n";
			}
		}
		else {
			if(!(i%7) || !((i+1)%7) ) {	// get days of the weekend
				if(!(i%7)&& i>0) {
					content += "</tr>\n<tr>\n";
				}
				content += "<td class=\"weekend\"><span class=\"days\">"+curDay+"</span><br />"+occContent+"</td>\n";
			}
			else {
				content += "<td><span class=\"days\">"+curDay+"</span><br />"+occContent+"</td>\n";
			}
		}
	}
	content += "</tr></table>\n";
	content += "</td>\n";
	content += "<td style=\"width:7px; background-image:url(/crp/files/calendar/images/cal_right.gif);\"></td>\n";
	content += "</tr>\n";
	content += "<tr><td colspan=\"3\"><img src=\"/crp/files/calendar/images/cal_bottom.gif\" /></td></tr>\n";
	content += "</table>\n";
	content += getCalendarLegend();
	return content;
}

// creates Event List for the current month
function createList() {
	var startDay = today.getDay();	// first day of the month
	var monLength = monthLength(curMonth, curYear);	// number of days in month
	var lastDay = startDay+monLength-1;	// last day of the month
	monthEvents = new Array();	// array to hold events for current month
	var content = "";
	
	// search through events for current month
	for(i=0;i<eventsArray.length;i++) {
		if(eventsArray[i].startMonth == (curMonth+1) && (eventsArray[i].startYear == curYear)) {
			monthEvents[monthEvents.length] = i;
		}
	}

	content += "<div style=\"width:629px;background-color:#FFF;padding-bottom:30px;\"><table cellpadding=\"0\" cellspacing=\"0\" width=\"578\">";
	content += "<tr>";
	content += "<td style=\"width:428px;\"><span class=\"calTitle\">Event Calendar:</span> <span class=\"calTitleDate\">" + monthsArray[curMonth] + " " + curYear + "</span></td>";
	content += "<td style=\"width:60px;\">";
	content += "<a class=\"button\" href=\"javascript:void(prevList())\" onMouseOut=\"MM_swapImgRestore();\" onMouseOver=\"MM_swapImage('monthPrev','','/crp/files/calendar/images/Arrow_L_Rollover.gif',1);\"><img name=\"monthPrev\" src=\"/crp/files/calendar/images/Arrow_L_Static.gif\" border=\"0\" /></a>";	
	content += "<a class=\"button\" href=\"javascript:void(nextList())\" onMouseOut=\"MM_swapImgRestore();\" onMouseOver=\"MM_swapImage('monthNext','','/crp/files/calendar/images/Arrow_R_Rollover.gif',1);\"><img name=\"monthNext\" src=\"/crp/files/calendar/images/Arrow_R_Static.gif\" border=\"0\" /></a>";
	content += "</td>";
	content += "<td style=\"width:30px; background:#ffffff url(/crp/files/calendar/images/bkg_divideLinevertical.gif) repeat-y center center;\"></td>";
	content += "<td style=\"width:60px;\">";
	content += "<a class=\"button\" href=\"javascript:void(showCal());\" onMouseOut=\"MM_swapImgRestore();\" onMouseOver=\"MM_swapImage('viewCal','','/crp/files/calendar/images/CAL_RollOver.gif',1);\"><img name=\"viewCal\" src=\"/crp/files/calendar/images/CAL_OFF.gif\" border=\"0\" /></a>";
	content += "<a class=\"button\" href=\"javascript:void(showList());\"><img name=\"viewList\" src=\"/crp/files/calendar/images/List_ON.gif\" border=\"0\" /></a>";
	content += "</td>";
	content += "</tr>";
	content += "</table></div>";
	content += "<table cellpadding=\"0\" cellspacing=\"0\" style=\"width:600px;\">";	
	content += "<tr>";	
	content += "<td style=\"width:400px\">";	
	for(j=0;j<monthEvents.length;j++) {
		content += getListEntryStr(monthEvents[j], eventsArray[monthEvents[j]]);
		if(j < (monthEvents.length - 1)){
			content += "<div class=\"listSeparator\">&nbsp;</div>";
		}
	}

	if(monthEvents.length == 0){ 
		content += "<div class=\"listEvent\" style=\"min-height:350px;background-color:#FFF;\">No Events This Month</div>";
	}

	content += "</td>";	
	content += "<td style=\"width:30px; background:#ffffff url(/crp/files/calendar/images/bkg_divideLinevertical.gif) repeat-y center center;\"></td>";	
	content += "<td style=\"width:170px;\" valign=\"top\">" + getListLegend() + "</td>";	
	content += "</tr>";
	content += "</table>";		
	return content;
}


function getCalendarEntryStr(id, eventItem)
{
	var sContent = "";
	var sImg = "";
	var sLinkClass = "";
	if(eventItem.type == "Economic Development")
	{//Blue
		sImg = "calendarBlue.gif";
		sLinkClass = "calBlue";
	}
	else if(eventItem.type == "Regional Geographic Information Systems")
	{//Beige
		sImg = "calendarBeige.gif";
		sLinkClass = "calBeige";
	}
	else if(eventItem.type == "Regional Land Use Plan")
	{//Green
		sImg = "calendarGreen.gif";
		sLinkClass = "calGreen";
	}
	else if(eventItem.type == "Regional Water &amp; Waste Servicing")
	{//Red
		sImg = "calendarRed.gif";
		sLinkClass = "calRed";
	}
	else if(eventItem.type == "Regional Waste Management")
	{//orange
		sImg = "calendarOrange.gif";
		sLinkClass = "calOrange";
	}	
	else if(eventItem.type == "Regional Transportation Planning")
	{//Gray
		sImg = "calendarGray.gif";
		sLinkClass = "calGray";
	}
	else if(eventItem.type == "Miscellaneous")
	{//Purple
		sImg = "calendarPurple.gif";		
		sLinkClass = "calPurple";	
	}
	sContent += "<div class=\"event\">";
	sContent += "<table class=\"event\" cellpadding=\"0\" cellspacing=\"0\"><tr>";
	sContent += "<td valign=\"top\" style=\"width:8px; padding-top:2px; \"><img src=\"/crp/files/calendar/images/" + sImg + "\" /></td>";
	sContent += "<td valign=\"top\" style=\"width:auto; \"><a class=\"" + sLinkClass +"\" href=\"#Calendar\" onclick=\"return !showPopup('cal" + id + "', event);\">" + eventItem.title + "</a></td>";
	sContent += "</tr></table>";
	sContent += "<div id=\"cal" + id + "\" onclick=\"event.cancelBubble = true;\" class=\"popup\">";
	//sContent += "<div class=\"popupArrow\"><img src=\"/crp/files/calendar/images/arrowUp.gif\" /></div>";
	sContent += "<div class=\"popupBorder\">";
	sContent += "<div class=\"popupDetails\">";
	sContent += "<a href=\"#\" onclick=\"hideCurrentPopup(); return false;\" class=\"popupClose\"><img border=\"0\" src=\"/crp/files/calendar/images/x.gif\" /></a>";
	sContent += "<div class=\"" + sLinkClass + "\">" + eventItem.title + "</div>"; 
	sContent += "<br />";
	sContent += "<table cellpadding=\"0\" cellspacing=\"0\" class=\"event\">";
	if(eventItem.endDate != null){
		sContent += "<tr><td style=\"width:auto;\" valign=\"top\"><strong>Date:</strong>&nbsp;</td><td style=\"width:auto;\">" + monthsArray[eventItem.origStartDate.getMonth()] + " " + eventItem.origStartDate.getDate() + " - " + monthsArray[eventItem.origEndDate.getMonth()] + " " + eventItem.origEndDate.getDate() + "</td></tr>";
	}
	sContent += "<tr><td style=\"width:auto;\" valign=\"top\"><strong>Time:</strong>&nbsp;</td><td style=\"width:auto;\">" + eventItem.startTime + ((eventItem.endTime != '') ? " - " + eventItem.endTime : "") + "</td></tr>";
	sContent += "<tr><td style=\"width:auto;\" valign=\"top\"><strong>Location:</strong>&nbsp;</td><td style=\"width:auto;\">" + eventItem.evtLocation + "</td></tr>";
	sContent += "<tr><td style=\"width:auto;\" valign=\"top\"><strong>Address:</strong>&nbsp;</td><td style=\"width:auto;\"><div>" + eventItem.address + "</div><div>" + eventItem.city + " " + eventItem.province + "</div></td></tr>";
	sContent += "</table>";
	if((eventItem.url1 != "" && eventItem.url1Title != "")  || (eventItem.url2 != "" && eventItem.url2Title != "") || (eventItem.url3 != "" && eventItem.url3Title != "")){
		sContent += "<div class=\"divideLine\">&nbsp;</div>";
		sContent += "<div><b>Documents:</b></div>";
		if(eventItem.url1 != "" && eventItem.url1Title != "")
			sContent += "<div class=\"pdfDownload\"><a target=\"_blank\" href=\"" + eventItem.url1 + "\">" + eventItem.url1Title + "</a></div>";
		if(eventItem.url2 != "" && eventItem.url2Title != "")
			sContent += "<div class=\"pdfDownload\"><a target=\"_blank\" href=\"" + eventItem.url2 + "\">" + eventItem.url2Title + "</a></div>";
		if(eventItem.url3 != "" && eventItem.url3Title != "")
			sContent += "<div class=\"pdfDownload\"><a target=\"_blank\" href=\"" + eventItem.url3 + "\">" + eventItem.url3Title + "</a></div>";
	}
	sContent += "</div></div><img src=\"/crp/files/calendar/images/shadow_bottom.gif\" /></div>";	
	sContent += "</div>";
	return sContent;
}

function getListEntryStr(id, eventItem)
{
	var sContent = "";
	var sImg = "";
	var sLinkClass = "";
	if(eventItem.type == "Economic Development")
	{//Blue
		sImg = "glossaryBlue.gif";
		sLinkClass = "calBlue";
	}
	else if(eventItem.type == "Regional Geographic Information Systems")
	{//Beige
		sImg = "glossaryBeige.gif";
		sLinkClass = "calBeige";
	}
	else if(eventItem.type == "Regional Land Use Plan")
	{//Green
		sImg = "glossaryGreen.gif";
		sLinkClass = "calGreen";
	}
	else if(eventItem.type == "Regional Water &amp; Waste Servicing")
	{//Red
		sImg = "glossaryRed.gif";
		sLinkClass = "calRed";
	}
	else if(eventItem.type == "Regional Waste Management")
	{//orange
		sImg = "glossaryOrange.gif";
		sLinkClass = "calOrange";
	}	
	else if(eventItem.type == "Regional Transportation Planning")
	{//Gray
		sImg = "glossaryGray.gif";
		sLinkClass = "calGray";
	}
	else if(eventItem.type == "Miscellaneous")
	{//Purple
		sImg = "glossaryPurple.gif";		
		sLinkClass = "calPurple";	
	}

	var occDate = new Date();
	occDate.setDate(eventItem.startDay);
	occDate.setMonth(eventItem.startMonth - 1);
	occDate.setFullYear(eventItem.startYear);

	sContent += "<div class=\"listEvent\">";
	sContent += "<div style=\"padding-bottom:5px;\">" + daysArray[occDate.getDay()] + " " + monthsArray[curMonth] + " " + eventItem.startDay + "</div>";
	sContent += "<table class=\"event\" cellpadding=\"0\" cellspacing=\"0\"><tr>";
	sContent += "<td style=\"width:15px; padding-top:2px; \"><img src=\"/crp/files/calendar/images/" + sImg + "\" /></td>";
	sContent += "<td style=\"width:auto; \"><span class=\"" + sLinkClass +"\">" + eventItem.title + "</span></td>";
	sContent += "</tr></table>";
	sContent += "<br />";
	sContent += "<div class=\"listDetails\">";
	sContent += "<table cellpadding=\"0\" cellspacing=\"0\" class=\"event\">";
	sContent += "<tr><td style=\"width:auto;\" valign=\"top\"><strong>Time:</strong>&nbsp;</td><td style=\"width:auto;\">" + eventItem.startTime + " - " + eventItem.endTime + "</td></tr>";
	sContent += "<tr><td style=\"width:auto;\" valign=\"top\"><strong>Location:</strong>&nbsp;</td><td style=\"width:auto;\">" + eventItem.evtLocation + "</td></tr>";
	sContent += "<tr><td style=\"width:auto;\" valign=\"top\"><strong>Address:</strong>&nbsp;</td><td style=\"width:auto;\"><div>" + eventItem.address + "</div><div>" + eventItem.city + " " + eventItem.province + "</div></td></tr>";
	sContent += "</table>";
	if((eventItem.url1 != "" && eventItem.url1Title != "") || (eventItem.url2 != "" && eventItem.url2Title != "") || (eventItem.url3 != "" && eventItem.url3Title != "")){
		sContent += "<br />";		
		sContent += "<div style=\"padding-bottom:5px;\"><b>Documents:</b></div>";
		if(eventItem.url1 != "" && eventItem.url1Title != "")
			sContent += "<div class=\"pdfDownload\"><a target=\"_blank\" href=\"" + eventItem.url1 + "\">" + eventItem.url1Title + "</a></div>";
		if(eventItem.url2 != "" && eventItem.url2Title != "")
			sContent += "<div class=\"pdfDownload\"><a target=\"_blank\" href=\"" + eventItem.url2 + "\">" + eventItem.url2Title + "</a></div>";
		if(eventItem.url3 != "" && eventItem.url3Title != "")
			sContent += "<div class=\"pdfDownload\"><a target=\"_blank\" href=\"" + eventItem.url3 + "\">" + eventItem.url3Title + "</a></div>";
	}
	sContent += "</div>";	
	sContent += "</div>";	

	return sContent;
}

function getCalendarLegend(){
	var sContent = "";
	sContent += "<div style=\"width:629px;\">";
	sContent += "<img src=\"/crp/files/calendar/images/Sub_CalLegend.gif\" style=\"padding-bottom:20px;\" />";
	sContent += "<table cellpadding=\"0\" cellspacing=\"0\">";
	sContent += "<tr style=\"padding-bottom:10px;\">";
	sContent += "<td valign=\"top\" style=\"width:15px; padding-top:2px; \"><img src=\"/crp/files/calendar/images/glossaryGreen.gif\"></td><td valign=\"top\" style=\"width:142px;\">Regional Land Use Plan</td>";
	sContent += "<td valign=\"top\" style=\"width:15px; padding-top:2px; padding-left:15px;\"><img src=\"/crp/files/calendar/images/glossaryBlue.gif\"></td><td valign=\"top\" style=\"width:142px;\">Economic Development</td>";
	sContent += "<td valign=\"top\" style=\"width:15px; padding-top:2px; padding-left:15px;\"><img src=\"/crp/files/calendar/images/glossaryRed.gif\"></td><td valign=\"top\" style=\"width:142px;\">Regional Water & Waste Water Servicing</td>";
	sContent += "<td valign=\"top\" style=\"width:15px; padding-top:2px; padding-left:15px;\"><img src=\"/crp/files/calendar/images/glossaryBeige.gif\"></td><td valign=\"top\" style=\"width:142px;\">Regional GIS</td>";
	sContent += "</tr><tr>";	
	sContent += "<td valign=\"top\" style=\"width:15px; padding-top:2px;\"><img src=\"/crp/files/calendar/images/glossaryGray.gif\"></td><td valign=\"top\" style=\"width:142px;\">Regional Transportation Planning</td>";
	sContent += "<td valign=\"top\" style=\"width:15px; padding-top:2px; padding-left:15px;\"><img src=\"/crp/files/calendar/images/glossaryOrange.gif\"></td><td valign=\"top\" style=\"width:142px;\">Regional Waste Management</td>";
	sContent += "<td valign=\"top\" style=\"width:15px; padding-top:2px; padding-left:15px;\"><img src=\"/crp/files/calendar/images/glossaryPurple.gif\"></td><td valign=\"top\" style=\"width:142px;\">CRP Meeting & Events</td>";
	sContent += "</tr>";
	sContent += "</table>";
	sContent += "</div>";
	return sContent;
}

function getListLegend(){
	var sContent = "";
	sContent += "<div style=\"\">";
	sContent += "<img src=\"/crp/files/calendar/images/Sub_CalLegend.gif\" style=\"padding-bottom:5px;\" />";
	sContent += "<div class=\"divideLine\">&nbsp;</div>";
	sContent += "<table>";
	sContent += "<tr><td style=\"vertical-align:top; width:15px; padding-top:5px;\"><img src=\"/crp/files/calendar/images/glossaryGreen.gif\" alt=\"\" /></td><td>Regional Land Use Plan</td></tr>";
	sContent += "<tr><td></td></tr>";
	sContent += "<tr><td style=\"vertical-align:top; width:15px; padding-top:5px;\"><img src=\"/crp/files/calendar/images/glossaryBlue.gif\" alt=\"\" /></td><td>Economic Development</td></tr>";
	sContent += "<tr><td></td></tr>";
	sContent += "<tr><td style=\"vertical-align:top; width:15px; padding-top:5px;\"><img src=\"/crp/files/calendar/images/glossaryRed.gif\" alt=\"\" /></td><td>Regional Water & Waste Water Servicing</td></tr>";
	sContent += "<tr><td></td></tr>";
	sContent += "<tr><td style=\"vertical-align:top; width:15px; padding-top:5px;\"><img src=\"/crp/files/calendar/images/glossaryBeige.gif\" alt=\"\" /></td><td>Regional GIS</td></tr>";
	sContent += "<tr><td></td></tr>";
	sContent += "<tr><td style=\"vertical-align:top; width:15px; padding-top:5px;\"><img src=\"/crp/files/calendar/images/glossaryGray.gif\" alt=\"\" /></td><td>Regional Transportation Planning</td></tr>";
	sContent += "<tr><td></td></tr>";
	sContent += "<tr><td style=\"vertical-align:top; width:15px; padding-top:5px;\"><img src=\"/crp/files/calendar/images/glossaryOrange.gif\" alt=\"\" /></td><td>Regional Waste Management</td></tr>";
	sContent += "<tr><td></td></tr>";
	sContent += "<tr><td style=\"vertical-align:top; width:15px; padding-top:5px;\"><img src=\"/crp/files/calendar/images/glossaryPurple.gif\" alt=\"\" /></td><td>CRP Meeting & Events</td></tr>";
	sContent += "</table>";

	//sContent += "<ul style=\"list-style-position: outside; padding-top:5px;\">";
	//sContent += "<li style=\"list-style-image:url(/crp/files/calendar/images/glossaryGreen.gif);\" >Regional Land Use Plan</li>";
	//sContent += "<li style=\"list-style-image:url(/crp/files/calendar/images/glossaryBlue.gif); \">Economic Development</li>";
	//sContent += "<li style=\"list-style-image:url(/crp/files/calendar/images/glossaryRed.gif);\">Regional Water & Waste Water Servicing</li><br/>";
	//sContent += "<li style=\"list-style-image:url(/crp/files/calendar/images/glossaryBeige.gif); \">Regional GIS</li><br/>";
	//sContent += "<li style=\"list-style-image:url(/crp/files/calendar/images/glossaryGray.gif);\">Regional Transportation Planning</li><br/>";
	//sContent += "<li style=\"list-style-image:url(/crp/files/calendar/images/glossaryOrange.gif);\">Regional Waste Management</li><br/>";
	//sContent += "<li style=\"list-style-image:url(/crp/files/calendar/images/glossaryPurple.gif);\">CRP Meeting & Events</li><br/>";
	//sContent += "</ul>";
	sContent += "</div>";

	return sContent;
}

function getPrevMonthDay(offset)
{
	var prevMonth = curMonth - 1;
	var prevYear = curYear;
	if(prevMonth<0) {
		prevMonth = 11;
		prevYear = prevYear - 1;
	}

	var prevMonLength = monthLength(prevMonth, prevYear);
	
	return (prevMonLength - offset) + 1;	
}
function getNextMonthDay(offset)
{
	return offset;
}

// get length of month
function monthLength(monthToCheck, yearToCheck) {
	monLength = 31;
	if(monthToCheck == 3 || monthToCheck == 5 || monthToCheck == 8 || monthToCheck == 10) monLength = 30;
	if(monthToCheck == 1) {
		if(yearToCheck%4) {
			monLength = 28;
		}
		else {
			monLength = 29;
		}
	}
	return monLength;
}

function droplists() {
	content = "<form name=\"calNav\" method=\"post\" action=\"\">\n";
	content += "<select name=\"month\">\n";
	for(i=0;i<12;i++) {
		content += "<option value=\""+i +"\"";
		if(i == curMonth) {
			content += " selected=\"selected\"";
		}
		content += ">" + monthsArray[i] + "</option>\n";
	}
	content += "</select> <select name=\"year\">\n";
	for(i=(nowYear-prevYears);i<=(nowYear+futureYears);i++) {
		content += "<option value=\""+i +"\"";
		if(i == curYear) {
			content += " selected=\"selected\"";
		}
		content += ">" + i + "</option>\n";
	}
	content += "</select>\n<input type=\"button\" value=\"Go\" onclick=\"newMonth()\" />\n";
	content += "</form>\n";
	return content;
}

function newMonth() {
	var mon = document.calNav.month.selectedIndex;
	curMonth = parseInt(document.calNav.month.options[mon].value);
	var yr = document.calNav.year.selectedIndex;
	curYear = parseInt(document.calNav.year.options[yr].value);
	today.setMonth(curMonth);
	today.setFullYear(curYear);
	document.getElementById("showCal").innerHTML = droplists() + createMonth();
}

// goto previous month
function prev() {
	curMonth -= 1;
	if(curMonth<0) {
		curMonth=11;
		if(curYear>(nowYear-prevYears)) {
			curYear -= 1;
		}
	}
	today.setMonth(curMonth);
	today.setFullYear(curYear);
	//document.getElementById("showCal").innerHTML = droplists() + createMonth();
	document.getElementById("showCal").innerHTML = createMonth();
}

// goto next month
function next() {
	curMonth += 1;
	if(curMonth>11) {
		curMonth=0;
		if(curYear<(nowYear+futureYears)) {
			curYear += 1;
		}
	}
	today.setMonth(curMonth);
	today.setFullYear(curYear);
	//document.getElementById("showCal").innerHTML = droplists() + createMonth();
	document.getElementById("showCal").innerHTML = createMonth();
}

// goto previous month
function prevList() {
	curMonth -= 1;
	if(curMonth<0) {
		curMonth=11;
		if(curYear>(nowYear-prevYears)) {
			curYear -= 1;
		}
	}
	today.setMonth(curMonth);
	today.setFullYear(curYear);
	//document.getElementById("showCal").innerHTML = droplists() + createMonth();
	document.getElementById("showCal").innerHTML = createList();
}

// goto next month
function nextList() {
	curMonth += 1;
	if(curMonth>11) {
		curMonth=0;
		if(curYear<(nowYear+futureYears)) {
			curYear += 1;
		}
	}
	today.setMonth(curMonth);
	today.setFullYear(curYear);
	//document.getElementById("showCal").innerHTML = droplists() + createMonth();
	document.getElementById("showCal").innerHTML = createList();
}

function showCal(){
	today = new Date();
	nowMonth = today.getMonth();
	nowYear = today.getFullYear();
	curMonth = nowMonth;
	curYear = nowYear;
	today.setDate(1);	// set to first day of the month
	document.getElementById("showCal").innerHTML = createMonth();
}
function showList(){
	today = new Date();
	nowMonth = today.getMonth();
	nowYear = today.getFullYear();
	curMonth = nowMonth;
	curYear = nowYear;
	today.setDate(1);	// set to first day of the month
	document.getElementById("showCal").innerHTML = createList();
}
