/* xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */
/*                                             */
/* x       LOCK SLIDES BEOFRE EVENT          x */
/*                                             */
/* xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx */


   var conferenceTime = "05/29/2002 08:20:00 EST";		// USE MILITARY TIME

   var today   = new Date();
   var month   = today.getMonth() + 1;
   var year    = (((today.getYear()) < 1000) ? (today.getYear()) + 1900 : (today.getYear()));	// Y2K Fix - older browsers
   var day     = today.getDate();
   
   var hour    = today.getHours();
   var minutes = today.getMinutes();
   var seconds = today.getSeconds();
   
   if(day < 10)   day         = "0" + day;
   //if(hour < 10)  hour 	      = "0" + hour;
   if(month < 10)   month     = "0" + month;
   if(minutes < 10)   minutes = "0" + minutes;
   if(seconds < 10)   seconds = "0" + seconds;


   function currentDate()
	{
	return ((month) + "/" + (day) + "/" + (year));
	}

   function currentTime()
	{
	return ((hour) + ":" + (minutes) + ":" + (seconds));
	}


   /* Cycle thru and check for Daylight Savings Time  */


   function makeArray()
	{
	this[0] = makeArray.arguments.length;
	for (i = 0; i<makeArray.arguments.length; i++)
	this[i+1] = makeArray.arguments[i];
	}

   var daysofmonth   = new makeArray( 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
   var daysofmonthLY = new makeArray( 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

   function LeapYear(year)
	{
	if ((year/4)   != Math.floor(year/4))   return false;
	if ((year/100) != Math.floor(year/100)) return true;
	if ((year/400) != Math.floor(year/400)) return false;
	return true;
	}

   function NthDay(nth,weekday,month,year)
	{
	if (nth > 0) return (nth-1)*7 + 1 + (7 + weekday - DayOfWeek((nth-1)*7 + 1,month,year))%7;
	if (LeapYear(year)) var days = daysofmonthLY[month];
	else
	   var days = daysofmonth[month];
	return days - (DayOfWeek(days,month,year) - weekday + 7)%7;
	}

   function DayOfWeek(day,month,year)
	{
	var a = Math.floor((14 - month)/12);
	var y = year - a;
	var m = month + 12*a - 2;
	var d = (day + y + Math.floor(y/4) - Math.floor(y/100) + Math.floor(y/400) + Math.floor((31*m)/12)) % 7;
	return d+1;
	}

   var DSTstart = new Date(year,4-1,NthDay(1,1,4,year),2,0,0);
   var DSTend   = new Date(year,10-1,NthDay(-1,1,10,year),2,0,0);

   function y2k(number)
         {
         return (number < 1000) ? number + 1900 : number;
         }

   var t    = new Date();
   var year = y2k(t.getYear());


   function getMS(x)
	{
	return Date.UTC(y2k(x.getYear()),x.getMonth(),x.getDate(),x.getHours(),x.getMinutes(),x.getSeconds());
	}

   var todayMS    = getMS(today);
   var DSTstartMS = getMS(DSTstart);
   var DSTendMS   = getMS(DSTend);

   function zHour(hour)
	{
         
	return ((hour >= 24) ? hour - 24 : hour);
	}

   function zMin(num)
	{
	return ((num <= 9) ? ("0" + num) : num);
	}

   function zSec(num)
	{
	return ((num <= 9) ? ("0" + num) : num);
	}


   function getTimer()
	{
	var dt     = new Date();
	
	var diff   = dt.getTimezoneOffset() / 60;
	var gmt    = (hour + diff);
	var ending = ":" + zMin(dt.getMinutes()) + ":" +  zSec(dt.getSeconds());

	var EST    = zHour(((gmt + (24-5)) > 24) ? ((gmt + (24-5)) - 24) : (gmt + (24-5)));
	var ESTadj = zHour(((gmt + (24-4)) > 24) ? ((gmt + (24-4)) - 24) : (gmt + (24-4)));
	
	var hourfix = zHour(EST);
	var hourfixadj = zHour(ESTadj);	


	if (todayMS > DSTstartMS && todayMS < DSTendMS)
		{
		if(hourfixadj < 10){

			document.timeForm.timeField.value = ((currentDate()) + " 0" + zHour(ESTadj) + ending + " " + "EST");
			
		}
		
		else{
	        	document.timeForm.timeField.value = ((currentDate()) + " " + zHour(ESTadj) + ending + " " + "EST");
		}
	}

	else{
		if(hourfix < 10){

			document.timeForm.timeField.value = ((currentDate()) + " 0" + zHour(EST) + ending + " " + "EST");

		 }
		
		else{
	        	document.timeForm.timeField.value = ((currentDate()) + " " + zHour(EST) + ending + " " + "EST");
		}
	}

	if ((document.timeForm.timeField.value) == (conferenceTime))
		{
		firstSlide();
		}

	setTimeout("getTimer()", 250);
	}


   function lockSlides()		//  Stops slides from advancing before alloted time
	{
	if ((document.timeForm.timeField.value) < (conferenceTime))
		{
		(document.slide.src = slideShow[1]);
		(document.slideCounterForm.slideCounter.value = "");
		alert('This event has not started yet.  At the time of the presentation, these slides will become active.');
		}
	else
		{		
		
		null;
		}
	}


