<!--

// Clock calculates daylight savings time for Virginia from 2004 to 2008.
// Added Day/Night feature (AM/PM) 
// Added EST/EDT

function simpleFindObj(name, inLayer) 
{
	return document[name] || (document.all && document.all[name])
	|| (document.getElementById && document.getElementById(name))
	|| (document.layers && inLayer && document.layers[inLayer].document[name]);
}
function divWrite(div, input)
{
	var div_x = simpleFindObj(div);
	input = input;
	if (div_x && div_x.innerHTML) 
	{
		div_x.innerHTML = input;
	}
	else if (div_x && div_x.document) 
	{
		div_x.document.writeln(input);
		div_x.document.close();
	}
}
function localDisplay(local) 
{
	divWrite("layer1", local);
}
function UTCDisplay(utc) 
{
	divWrite("layer2", utc);
}
function stop()
{
	if(clockRunning) clearTimeout(clockID);
	clockRunning = false;
}
function makeGMT (day, date, month, year, hour, minute, second)
{
	if (day == 0)
	{
		day = "Sunday";
	}
	else if (day == 1)
	{
		day = "Monday";
	}
	else if (day == 2)
	{
		day = "Tuesday";
	}
	else if (day == 3)
	{
		day = "Wednesday";
	}
	else if (day == 4)
	{
		day = "Thursday";
	}
	else if (day == 5)
	{
		day = "Friday";
	}
	else if (day == 6)
	{
		day = "Saturday";
	}
	if (month == 0)
	{
		month = "January";
	}
	else if (month == 1)
	{
		month = "February";
	}
	else if (month == 2)
	{
		month = "March";
	}
	else if (month == 3)
	{
		month = "April";
	}
	else if (month == 4)
	{
		month = "May";
	}
	else if (month == 5)
	{
		month = "June";
	}
	else if (month == 6)
	{
		month = "July";
	}
	else if (month == 7)
	{
		month = "August";
	}
	else if (month == 8)
	{
		month = "September";
	}
	else if (month == 9)
	{
		month = "October";
	}
	else if (month == 10)
	{
		month = "November";
	}
	else if (month == 11)
	{
		month = "December";
	}

	//if (hour < 10)
	//{
		//hour = ("0" + hour);
	//}

	if (minute < 10)
	{
		minute = ("0" + minute);
	}

	if (second < 10)
	{
		second = ("0" + second);
	}

	UTCDisplay(day + ", " + date + " " + month + " " + year + "  " + hour + ":" + minute + ":" + second);
}
function makeLocal(day, date, month, year, hour, minute, second)
{
	if (day == 0)
	{
		day = "Sunday";
	}
	else if (day == 1)
	{
		day = "Monday";
	}
	else if (day == 2)
	{
		day = "Tuesday";
	}
	else if (day == 3)
	{
		day = "Wednesday";
	}
	else if (day == 4)
	{
		day = "Thursday";
	}
	else if (day == 5)
	{
		day = "Friday";
	}
	else if (day == 6)
	{
		day = "Saturday";
	}
	if (month == 0)
	{
		month = "January";
	}
	else if (month == 1)
	{
		month = "February";
	}
	else if (month == 2)
	{
		month = "March";
	}
	else if (month == 3)
	{
		month = "April";
	}
	else if (month == 4)
	{
		month = "May";
	}
	else if (month == 5)
	{
		month = "June";
	}
	else if (month == 6)
	{
		month = "July";
	}
	else if (month == 7)
	{
		month = "August";
	}
	else if (month == 8)
	{
		month = "September";
	}
	else if (month == 9)
	{
		month = "October";
	}
	else if (month == 10)
	{
		month = "November";
	}
	else if (month == 11)
	{
		month = "December";
	}

	//if (hour < 10)
	//{
		//hour = ("0" + hour);
	//}

	if (minute < 10)
	{
		minute = ("0" + minute);
	}

	if (second < 10)
	{
		second = ("0" + second);
	}
	if (hour > 12) {
		DN = " PM ";
		hour = hour - 12;
	}
	localDisplay(month + " " + date + ", " + year + "<BR>" + day + "<BR>" + hour + ":" + minute + ":" + second + DN + TimeZone);

}
function display() 
{
	var ltime = new Date(); 
	var ltime_unix = ltime.getTime();
	ltime = new Date(ltime_unix-diff);
	ServerDSTCheck = ltime.getTime();
	
	var UTCDay = ltime.getUTCDay();
	var UTCDate = ltime.getUTCDate();
	var UTCMonth = ltime.getUTCMonth();
	var UTCYear = ltime.getUTCFullYear();
	var UTCHours = ltime.getUTCHours();
	var UTCMinutes = ltime.getUTCMinutes();
	var UTCSeconds = ltime.getUTCSeconds();
	makeGMT (UTCDay, UTCDate, UTCMonth, UTCYear, UTCHours, UTCMinutes, UTCSeconds);

	var Spring2004 = new Date();
	Spring2004.setTime(Date.UTC(2004, 3, 4, 7, 0, 0));
	GoSpring2004 = Spring2004.getTime();

	var Fall2004 = new Date();
	Fall2004.setTime(Date.UTC(2004, 9, 31, 6, 0, 0));
	GoFall2004 = Fall2004.getTime();

	var Spring2005 = new Date();
	Spring2005.setTime(Date.UTC(2005, 3, 3, 7, 0, 0));
	GoSpring2005 = Spring2005.getTime();

	var Fall2005 = new Date();
	Fall2005.setTime(Date.UTC(2005, 9, 30, 6, 0, 0));
	GoFall2005 = Fall2005.getTime();

	var Spring2006 = new Date();
	Spring2006.setTime(Date.UTC(2006, 3, 2, 7, 0, 0));
	GoSpring2006 = Spring2006.getTime();

	var Fall2006 = new Date();
	Fall2006.setTime(Date.UTC(2006, 9, 29, 6, 0, 0));
	GoFall2006 = Fall2006.getTime();

	var Spring2007 = new Date();
	Spring2007.setTime(Date.UTC(2007, 3, 1, 7, 0, 0));
	GoSpring2007 = Spring2007.getTime();

	var Fall2007 = new Date();
	Fall2007.setTime(Date.UTC(2007, 9, 28, 6, 0, 0));
	GoFall2007 = Fall2007.getTime();

	var Spring2008 = new Date();
	Spring2008.setTime(Date.UTC(2008, 3, 6, 7, 0, 0));
	GoSpring2008 = Spring2008.getTime();

	var Fall2008 = new Date();
	Fall2008.setTime(Date.UTC(2008, 9, 26, 6, 0, 0));
	GoFall2008 = Fall2008.getTime();
	
	if (ServerDSTCheck >= GoSpring2004 && ServerDSTCheck < GoFall2004)
	{
		tzone = -14400000;
		TimeZone = "EDT";
	}
	
	else if (ServerDSTCheck >= GoFall2004 && ServerDSTCheck < GoSpring2005)
	{
		tzone = -18000000;
		TimeZone = "EST";
	}

	else if (ServerDSTCheck >= GoSpring2005 && ServerDSTCheck < GoFall2005)
	{
		tzone = -14400000;
		TimeZone = "EDT";
	}

	else if (ServerDSTCheck >= GoFall2005 && ServerDSTCheck < GoSpring2006)
	{
		tzone = -18000000;
		TimeZone = "EST";
	}

	else if (ServerDSTCheck >= GoSpring2006 && ServerDSTCheck < GoFall2006)
	{
		tzone = -14400000;
		TimeZone = "EDT";
	}
	
	else if (ServerDSTCheck >= GoFall2006 && ServerDSTCheck < GoSpring2007)
	{
		tzone = -18000000;
		TimeZone = "EST";
	}

	else if (ServerDSTCheck >= GoSpring2007 && ServerDSTCheck < GoFall2007)
	{
		tzone = -14400000;
		TimeZone = "EDT";
	}

	else if (ServerDSTCheck >= GoFall2007 && ServerDSTCheck < GoSpring2008)
	{
		tzone = -18000000;
		TimeZone = "EST";
	}

	else if (ServerDSTCheck >= GoSpring2008 && ServerDSTCheck < GoFall2008)
	{
		tzone = -14400000;
		TimeZone = "EDT";
	}
	qtime = new Date(ltime_unix-diff+tzone);
	var qDay = qtime.getUTCDay();
	var qDate = qtime.getUTCDate();
	var qMonth = qtime.getUTCMonth();
	var qYear = qtime.getUTCFullYear();
	var qHours = qtime.getUTCHours();
	var qMinutes = qtime.getUTCMinutes();
	var qSeconds = qtime.getUTCSeconds();
	makeLocal (qDay, qDate, qMonth, qYear, qHours, qMinutes, qSeconds);
	var wtime = ltime_unix - diff;
	clockID = setTimeout('display()',1000);
	clockRunning = true;
}
function runClock() 
{
	stop();
	display();
}
