// JavaScript Document


			/* ------------------------------------------------------- */
			/* Function to get the number of days in a specific month. */
			/* ------------------------------------------------------- */
			function GetDaysInMonth(iMonth, iYear) 
			{
				for( x = 31; x > 27; x-- )
				{
					var dPrevDate = new Date(iYear, iMonth-1, x);
					if( dPrevDate.getDate() == x )
						break;
				}
				return dPrevDate.getDate();
			}
				
			/* ------------------------------------------------- */
			/* Function to get calendar parameters for building. */
			/* ------------------------------------------------- */
			function BuildCal(iYear, iMonth) 
			{
				var aMonth = new Array();
				aMonth[0] = new Array(7);
				aMonth[1] = new Array(7);
				aMonth[2] = new Array(7);
				aMonth[3] = new Array(7);
				aMonth[4] = new Array(7);
				aMonth[5] = new Array(7);
				aMonth[6] = new Array(7);
				
				var dCalDate = new Date(iYear, iMonth-1, 1);
				var iDayOfFirst = dCalDate.getDay();
				var iDaysInMonth = GetDaysInMonth(iMonth, iYear);
				var iVarDate = 1;
				var i, d, w;
				
				aMonth[0][0] = "&nbsp;Su&nbsp;";
				aMonth[0][1] = "&nbsp;Mo&nbsp;";
				aMonth[0][2] = "&nbsp;Tu&nbsp;";
				aMonth[0][3] = "&nbsp;We&nbsp;";
				aMonth[0][4] = "&nbsp;Th&nbsp;";
				aMonth[0][5] = "&nbsp;Fr&nbsp;";
				aMonth[0][6] = "&nbsp;Sa&nbsp;";
				
				for (d = iDayOfFirst; d < 7; d++) 
				{
					aMonth[1][d] = iVarDate;
					iVarDate++;
				}
				
				for (w = 2; w < 7; w++) 
				{
					for (d = 0; d < 7; d++) 
					{
						if (iVarDate <= iDaysInMonth) 
						{
							aMonth[w][d] = iVarDate;
							iVarDate++;
						}
					}
				}
				return aMonth;
			}

			/* ---------------------------------------------- */
			/* Function to get the proper display month name. */
			/* ---------------------------------------------- */
			function GetMonthName(iMonth)
			{
				var strMonth = "";

				if( iMonth == 1 )
					strMonth = "January";
				else if( iMonth == 2 )
					strMonth = "February";
				else if( iMonth == 3 )
					strMonth = "March";
				else if( iMonth == 4 )
					strMonth = "April";
				else if( iMonth == 5 )
					strMonth = "May";
				else if( iMonth == 6 )
					strMonth = "June";
				else if( iMonth == 7 )
					strMonth = "July";
				else if( iMonth == 8 )
					strMonth = "August";
				else if( iMonth == 9 )
					strMonth = "September";
				else if( iMonth == 10 )
					strMonth = "October";
				else if( iMonth == 11 )
					strMonth = "November";
				else if( iMonth == 12 )
					strMonth = "December";
				
				return strMonth;
			}

			/* ----------------------------------------------------- */
			/* Function that draws a calendar for a specified month. */
			/* ----------------------------------------------------- */
			function DrawCal(dInputDate) 
			{
				var dArchiveStartDate = new Date("10/14/2005");
				var dExpirationDaysAgo = new Date("2/1/1906");
				if( dExpirationDaysAgo > dArchiveStartDate )
					dArchiveStartDate = dExpirationDaysAgo;
					
				var iYear = dInputDate.getFullYear()+2;
				var iMonth = 11;
				var iDay = dInputDate.getDate();

				// ----------------------------------
				// -- Figure the two alternate months
				// ----------------------------------
				var dThisMonth = new Date();
				iThisMonth = dThisMonth.getMonth()+1;
				iThisYear = dThisMonth.getFullYear();

				if( iMonth == 1 )
				{
					iLastMonth = 12;
					iLastYear = iYear - 1;
					iLastDay = 31;
				}
				else
				{
					iLastMonth = iMonth - 1;
					iLastYear = iYear;
					iLastDay = GetDaysInMonth(iLastMonth, iLastYear);
				}
						
				if( iMonth == 12 )
				{
					iNextMonth = 1;
					iNextYear = iYear + 1;
					iNextDay = 1;
				}
				else
				{
					iNextMonth = iMonth + 1;
					iNextYear = iYear;
					iNextDay = 1;
				}
						
				if( iLastDay < 10 )
					strLastDay = "0" + iLastDay;
				else
					strLastDay = "" + iLastDay;

				if( iNextDay < 10 )
					strNextDay = "0" + iNextDay;
				else
					strNextDay = "" + iNextDay;

				var strLastDayOfLastMonth = iLastMonth + "/" + strLastDay + "/" + iLastYear;
				var dLastMonth = new Date(strLastDayOfLastMonth)
				if( dLastMonth < dArchiveStartDate )
					bShowLastMonth = false
				else
					bShowLastMonth = true
				
				var strFirstDayOfNextMonth = iNextMonth + "/" + strNextDay + "/" + iNextYear;
				var dNextMonth = new Date(strFirstDayOfNextMonth)
				if( dNextMonth > dThisMonth )
					bShowNextMonth = false
				else
					bShowNextMonth = true
				
				/* ----------------------------------- */
				/* Draw the beginning of the calendar. */
				/* ----------------------------------- */
				var myMonth;
				myMonth = BuildCal(iYear, iMonth);
			
				document.write("<form name='CalendarDate'>");
				document.write("<table border='1' cellPadding='0' cellSpacing='0' borderColor='black' bgColor='#FFFFFF'>")
				document.write("<tr>");
				document.write("<td colspan='7' align='center' bgcolor='#B7CC97' class='lgyCalendarTitle'>" + GetMonthName(iMonth) + "</td>");
				document.write("</tr>");
				
				/* ----------------------------- */
				/* Display the days of the week. */
				/* ----------------------------- */
				document.write("<tr>");
				document.write("<td align='center' bgcolor='#CCCCCC' class='lgyCalendar'>" + myMonth[0][0] + "</td>");
				document.write("<td align='center' bgcolor='#CCCCCC' class='lgyCalendar'>" + myMonth[0][1] + "</td>");
				document.write("<td align='center' bgcolor='#CCCCCC' class='lgyCalendar'>" + myMonth[0][2] + "</td>");
				document.write("<td align='center' bgcolor='#CCCCCC' class='lgyCalendar'>" + myMonth[0][3] + "</td>");
				document.write("<td align='center' bgcolor='#CCCCCC' class='lgyCalendar'>" + myMonth[0][4] + "</td>");
				document.write("<td align='center' bgcolor='#CCCCCC' class='lgyCalendar'>" + myMonth[0][5] + "</td>");
				document.write("<td align='center' bgcolor='#CCCCCC' class='lgyCalendar'>" + myMonth[0][6] + "</td>");
				document.write("</tr>");
				
				/* -------------------------------*/
				/* Display the days of the month. */
				/* -------------------------------*/
				for (w = 1; w < 7; w++) 
				{
					document.write("<tr>")
					for (d = 0; d < 7; d++) 
					{
						if (!isNaN(myMonth[w][d])) 
						{
							var strThisDate = iMonth + "/" + myMonth[w][d] + "/" + iYear;
							var dThisDate = new Date(strThisDate);
							
							if( dThisDate < dArchiveStartDate || dThisDate > dThisMonth )
							{
								document.write("<td id='calCell' width='25' height='20' align='right' valign='top'>");
								document.write("<font id='calDateText' class='lgyCalendar'>" + myMonth[w][d] + "</font>");
							}
							else 
							{
								if( myMonth[w][d] == iDay.toString() )
									document.write("<td id='calCell' align='right' valign='top' width='25' height='20' onclick=SetSelectedDay(\"" + strThisDate + "\")>");
								else
									document.write("<td id='calCell' align='right' valign='top' width='25' height='20' onclick=SetSelectedDay(\"" + strThisDate + "\")>");
									
								document.write("<font id='calDateText' class='lgyCalendar'><a href='javascript:SetSelectedDay(\"" + strThisDate + "\")'>" + myMonth[w][d] + "</a></font>");
							}
						} 
						else 
						{
							document.write("<td id='calCell' align='right' valign='top' width='25' height='20'>");
							document.write("<font id='calDateText' align='right' valign='top' width='25' height='20'>&nbsp;</font>");
						}
						document.write("</td>")
					}
					document.write("</tr>");
				}
				document.write("</table>");
				
				document.write("<table width='190' border='0' cellPadding='0' cellSpacing='0'>")
				document.write("<tr><td colspan='2' height='5'></td></tr>");
				/*  Keep this code out for now
				document.write("<tr>");
				document.write("<td align='left' width='50%' class='lgyLink'>");
				if( bShowLastMonth == true )
					document.write("<a href='javascript:SetSelectedDay(\"" + strLastDayOfLastMonth + "\")'>" + GetMonthName(iLastMonth) + "</a>");
				else
					document.write("&nbsp;&nbsp;");
				document.write("</td>");
				document.write("<td align='right' width='50%' class='lgyLink'>");
				if( bShowNextMonth == true )
					document.write("<a href='javascript:SetSelectedDay(\"" + strFirstDayOfNextMonth + "\")'>" + GetMonthName(iNextMonth) + "</a>");
				else
					document.write("&nbsp;&nbsp;");
				document.write("</td>");
				document.write("</tr>");
				document.write("<tr><td colspan='2' height='10'></td></tr>");
				*/
				

				document.write("</table>");
				document.write("</form>");
			}
			
			/* --------------------------------------------------------------------- */
			/* Function that calls a rebuild of the calendar for a particular month. */
			/* --------------------------------------------------------------------- */
			function UpdateCal(iYear, iMonth) 
			{
				myMonth = BuildCal(iYear, iMonth);
				objPrevElement.bgColor = "";
				document.all.calSelectedDate.value = "";
				
				for (w = 1; w < 7; w++) 
				{
					for (d = 0; d < 7; d++) 
					{
						if (!isNaN(myMonth[w][d])) 
						{
							calDateText[((7*w)+d)-7].innerText = myMonth[w][d];
						} 
						else 
						{
							calDateText[((7*w)+d)-7].innerText = " ";
						}
					}
				}
			}

			var objPrevElement = new Object();
						
			function SetSelectedDay(strDate)
			{
				
						document.location = "http://www.legacy.com/record-eagle/Obituaries.asp?Page=SearchResults&DateRange=ADHOC&StartDate=" + strDate + "&EndDate=" + strDate;
				
			}
			
			/* -------------------------------------------------------- */
			/* Function that draws a specific calendar for WebTV users. */
			/* -------------------------------------------------------- */
			function DrawWebTvCal(dInputDate) 
			{
				var dDispDate = new Date();
				
				
						var strURL = "http://www.legacy.com/record-eagle/"
				
				
				document.write("<form name='CalendarSearch' method='get' action='" + strURL + "'>")
				document.write("<table width='230' border='0' cellPadding='0' cellSpacing='0' bgColor='white'>")
				document.write("<tr>")
				document.write("	<td>");
				document.write("	</td>");
				document.write("</tr>")
				document.write("</table>")
				document.write("</form>")
			}

			/* -------------------------------- */
			/* Function to display a new month. */
			/* -------------------------------- */
			function DisplayNewMonth()
			{
				var strURL;
				var bSkipJump = false;
				var dArchiveStartDate = new Date("10/14/2005");
				var dExpirationDaysAgo = new Date("2/1/1906");
				if( dExpirationDaysAgo > dArchiveStartDate )
					dArchiveStartDate = dExpirationDaysAgo;
					
				var iArchiveYear = dArchiveStartDate.getFullYear();
				var iArchiveMonth = dArchiveStartDate.getMonth()+1;
				var iArchiveDay = dArchiveStartDate.getDate();
				
				var strInputMonth = document.CalendarDate.CalendarMonth.options[document.CalendarDate.CalendarMonth.selectedIndex].value;
				var strInputYear = document.CalendarDate.CalendarYear.options[document.CalendarDate.CalendarYear.selectedIndex].value;
				
				var dInputDate = new Date(strInputMonth + "/01/" + strInputYear);
				var iInputYear = dInputDate.getFullYear();
				var iInputMonth = dInputDate.getMonth()+1;
				var iInputDay = dInputDate.getDate();

				var dToday = new Date();
				var iTodayYear = dToday.getFullYear();
				var iTodayMonth = dToday.getMonth()+1;
				var iTodayDay = dToday.getDate();
				
				if( iInputYear > iTodayYear || (iInputYear == iTodayYear && iInputMonth > iTodayMonth) )
				{
					iInputMonth = iTodayMonth;
					iInputYear = iTodayYear;
					iInputDay = iTodayDay;
				}
				
				if( iInputYear < iArchiveYear || (iInputYear == iArchiveYear && iInputMonth < iArchiveMonth) )
				{
					iInputMonth = iArchiveMonth;
					iInputYear = iArchiveYear;
					iInputDay = iArchiveDay;
					alert("Calendar dates back to " + iArchiveMonth + "/" + iArchiveDay + "/" + iArchiveYear + ".  Please search by last name for sponsored notices.");
					bSkipJump = true;
				}

				if( !bSkipJump )
				{
					
							strURL = "http://www.legacy.com/record-eagle/Obituaries.asp";
					

					strURL = strURL + "?CalendarDate=" + iInputMonth +
						"/" + iInputDay + "/" + iInputYear;
					document.location = strURL;
				}
				
				return false;
			}



			var strDate = new String('01/06/2007');
			if( strDate != "" )
				var dInputDate = new Date(strDate.toString());
			else
				var dInputDate = new Date();
						
			if( navigator.appName.indexOf("WebTV") != -1 )
			{
				// Using WebTV version 3.0 - draw a simpler calendar
				DrawWebTvCal(dInputDate);
			}
			else
				DrawCal(dInputDate);
