<!-- Begin
/******************************************************
*  Altair Hub Times                                   *
*  Written by Kevin Wnuk for Altair Virtual Airlines  *
*  Date: 11/09/2005                                   *
*  Version 1.00                                       *
******************************************************/
//Setup global variables
var objClockSet = 0;
var objAltTag = "";

function IntegerToMonth(iMonth)
{
var sMonth = "";
	switch(iMonth)
	{
		case 1:
			sMonth = "January";
			break;
		case 2:
			sMonth = "February";
			break;
		case 3:
			sMonth = "March";
			break;
		case 4:
			sMonth = "April";
			break;
		case 5:
			sMonth = "May";
			break;
		case 6:
			sMonth = "June";
			break;
		case 7:
			sMonth = "July";
			break;
		case 8:
			sMonth = "August";
			break;
		case 9:
			sMonth = "September";
			break;
		case 10:
			sMonth = "October";
			break;
		case 11:
			sMonth = "November";
			break;
		case 12:
			sMonth = "December";
			break;
		default:
			sMonth = "Invalid Month";
	}
	
	return sMonth;
}

function DaysInMonth(iYear, iMonth)
{
	var iDay = 0;
	
	if (iMonth == 4 || iMonth == 6 || iMonth == 9 || iMonth == 11)
	{
		iDay = 30;
	}
	else if (iMonth == 1)
	{
		if (iYear % 4 == 0)
		{
			if (iYear % 100 == 0)
			{
				if (iYear % 400 == 0)
				{
					iDay = 29;
				}
				else
				{
					iDay = 28;
				}
			}
			else
			{
				iDay = 29;
			}
		}
		else
		{
			iDay = 28;
		}
	}
	else
	{
		iDay = 31;
	}
	
	return iDay;
}

function DayliteSavingTime(strCountry, iYear, iMonth, iDay, iHour)
{
//Set up variables
	var arrDSTDates = new Array();
	var strDSTTemp = "";
	var flgNorthernHemisphere = 0;
	var flgDST = 0;
		
//Select country data
	switch(strCountry)
	{
		case "USA":
			flgNorthernHemisphere = -1;
			arrDSTDates[0] = "2005040302103002";	//format is YYYYMMDDHHMMDDHH 
			arrDSTDates[1] = "2006040202102902";	//first mmddhh is when daylight starts for northen hemisphere and end for sourhtern hemisphere
			arrDSTDates[2] = "2007031102110402";	//second mmddhh is when daylight ends for northern hemisphere and starts for southern hemisphere
			arrDSTDates[3] = "2008030902110202";
			arrDSTDates[4] = "2008030802110102";
			for (iX=0;iX<5;iX++)
			{
				if (arrDSTDates[iX].substr(0,4) == iYear)
				{
					strDSTTemp = arrDSTDates[iX];
				}
			}
			break;
		case "BRAZIL":
			flgNorthernHemisphere = 0;
			arrDSTDates[0] = "2005022000101600";
			arrDSTDates[1] = "2006021900101500";
			arrDSTDates[2] = "2007021800102100";
			arrDSTDates[3] = "2008021700101900";
			arrDSTDates[4] = "2009021500101800";
			for (iX=0;iX<5;iX++)
			{
				if (arrDSTDates[iX].substr(0,4) == iYear)
				{
					strDSTTemp = arrDSTDates[iX];
				}
			}
			break;
		case "EUN":
			flgNorthernHemisphere = -1;
			arrDSTDates[0] = "2005032701103002";
			arrDSTDates[1] = "2006032601102902";
			arrDSTDates[2] = "2007032501102802";
			arrDSTDates[3] = "2008033001102602";
			arrDSTDates[4] = "2009032901102502";
			for (iX=0;iX<5;iX++)
			{
				if (arrDSTDates[iX].substr(0,4) == iYear)
				{
					strDSTTemp = arrDSTDates[iX];
				}
			}
			break;
		case "EUS":
			flgNorthernHemisphere = 0;
			arrDSTDates[0] = "2005032701103002";
			arrDSTDates[1] = "2006032601102902";
			arrDSTDates[2] = "2007032501102802";
			arrDSTDates[3] = "2008033001102602";
			arrDSTDates[4] = "2009032901102502";
			for (iX=0;iX<5;iX++)
			{
				if (arrDSTDates[iX].substr(0,4) == iYear)
				{
					strDSTTemp = arrDSTDates[iX];
				}
			}
			break;
		default:
	}

//Check to see if it is DST
	var dtBeginDST = new Date(strDSTTemp.substr(4,2) + "/" + strDSTTemp.substr(6,2) + "/" + strDSTTemp.substr(0,4) + " " + strDSTTemp.substr(8,2) + ":00:00");	
	var dtEndDST = new Date(strDSTTemp.substr(10,2) + "/" + strDSTTemp.substr(12,2) + "/" + strDSTTemp.substr(0,4) + " " + strDSTTemp.substr(14,2) + ":00:00");	
	var dtDate = new Date(iMonth + "/" + iDay + "/" + iYear + " " + iHour + ":00:00");

	if (dtDate >= dtBeginDST && dtDate <= dtEndDST)
	{
		if (flgNorthernHemisphere == -1)
		{
			flgDST = -1;
		}
		else
		{
			flgDST = 0;
		}
	}
	else
	{
		if (flgNorthernHemisphere == -1)
		{
			flgDST = 0;
		}
		else
		{
			flgDST = -1;
		}
	}

	if (flgDST == -1)
	{
		return -1;
	}
	else
	{
		return 0;
	}
}
//Update the display every second
function UpdateClock() 
{
	if(objClockSet) 
	{
		clearTimeout(objClockSet);
		objClockSet  = 0;
	}

	var dtDate = new Date();
	var dtYearGMTTime = dtDate.getUTCFullYear();
	var dtMonthGMTTime = dtDate.getUTCMonth();
	var dtDayGMTTime = dtDate.getUTCDate();
	var dtHoursGMTTime = dtDate.getUTCHours();
	var dtMinutesGMTTime = dtDate.getUTCMinutes();
	var dtSecondsGMTTime = dtDate.getUTCSeconds();
	var sLocationTag = "";
	var sCountry = "";
	var flgIsDST = 0;
	var sIsDST = "";

	dtMonthGMTTime++;
	
//Set up country info
	switch (objAltTag)
	{
	case "KATL":
		dtHoursGMTTime -= 5;
		flgIsDST = DayliteSavingTime("USA", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in Atlanta";
		sCountry = "USA";
		break;
	case "KJFK":
		dtHoursGMTTime -= 5;
		flgIsDST = DayliteSavingTime("USA", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in New York";
		sCountry = "USA";
		break;
	case "KDEN":
		dtHoursGMTTime -= 7;
		flgIsDST = DayliteSavingTime("USA", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in Denver";
		sCountry = "USA";
		break;
	case "KLAX":
		dtHoursGMTTime -= 8;
		flgIsDST = DayliteSavingTime("USA", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in Los Angeles";
		sCountry = "USA";
		break;
	case "KMEM":
		dtHoursGMTTime -= 6;
		flgIsDST = DayliteSavingTime("USA", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in Memphis";
		sCountry = "USA";
		break;
	case "PANC":
		dtHoursGMTTime -= 9;
		flgIsDST = DayliteSavingTime("USA", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in Anchorage";
		sCountry = "USA";
		break;
	case "SBGR":
		dtHoursGMTTime -= 3;
		flgIsDST = DayliteSavingTime("BRAZIL", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in São Paulo";
		sCountry = "BRAZIL";
		break;
	case "SBKP":
		dtHoursGMTTime -= 3;
		flgIsDST = DayliteSavingTime("BRAZIL", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		sLocationTag = " in Campinas";
		sCountry = "BRAZIL";
		break;
	case "EHAM":
		flgIsDST = DayliteSavingTime("EUN", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		dtHoursGMTTime += 1;
		sLocationTag = " in Amsterdam";
		sCountry = "NETHERLANDS";
		break;
	case "EGCC":
		flgIsDST = DayliteSavingTime("EUN", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		dtHoursGMTTime += 0;
		sLocationTag = " in Manchester";
		sCountry = "UK";
		break;
	case "EPKK":
		flgIsDST = DayliteSavingTime("EUN", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		dtHoursGMTTime += 1;
		sLocationTag = " in Kraków";
		sCountry = "POLAND";
		break;
	case "YSSY":
		flgIsDST = DayliteSavingTime("EUS", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		dtHoursGMTTime += 10;
		sLocationTag = " in Sydney";
		sCountry = "AUSTRALIA";
		break;
	case "EDDF":
		flgIsDST = DayliteSavingTime("EUN", dtYearGMTTime, dtMonthGMTTime, dtDayGMTTime, dtHoursGMTTime);
		dtHoursGMTTime += 1;
		sLocationTag = " in Frankfurt";
		sCountry = "GERMANY";
		break;
	default:
		sLocationTag = " GMT";
		sCountry = "GMT";
	}

// Fix hours within DST and tag time
	if(flgIsDST == -1)
	{
		dtHoursGMTTime++;
		sIsDST = "*";
		document.frmWorldClock.strTime.style.color = "#FF0000";
	}
	else
	{
		sIsDST = "";
		document.frmWorldClock.strTime.style.color = "#000000";
	}	

// fix hours greater than 23 and set day to the next day	
	if (dtHoursGMTTime > 23)
	{
		dtHoursGMTTime -=24;
		dtDayGMTTime++;
		if (dtDayGMTTime > DaysInMonth(dtYearGMTTime, dtMonthGMTTime))
		{
			dtDayGMTTime = 1;
			dtMonthGMTTime++;
			if (dtMonthGMTTime > 12)
			{
				dtMonthGMTTime = 1;
				dtYearGMTTime++;
			}
		}
	}

// fix hours less than 0 and set day to the day before	
	if (dtHoursGMTTime < 0) 
	{
		dtHoursGMTTime +=24;
		dtDayGMTTime--;
		if (dtDayGMTTime < 1)
		{
			dtMonthGMTTime--;
			if (dtMonth < 1)
			{
				dtYearGMTTime--;
				dtDayGMTTime = DaysInMonth(dtYearGMTTime, dtMonthGMTTime);
			}
			else
			{
				dtDayGMTTime = DaysInMonth(dtYearGMTTime, dtMonthGMTTime);
			}
		}
	}

// Add zero before hours, minutes, and seconds that are less than 10 and display time
	sLocationTag = "";
	document.frmWorldClock.strTime.value = " " + ((dtHoursGMTTime < 10) ? "0" + dtHoursGMTTime : dtHoursGMTTime)  + ":"  + ((dtMinutesGMTTime < 10) ? "0" + dtMinutesGMTTime : dtMinutesGMTTime)  + ":"  + ((dtSecondsGMTTime < 10) ? "0" + dtSecondsGMTTime : dtSecondsGMTTime)  + sLocationTag + " " + IntegerToMonth(dtMonthGMTTime) + " " + dtDayGMTTime  + ", " + dtYearGMTTime  + " " + sIsDST;
	objClockSet = setTimeout("UpdateClock()", 1000);
}

//Setup clock and set country to display
function StartClock(sLocation) 
{
	objAltTag = sLocation;
	objClockSet = setTimeout("UpdateClock()", 500);
}

//Stop the clock from displaying
function StopClock() 
{
   if(objClockSet)
    {
	  objAltTag = "";
	  document.frmWorldClock.strTime.value = "";
	  clearTimeout(objClockSet);
      objClockSet  = 0;
   }
}

// End -->