// no flights settings  ********************
var gIsOverCapLimit = ""
var gCheckingForFlights = false
var gStatusProperties = new Array;
function StatusProperty(vStatusID, vStatusName, vFlashColor, vRowColor, vRowReverse){
	this.ID = vStatusID;
	this.Status = vStatusName;
	this.FlashColor = vFlashColor;
	this.RowColor = vRowColor;
	this.RowReverseColor = vRowReverse;
}
//gFontDecorationOpening gFontDecorationClosing
var isBold = true;
var isNormal = false;
var isItalic = false;
var gFontDecorationOpening = "<b>";
var gFontDecorationClosing = "</b>";
//gFontDecorationOpening = ""
//gFontDecorationClosing = ""
// cache variables  ************************
var gBannerGraphic = new Array("","","");
var CacheStatus = false
var gColumnSequence = new Array()
var gCacheData = new Array()
var gFlightData = new Array()
var gImgList = new Array()
var gMaxLines = 0
var gCurrentPage = 0
var gInitialStart = true
var gCopyData = false
var gUpdateTime = ""
var gUpdateDate = ""
var gStatusIDCount = 0
var gArrivalsOrDepartures = 3
var gBaggageTouchscreen = ""
var gLastCurrentDisplayID = 0
var gPageToDisplay = ""
var gPagesToDisplay = new Array();
var gPageIndexBeingDisplayed = 0;
var gbMultiPages = false;
var gRefreshCount = 0
var gArrivalToggle = "true"
var gQueryString = ""
var gSearchQuery = ""
var gShowColumnIndex = 1
var gInitialDate = new Date()
var gLastDownloaded = gInitialDate.getTime()
var gViaIDCount = 0
var gCurrentViaRow = 0
var gNumRotatingLegs = 0
var gLegRotationInterval = 0
var gViaList = new Array()
var gUse24HrClock = true
var gHeaderFooterPadding = 10;
var gLastArrivalColIndex = 0; 
var gLastDepartureColIndex = 0;
var gTerm = "";

// display profile settings  ***************
var gProfileType = 0
var gDisplayProfile = ""
var gBaggageCarousel = ""
var gBaggageCarouselID = ""
var gGateIDList = ""
var gMaxRowsDisplayed = 9
var gPaging = "true"
var gFontType = "Verdana"
var gDataFontSize = "3"
var gHeaderFontSize = "3"
var gRowShadeColor = "#E9E9E9"
var gDataTextColor = "#000000"
var gHeaderTextColor = "#000000"
var gBackgroundColor = "#FFFFFF"
var gRowShading = "true"
var gHeaderUnderlineColor = "#000000"
var gRefreshRate = "15"
var gStatNormColor = ""
var gStatNonNormNonCritColor = ""
var gStatNonNormCritColor = ""
var gStatusBlink = "true"
var gShowEST = "true"
var gShowGate = "true"
var gShowBags = "true"
var gHeaderBGColor = "#CACACA"
var gHeaderBorder = "0"
var gShowTime = "true"
var gShowDate = "true"
var gColumnHeaderFontSize = "3"
var gColumnHeaderTextColor = "#000000"
var gRowSeperators = "false"
var gSeperatorShadeColor = "#000000"
var gStatusRowColoring = "false"
var gDisplayFooterTime = "false"
var gDisplayFooterDate = "false"
var gTimeAlign = "LEFT"
var gDateAlign = "RIGHT"

var gDisplayHeaderLabel = "false"
var gDisplayHeaderPgNum = "false"
var gDisplayFooterLabel = "true"
var gDisplayFooterPgNum = "true"
var gLabelAlign = "RIGHT"
var gPgNumAlign = "RIGHT"
var gFooterBgColor = "#ffffff"
var gFooterTextColor = "#000000"

var gDisplayIntervals = 0
var gUntouchedPageCount = 0
//local or server image path's
var imagePathLocal

//DisplayHeaderLabel DisplayHeaderPgNum DisplayFooterLabel DisplayFooterPgNum LabelAlign PgNumAlign FooterBgColor FooterTextColor    '

// general variables ***********************
var gIsIE = (navigator.appName.indexOf("Microsoft") >= 0)
var gIsNS4 = ((navigator.appName.toLowerCase().indexOf("netscape") != -1) && (parseInt(navigator.appVersion) < 5))
var gIsNS6 = ((navigator.appName.toLowerCase().indexOf("netscape") != -1) && (parseInt(navigator.appVersion) >= 5))
var mImgArr = new Array()

// functions *******************************
function left(sString, index) {
    sString = sString.substring(0, index)
    return sString;
}

function SetCacheStatus(vStatus) {
	CacheStatus = vStatus
}

function GetCacheStatus() {
	return CacheStatus
}

function UpdateData() {
	var mLength = gCacheData.length
	gFlightData = new Array()
	if (GetCacheStatus()) {
		for(c=0; c < mLength; c++) {
			gFlightData[c] = gCacheData[c]
		}
	}
	gCopyData = false
}

function StoreColumnSequence(vP0, vP1, vP2, vP3, vP4) {
	var mColumn = new Array()
	mColumn[0] = vP0		// Column name
	mColumn[1] = vP1		// show for arrivals -> true = show;  false = hide
	mColumn[2] = vP2		// show for departures -> true = show;  false = hide
	mColumn[3] = vP3		// column display name
	mColumn[4] = vP4		// column Alignment
	//alert()mColumn[4]
	gColumnSequence[gColumnSequence.length] = mColumn
}

function StoreLineItem(vP0, vP1, vP2, vP3, vP4, vP5, vP6, vP7, vP8, vP9, vP10, vP11, vP12, vP13, vP14, vP15, vP16, vP17, vP18, vP19) {
	var mLineItem = new Array()
	// note: all values are stored as string type
	mLineItem[0] = vP0		// flight time	
	try{
		if (window.top.localPath.length>0) {
			mLineItem[1] = window.top.localPath  + "images/" + vP1		// local path to logo graphic
		}else{
			mLineItem[1] = "images/" + vP1		// logo graphic
		}
	}catch(err){
		mLineItem[1] = "images/" + vP1		// logo graphic
	}
	mLineItem[2] = vP2		// airline
	mLineItem[3] = vP3		// flight number
	mLineItem[4] = vP4		// AirportName
	mLineItem[5] = vP5		// gate
	mLineItem[6] = vP6		// flight status
	mLineItem[7] = vP7		// airline URL link
	mLineItem[8] = vP8		// airline gfx-link status
	mLineItem[9] = vP9		// page number (total pages in cycle)
	mLineItem[10] = vP10	// arrival=true, departure=false
	mLineItem[11] = vP11	// displayed page number (gets reset on change of arrival/depart status)
	mLineItem[12] = vP12	// baggage carousel number (for arrivals only)
	mLineItem[13] = vP13		// CurrentDisplayID -> used with baggage touchscreen
	mLineItem[14] = vP14		// flight status alert level
	mLineItem[15] = vP15		// estimated flight time
	mLineItem[16] = vP16		// weather graphic
	mLineItem[17] = vP17		// description of weather
	mLineItem[18] = vP18		// Terminal
	mLineItem[19] = vP19        // Flight date
	gCacheData[gMaxLines] = mLineItem
	gMaxLines++
}

function FetchLineItem(vIndex) {
	return gFlightData[vIndex]
}

function GetRowCount() {
	return gFlightData.length
}

function GetNextPage() {
	if (gPaging == "true") {
		gCurrentPage++
	} else {
		gCurrentPage = 1
	}
}

function LastPage() {
	var mStatus = true
	if (gFlightData.length > 0) {
		var mPageNum = 0
		var mLineItem = new Array()
		mLineItem = gFlightData[gFlightData.length - 1]
		mPageNum = parseInt(mLineItem[9])
		if (gPaging  == "true") {
			// the last page of data should be departures. if not add 1 so we display a blank departures page
			if ((mLineItem[10] == "true") && (gArrivalsOrDepartures == "3")) {
				mPageNum++
			}
		}
		mStatus = (gCurrentPage >= mPageNum)
		if (mStatus) { gCurrentPage = 0 }
	}
	return mStatus
}

function SelectFlightForTouchscreen(vCurrentDisplayID) {
	var mCell = eval("FlightDisplay.CellCD" + vCurrentDisplayID)
	if (gLastCurrentDisplayID > 0) {
		var mLastCell = eval("FlightDisplay.CellCD" + gLastCurrentDisplayID)
		mLastCell.bgColor = gBackgroundColor
	}
	mCell.bgColor = "yellow"
	gLastCurrentDisplayID = vCurrentDisplayID
}

function DrawMainHeader(vArrivalStatus, vPageNum) {
	var mDoc = eval("FlightDisplay.document")
	var mDisplayTime = new Date()
	var mBannerGraphic = ""
	var mMinutes = "", mHours = ""
	var mHeading = "Departures"
	var mExtraSpace = ""
	var mPageNum = vPageNum
	if (navigator.appName.indexOf("Netscape") >= 0) {
		mExtraSpace = "&nbsp;&nbsp;&nbsp;"
	}
	if (parseInt(gProfileType)  != 3) {
		if (gPageToDisplay.length > 0) {
			switch (gPageToDisplay.substr(0,1)) {
			case "A":
				mHeading = "Arrivals"
				break
			case "D":
				mHeading = "Departures"
				break
			}
			mPageNum = gPageToDisplay.substr(1)
		} else {
			if (vArrivalStatus == "true") {
				mHeading = "Arrivals"
			}
		}
	} else {
		mHeading = ""
	}
	switch(mHeading){
		case "Arrivals":
			if (gBannerGraphic[1] != "")		mBannerGraphic = gBannerGraphic[1]
			else if(gBannerGraphic[0] != "")	mBannerGraphic = gBannerGraphic[0]
			break;
		case "Departures":
			if (gBannerGraphic[2] != "")		mBannerGraphic = gBannerGraphic[2]
			else if(gBannerGraphic[0] != "")	mBannerGraphic = gBannerGraphic[0]
			break;
	}

	if (gDisplayHeaderLabel != "true") mHeading = ""

	mDoc.writeln("<table BORDER=0 WIDTH='100%' cellpadding=0 cellspacing=0 BGCOLOR='" + gHeaderBGColor + "' ")
	if (gHeaderBorder == "1") { mDoc.write(" style='border-top:2px solid white'") }
	else if (gHeaderBorder == "2") { mDoc.write("style='border-top:2px solid #505050'") }
	mDoc.write(">")
	var localPath=""
	try{
		if (window.top.localPath.length>0) localPath=window.top.localPath
	} catch(err){
		var localPath=""
	}
	if (mBannerGraphic != "")mDoc.writeln("<tr><td align='left' colspan='3'><img src='" + localPath + "images/" + mBannerGraphic + "'></td></tr>")//modify here
	
	var mCellA = "", mCellB = "", mCellC = ""
	if (gShowTime == "true") {
		tmpTime = gUpdateTime
		if (!gUse24HrClock) tmpTime = get12HourClockTime(tmpTime)
		if (gTimeAlign == "RIGHT") { mCellC = tmpTime + "&nbsp;" } else if (gTimeAlign == "CENTER") { mCellB = tmpTime + "&nbsp;" } else { mCellA = tmpTime + "&nbsp;" }
	}
	if (gShowDate == "true") {
		if (gDateAlign == "RIGHT") { mCellC += "&nbsp;" + gUpdateDate } else if (gDateAlign == "CENTER") { mCellB += "&nbsp;" + gUpdateDate } else { mCellA += "&nbsp;" + gUpdateDate }
	}
	if (gDisplayHeaderLabel == "true") {
		if (gLabelAlign == "RIGHT") { mCellC += "&nbsp;" +  mHeading } else if (gLabelAlign == "CENTER") { mCellB += "&nbsp;" + mHeading } else { mCellA += "&nbsp;" + mHeading }
	}
	if (gDisplayHeaderPgNum == "true" && mPageNum != undefined) {
		if (gPgNumAlign == "RIGHT") { mCellC += "&nbsp;Page&nbsp;" + mPageNum } else if (gPgNumAlign == "CENTER") { mCellB += "&nbsp;Page&nbsp;" + mPageNum } else { mCellA += "&nbsp;Page&nbsp;" + mPageNum }
	}
	//if(false)
	if (gDisplayHeaderPgNum == "true" || gDisplayHeaderLabel == "true" || gShowDate == "true" || gShowTime == "true") {
		//mDoc.writeln("<tr><td colspan=2><img src='images/placeholder.gif' border=0 width='32px' height='36px'></td></tr>")
		mDoc.write("<tr><td WIDTH='33%' align=left style='padding-left:" + gHeaderFooterPadding + ";'><b><font face='" + gFontType + "' color='" + gHeaderTextColor + "' class=fontDefn" + gHeaderFontSize + ">")
		mDoc.write(mCellA)
		mDoc.write("</font></b></td>")
		mDoc.write("<td WIDTH='34%' align=Center><b><font face='" + gFontType + "' color='" + gHeaderTextColor + "' class=fontDefn" + gHeaderFontSize + ">")
		mDoc.write(mCellB)
		mDoc.write("</font></b></td>")
		mDoc.write("<td WIDTH='33%' align=right style='padding-right:" + gHeaderFooterPadding + ";'><b><font face='" + gFontType + "' color='" + gHeaderTextColor + "' class=fontDefn" + gHeaderFontSize + ">")
		mDoc.write(mCellC)
		mDoc.writeln("</font></b></td></tr>")
		
		//mDoc.write("<tr><td WIDTH='100%' align=right>")
		//mDoc.write("<b><font face='" + gFontType + "' color='" + gHeaderTextColor + "' class=fontDefn" + gHeaderFontSize + ">" + mHeading)
		/*
		if (gDisplayHeaderPgNum == "true") {
			if ((gPaging == "true") || (gPageToDisplay.length > 0)) {
				mDoc.write("&nbsp;Page&nbsp;" + mPageNum)
			}
		
			if (gShowDate == "true") {
				mDoc.writeln("&nbsp;&nbsp;" + gUpdateDate)
			}
		
			if (gShowTime == "true") {
				mDoc.writeln("&nbsp;&nbsp;" + gUpdateTime + mExtraSpace)
			}
		}
		*/
		//mDoc.writeln("</font></b>&nbsp;</td></tr><tr height='10px'><td colspan='3'></td></tr>")
	}
	mDoc.write("</table>")
}

function DrawColumnHeadings(vArrivalStatus, useLargeLogo) {
	var imgHeight = 32;
	var imgWidth = 32;
	var tblWidth = '100%'; //150%
	var tdWidth = ''; //150%
	if (useLargeLogo){
		imgHeight = 32;
		imgWidth = 180;
		
	}
	var mDoc = eval("FlightDisplay.document")
	var mArrivalStatus = vArrivalStatus
	var mColumn = new Array()
	var mStyle = ""
	var mColumnName = ""
	var mColumnCount = 0
	var mLastColIndex = 0;
	//var mFontTag = "<font face='" + gFontType + "' color='" + gHeaderTextColor + "' class=fontDefn" + gHeaderFontSize + ">"
	//var mFontTag = "<font face='" + gFontType + "' color='" + gDataTextColor + "' class=fontDefn" + gDataFontSize + ">"
	var mFontTag = "<font face='" + gFontType + "' color='" + gColumnHeaderTextColor + "' class=fontDefn" + gColumnHeaderFontSize + ">"
	if (gPageToDisplay.length > 0) {
		switch (gPageToDisplay.substr(0,1)) {
		case "A":
			mArrivalStatus = "true"
			break
		case "D":
			mArrivalStatus = "false"
		}
	}
	if (!gIsNS4) {
		if (gHeaderBorder == "1") {
			mStyle = " class=lowerHeaderBorder1"
		} else if (gHeaderBorder == "2") {
			mStyle = " class=lowerHeaderBorder2"
		} else {
			mStyle = " class=lowerBorder"
		}
		mCellPadding = " padding-right:7px;"
	}
	var colsExist = false;
	if(!colsExist){
		for (var mColNum=0; mColNum < gColumnSequence.length; mColNum++) {
			mColumn = gColumnSequence[mColNum];
			if (mColumn[gShowColumnIndex] == "true") colsExist = true;
		}
	}
	if(colsExist){

	if (mArrivalStatus == "true") {  gShowColumnIndex = 1; mLastColIndex = gLastArrivalColIndex;} else {  gShowColumnIndex = 2 ;mLastColIndex = gLastDepartureColIndex;}
	mDoc.writeln("<tr tag='header' bgcolor='" + gHeaderBGColor + "'>")
	for (var mColNum=0; mColNum < gColumnSequence.length; mColNum++) {
		mColumn = gColumnSequence[mColNum]
		if (mColNum == mLastColIndex){tdWidth = 'width:600px;'; }
		if (mColumn[gShowColumnIndex] == "true") {  mColumnName = mColumn[0].toLowerCase()  } else {  mColumnName = ""  }
		if (mColumn[3].length == 0) { mColumn[3] = "&nbsp;" }
		switch (mColumnName) {
		case "logo":
			//if (mColumn[3] == '' )  
			//mColumn[3] = '<>';
			if (gBaggageTouchscreen.length == 0) {
				mDoc.writeln("<td tag='logo' " + mStyle + " ><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";'>" +  mColumn[3] + "</div></font></b></td>");
			} else {
				mDoc.writeln("<td tag='logo' " + mStyle + " ><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";'>" +  mColumn[3] + "</div></font></b></td>");
			}
			mColumnCount++;
			break;
		case "airline"://WIDTH='10%'
			mDoc.writeln("<td  " + mStyle + " style='" + mCellPadding + "'><b>" + mFontTag + "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "flight"://WIDTH='5%'
			//if (mColumn[3] == '&nbsp;' )  mColumn[3] = '';
			mDoc.writeln("<td  " + mStyle + " style='" +  mCellPadding + "' align=right><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "time"://WIDTH='5%'
			mDoc.writeln("<td  " + mStyle + " style='" +  mCellPadding + "' align=right><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "est"://WIDTH='5%'
			mDoc.writeln("<td  " + mStyle + " style='" +  mCellPadding + "'><b>" + mFontTag + "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></div></td>");
			mColumnCount++;
			break;
		case "bags"://WIDTH='5%'
			if (mArrivalStatus == "true") {
				mDoc.writeln("<td  " + mStyle + " style='" +  mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			}
			mColumnCount++;
			break;
		case "terminal"://WIDTH='5%'
				mDoc.writeln("<td  " + mStyle + " style='" +  mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "gate"://WIDTH='5%'
			mDoc.writeln("<td  " + mStyle + " style='" +   mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "&nbsp;</div></font></b></td>");
			mColumnCount++;
			break;
		case "status"://WIDTH='8%'
			mDoc.writeln("<td  " + mStyle + " style='" +   mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "weather image"://WIDTH='42px'
			mDoc.writeln("<td  " + mStyle + " style='" +   mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + "&nbsp;</div></font></b></td>");
			mColumnCount++;
			break;
		case "weather"://WIDTH='10%'
			mDoc.writeln("<td  " + mStyle + " style='" +   mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "via"://
		case "via 2":
			mDoc.writeln("<td " + mStyle + " style='" + mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "via (rotating)":
		case "via(rotating) 2":
			//tdWidth = 'width:100%;'; 
			tdWidth = ''; 
			mDoc.writeln("<td " + mStyle + " style='" + mCellPadding + "width:100%;'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;width:100%;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		case "via (full)":
		case "via (full) 2":
			mDoc.writeln("<td " + mStyle + " style='" + mCellPadding + "'><b>" + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mColumn[3] + "</div></font></b></td>");
			mColumnCount++;
			break;
		}
	}
	mDoc.writeln("</tr>")
	}
}

function DrawFooter(vlRowsDisplayed, vArrivalStatus, vPageNum) {
	var mDoc = eval("FlightDisplay.document")

	var mHeading = "Departures"
	var mExtraSpace = ""
	var mPageNum = vPageNum
	if (navigator.appName.indexOf("Netscape") >= 0) {
		mExtraSpace = "&nbsp;&nbsp;&nbsp;"
	}
	if (parseInt(gProfileType)  != 3) {
		if (gPageToDisplay.length > 0) {
			switch (gPageToDisplay.substr(0,1)) {
			case "A":
				mHeading = "Arrivals"
				break
			case "D":
				mHeading = "Departures"
				break
			}
			mPageNum = gPageToDisplay.substr(1)
		} else {
			if (vArrivalStatus == "true") {
				mHeading = "Arrivals"
			}
		}
	} else {
		mHeading = ""

	}
	
	
	if (gDisplayFooterLabel == "true" || gDisplayFooterPgNum == "true" || gDisplayFooterTime == "true" || gDisplayFooterDate == "true") {
		// draw footer
		mDoc.writeln("<table BORDER=0 WIDTH='100%' cellpadding=0 cellspacing=0 BGCOLOR='" + gFooterBgColor + "' ")
		mDoc.writeln(">")

		// fill in with blank rows
		//if (gPaging == "true")  {
		msLowerBorderHeight = 36
		if ( gRowSeperators == "true" ) { msLowerBorderHeight = 36 + 2 }
			
		for(c=vlRowsDisplayed; c < gMaxRowsDisplayed;c++) {
			mDoc.write("<tr><td colspan=2><img src='images/placeholder.gif' border=0 width='32px' height='" + msLowerBorderHeight + "px'></tr>")
		}
		//}

		var mCellA = "", mCellB = "", mCellC = ""
		if (gDisplayFooterTime == "true") {
			tmpTime = gUpdateTime
			if (!gUse24HrClock) tmpTime = get12HourClockTime(tmpTime)
			if (gTimeAlign == "RIGHT") { mCellC = tmpTime + "&nbsp;" } else if (gTimeAlign == "CENTER") { mCellB = tmpTime + "&nbsp;" } else { mCellA = tmpTime + "&nbsp;" }
		}
		if (gDisplayFooterDate == "true") {
			if (gDateAlign == "RIGHT") { mCellC += "&nbsp;" + gUpdateDate } else if (gDateAlign == "CENTER") { mCellB += "&nbsp;" + gUpdateDate } else { mCellA += "&nbsp;" + gUpdateDate }
		}
		if (gDisplayFooterLabel == "true") {
			if (gLabelAlign == "RIGHT") { mCellC += "&nbsp;" +  mHeading } else if (gLabelAlign == "CENTER") { mCellB += "&nbsp;" + mHeading } else { mCellA += "&nbsp;" + mHeading }
		}
		if (gDisplayFooterPgNum == "true" && mPageNum != undefined) {
			if (gPgNumAlign == "RIGHT") { mCellC += "&nbsp;Page&nbsp;" + mPageNum } else if (gPgNumAlign == "CENTER") { mCellB += "&nbsp;Page&nbsp;" + mPageNum } else { mCellA += "&nbsp;Page&nbsp;" + mPageNum }
		}
		

		mDoc.writeln("<tr><td colspan=2><img src='images/placeholder.gif' border=0 width='32px' height='36px'></td></tr>")
		mDoc.write("<tr><td WIDTH='33%' align=left style='padding-left:" + gHeaderFooterPadding + ";'><b><font face='" + gFontType + "' color='" + gFooterTextColor + "' class=fontDefn" + gHeaderFontSize + ">")
		mDoc.write(mCellA)
		mDoc.write("</font></b></td>")
		mDoc.write("<td WIDTH='34%' align=Center><b><font face='" + gFontType + "' color='" + gFooterTextColor + "' class=fontDefn" + gHeaderFontSize + ">")
		mDoc.write(mCellB)
		mDoc.write("</font></b></td>")
		mDoc.write("<td WIDTH='33%' align=right style='padding-right:" + gHeaderFooterPadding + ";'><b><font face='" + gFontType + "' color='" + gFooterTextColor + "' class=fontDefn" + gHeaderFontSize + ">")
		mDoc.write(mCellC)
		mDoc.writeln("</font></b></td></tr>")
		mDoc.writeln("</table>")
	}
}
function DrawOverCapLimitPage(){
	window.location = "iFIDSCapError.htm"
}
//gFontDecorationOpening gFontDecorationClosing
function DrawPage(useLargeLogo) {
	//alert(gInitialStart)
	if(gIsOverCapLimit && !gInitialStart){
		DrawOverCapLimitPage();
	}else{
	var tdWidth
	var imgHeight = 32;
	var imgWidth = 32;
	var tblWidth = '100%'; //150%
	if (useLargeLogo){
		imgHeight = 32;
		imgWidth = 180;
		
	}
	var mPgNum = 1;
	var mArrivalStatus;
	var mDoc = eval("FlightDisplay.document")
	var mLineItem = new Array()
	var mRowCount = 0
	var mShadeBackground = ""
	var mStyle = ""
	var mSecondHeading = false
	gStatusIDCount = 0
	gViaIDCount = 0
	var vPageNum = parseInt(gCurrentPage)
	var mLastRow = parseInt(GetRowCount())
	var mImg = new Image
	var mLogoImg = ""
	var mTrigger = ""
	var mMessage = ""
	var mSearch = ""
	var mColumnName = ""
	var msLowerBorderStyle = ""
	var msAlertClrOverride = ""
	var msAlertColour = ""
	msLowerBorderHeight = 36
	var mBorder = "0"
	var mLastDate = ""
	
	mSearch = gQueryString.indexOf("SearchAirportID")

	if (!gIsNS4) { mCellPadding = " style='padding-right:3px'" }
	var localPath=""
	try{
		if (window.top.localPath.length>0) localPath=window.top.localPath
	}
	catch (err){
		localPath=""
	}

	// determine whether we have row dividers
	if ( gRowSeperators == "true" ) {
		msLowerBorderStyle = " style='border-bottom:2px solid " + gSeperatorShadeColor + "' "
	} else {
		msLowerBorderStyle = " style='border:0px;' "
	}

	for(c=0; c < mLastRow; c++) {
	    mLineItem = FetchLineItem(c)
	    
		//alert(mLineItem[9])
		//alert(GetRowCount())
		if (parseInt(mLineItem[9]) == vPageNum) {
			mRowCount++
			if (mRowCount == 1) {
				if ((gPaging == "false") && (mLineItem[10] == "false") && (gArrivalsOrDepartures != 2)) {
					if (mSearch != -1){
						//alert("search")
						mMessage = "<center><b>There are currently no arrivals that meet your search criteria</b></center>"
						mTrigger = "true"
					} else {
						mArrivalStatus = "true"
						mPgNum = mLineItem[11]
						DrawMainHeader("true", mLineItem[11])
						mDoc.writeln("<table BORDER=" + mBorder + " CELLSPACING=0 cellpadding=0 WIDTH='" + tblWidth + "' bgcolor='" + gHeaderBGColor + "'>")
						DrawColumnHeadings("true", useLargeLogo)
					}
				} else {
					mArrivalStatus = mLineItem[10]
					mPgNum = mLineItem[11]
					DrawMainHeader(mLineItem[10], mLineItem[11])
					mDoc.writeln("<table BORDER=" + mBorder + " CELLSPACING=0 cellpadding=0 WIDTH='" + tblWidth + "'>")
					DrawColumnHeadings(mLineItem[10], useLargeLogo)
				}
				if ((gArrivalsOrDepartures == 2) || (gPageToDisplay.length > 0)) { mSecondHeading = true }
			}
			if ((gPaging == "false") && (mLineItem[10] == "false") && !mSecondHeading) {
				mSecondHeading = true
				if (mMessage.length == 0) {
					mDoc.writeln("</table><BR>")
				}
				mArrivalStatus = mLineItem[10] 
				mPgNum = mLineItem[11]
				DrawMainHeader(mLineItem[10], mLineItem[11])
				mDoc.writeln("<table BORDER=" + mBorder + " CELLSPACING=0 cellspacing=0 WIDTH='" + tblWidth + "'>")
				DrawColumnHeadings(mLineItem[10], useLargeLogo)
			}

			// determine row shading
			if (gRowShading == "true") {
				if (mRowCount % 2 == 0) {
					mShadeBackground = gBackgroundColor
				} else {
					mShadeBackground = gRowShadeColor
				}
			} else {
				mShadeBackground = gBackgroundColor
			}
			// override status colouring by assigning to row if flagged
			var mReverseColor = gDataTextColor
			msAlertColour 	= gStatNormColor
			
			mFlashColor 	= msAlertColour
			if(gStatusProperties.length > 0){
				for(var a = 0; a < gStatusProperties.length; a++){
					if (mLineItem[6].toLowerCase() == gStatusProperties[a].Status.toLowerCase()){
						if (gStatusProperties[a].RowColor != "") mShadeBackground = gStatusProperties[a].RowColor
						if (gStatusProperties[a].RowReverseColor != "") mReverseColor = gStatusProperties[a].RowReverseColor
						if (gStatusProperties[a].FlashColor != ""){
							mFlashColor = gStatusProperties[a].FlashColor
							msAlertColour = gStatusProperties[a].FlashColor
							//alert(msAlertColour)
						}
					}
				}	
			}else{
				switch(mLineItem[14]) {
					case "1":
						msAlertColour = gStatNonNormNonCritColor 
						break
					case "2":
						msAlertColour = gStatNonNormCritColor 
						break
					case "0":
						msAlertColour = gStatNormColor 
				}
			}
			
			var mFontTag = "<font face='" + gFontType + "' color='" + mReverseColor + "' class=fontDefn" + gDataFontSize + ">"
			
	        
			// draw row
			mDoc.writeln("<tr>")
			
			mDoc.writeln("<!-- row data -->")
			
			if (!gIsNS4) {
		        if (gHeaderBorder == "1") {
			        mHeaderStyle = " class=lowerHeaderBorder1"
		        } else if (gHeaderBorder == "2") {
			        mHeaderStyle = " class=lowerHeaderBorder2"
		        } else {
			        mHeaderStyle = " class=lowerBorder"
		        }
		        mCellPadding = " padding-right:7px;"
	        }
	
			if(mLineItem[0] == "DD") {
                    mDoc.writeln("<td BGCOLOR='" + mShadeBackground + "' colspan='7' " + msLowerBorderStyle + " style='height:"+ msLowerBorderHeight +";vertical-align:middle;' align=center>")
                    mDoc.writeln("<table cellpadding='0' cellspacing='0' width='100%'>")
                    mDoc.writeln("<tr>")
                    mDoc.writeln("<td width='*'><hr width='100%' style='color:"+ gSeperatorShadeColor +";'></td>")
                    mDoc.writeln("<td width='1%' nowrap><b>" + mFontTag + "&nbsp;Next Day&nbsp;</b></font></td>")
                    mDoc.writeln("<td width='*'><hr width='100%' style='color:"+ gSeperatorShadeColor +";'></td>")
                    mDoc.writeln("<td>")
                    mDoc.writeln("<tr>")
                    mDoc.writeln("</table>")
                    mDoc.writeln("</td>")
            } else if(mLineItem[0] == "Blank") {
                    mDoc.writeln("<td colspan='6' style='height:"+ msLowerBorderHeight +";'>&nbsp;</td>")
	        } else {
			    // draw columns based on defined column sequence
			    for (var mColNum=0; mColNum < gColumnSequence.length; mColNum++) {
				    mColumn = gColumnSequence[mColNum]
				    if (mColumn[gShowColumnIndex] == "true") {  mColumnName = mColumn[0].toLowerCase()  } else {  mColumnName = ""  }
    				
				    //if(mColumnName == "via (rotating)")alert(mColumnName)
				    switch (mColumnName) {
				    case "logo":
					    // display airline logo and airline name
					    // alert(gBaggageTouchscreen.length);
					    if (gBaggageTouchscreen.length == 0) {
						    mDoc.write("<td tag='logo' BGCOLOR='" + mShadeBackground + "' class='FormTextLeft' width='" + imgWidth + "px' style='padding:2px' " + msLowerBorderStyle + ">" + "<div style='text-align:" + mColumn[4] + ";'>" )
						    //alert(mLineItem[8]);
						    switch(mLineItem[8]) {
						    case "-1":
							    if (mLineItem[7].length > 0) {
								    mDoc.write("<A HREF='HitCounter.asp?TargetURL=" + mLineItem[7] + "' TARGET='_blank'>")
							    }
							    if (gIsIE || gIsNS6) {
								    if (mLineItem[1].length > 0) {
									    mDoc.write("<img border=0 src='" + mLineItem[1] + "'>")//Modify here
								    } else {
									    mDoc.write("<img src='images/placeholder.gif' width=" + imgWidth + " height=" + imgHeight + " border=0>")
								    }
							    } else {
								    mImg = new Image
								    if (mLineItem[1].length > 0) {
									    mImg.src = "images/" + mLineItem[1]
								    } else {
									    mImg.src = "images/placeholder.gif"
								    }
								    mImgArr[c] = mImg
								    mDoc.write("<img src='images/placeholder.gif' width=" + imgWidth + " height=" + imgHeight + " border=0>")
							    }
							    if (mLineItem[7].length > 0) {
								    mDoc.write("</A>")
							    }
							    mDoc.writeln("</div></td>")
							    break
						    case "2":
							    if (gIsIE || gIsNS6) {
								    if (mLineItem[1].length > 0) {
									    mDoc.writeln("<img src='" + mLineItem[1] + "' border=0>")//Modify here
								    } else {
									    mDoc.writeln(  "<div style='text-align:" + mColumn[4] + ";'>" + "<img src='images/placeholder.gif' width=" + imgWidth + " height=" + imgHeight + " border=0></div>")
								    }
							    } else {
								    mImg = new Image
								    if (mLineItem[1].length > 0) {
									    mImg.src = mLineItem[1]
								    } else {
									    mImg.src = "images/placeholder.gif"
								    }
								    mImgArr[c] = mImg
								    mDoc.writeln(  "<div style='text-align:" + mColumn[4] + ";'>" + "<img src='images/placeholder.gif' width=" + imgWidth + " height=" + imgHeight + " border=0></div>")
							    }
							    mDoc.writeln("</div></td>")
							    break
						    case "1":
							    mDoc.write("&nbsp;</div></td>")
						    }//" + imgHeight + "" + imgWidth + "
					    } else {
						    //links need to be changed for the baggage touchscreen
						    var mbgColour = ""
						    if (parseInt(gLastCurrentDisplayID) == parseInt(mLineItem[13])) {
							    mbgColour = "bgColor='yellow'"
						    }
						    mDoc.write("<td tag='logo' class='FormTextLeft' width=38px height=38px " + mbgColour + " ID='CellCD" + mLineItem[13] + "' onclick='ToggleFlight(" + mLineItem[13] + ")'>")
						    mDoc.writeln("<div style='text-align:" + mColumn[4] + ";'><img src='" + mLineItem[1] + "'></div></td>")
					    }
					    break
				    case "airline":
					    if (gBaggageTouchscreen.length == 0) {
						    switch(mLineItem[8]) {
						    case "-1":
							    mDoc.write("<td NOWRAP  BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag + "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>")
							    if (mLineItem[7].length > 0) {
								    mDoc.write("<A HREF='HitCounter.asp?TargetURL=" + mLineItem[7] + "' TARGET='_blank' style='color:" + mReverseColor + ";'>")
							    }
							    mDoc.write("<div style='color:" + mReverseColor + ";'>" + mLineItem[2] + "</div>")
							    if (mLineItem[7].length > 0) {
								    mDoc.write("</A>")
							    }
							    mDoc.writeln("</div></font>" + gFontDecorationClosing + "</td>")
							    break
						    case "2":
							    mDoc.writeln("<td NOWRAP  BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[2] + "</div></font>" + gFontDecorationClosing + "</td>")
							    break
						    case "1":
							    mDoc.write("<td NOWRAP  BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[2] + "</div></font>" + gFontDecorationClosing + "</td>")
						    }
					    } else {
						    mDoc.writeln("<td NOWRAP  BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[2] + "</div></font>" + gFontDecorationClosing + "</td>")
					    }
					    break
				    case "flight":
					    // display flight number
					    mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" +  mLineItem[3] + "</div></font>" + gFontDecorationClosing + "</td>")
					    break
				    case "time":
					    // display flight time
					    tmpTime = mLineItem[0]
					    if (!gUse24HrClock)tmpTime = get12HourClockTime(mLineItem[0])
					    mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + tmpTime + "</div></font>" + gFontDecorationClosing + "</td>")
					    break
				    case "est":
					    // EST
					    tmpTime = mLineItem[15]
					    if (!gUse24HrClock)tmpTime = get12HourClockTime(mLineItem[15])
					    mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + tmpTime + "</div></font>" + gFontDecorationClosing + "</td>")
					    break
				    case "bags":
					    // display bag carrousel
					    if (mLineItem[10] == "true") {
						    if (mLineItem[12].length == 0) { mLineItem[12] = "&nbsp;" }
						    mDoc.writeln("<td NOWRAP ID='CellBC" + mLineItem[13] + "' BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + "><center>" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[12] + "</div></font>" + gFontDecorationClosing + "</center></td>")
					    }
					    break
				    case "terminal":
						    if (mLineItem[18].length == 0) { mLineItem[18] = "&nbsp;" }
						    mDoc.writeln("<td NOWRAP ID='CellBC" + mLineItem[13] + "' BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + "><center>" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[18] + "</div></font>" + gFontDecorationClosing + "</center></td>")
					    break
				    case "gate":
					    // display gate
					    if (mLineItem[5].length == 0) { mLineItem[5] = "&nbsp;" }
					    mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + "><center>" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[5] + "</div></font>" + gFontDecorationClosing + "</center></td>")
					    break
				    case "status":
    //alert(gStatusProperties.length)	
					    //if(!gStatusRowColoring ){
					    //	for(var a = 0; a < gStatusProperties.length; a++){
					    //		if (mLineItem[6].toLowerCase() == gStatusProperties[a].Status.toLowerCase()){
					    //			alert(gStatusProperties[a].Status.toLowerCase())
					    //			msAlertColour = gStatusProperties[a].FlashColor
					    //		}//alert(mLineItem[6].toLowerCase())
					    //	}			
					    //}
    					
					    // display flight status
					    mDoc.write("<td NOWRAP  BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening)
					    gStatusIDCount++
					    mDoc.write("<input type=hidden ID='StatusDefault' value='" + msAlertColour + "'>")
					    //
					    mDoc.write("<input type=hidden ID='DefaultColor' value='" + gDataTextColor + "'>")
					    //	 mShadeBackground
					    mDoc.write("<font color='" + msAlertColour + "' ")

					    //switch(mLineItem[14]) {
					    //case "1":
					    //	mDoc.write("<Input type=hidden ID='StatusDefault' value='" + gStatNonNormNonCritColor + "'><font color='" + gStatNonNormNonCritColor + "' ")
					    //	break
					    //case "2":
					    //	mDoc.write("<Input type=hidden ID='StatusDefault' value='" + gStatNonNormCritColor + "'><font color='" + gStatNonNormCritColor + "' ")
					    //	break
					    //default:
					    //	mDoc.write("<Input type=hidden ID='StatusDefault' value='" + gStatNormColor + "'><font color='" + gStatNormColor + "' ")
					    //}
					    mDoc.writeln("ID='FlightStatus' face='" + gFontType + "' class=fontDefn" + gDataFontSize + ">" +   "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[6] + "&nbsp;</div></font>" + gFontDecorationClosing + "</td>")
					    break
				    case "via 2":
				    case "via" :
					    if (mColNum == (gColumnSequence.length - 1)) {tdWidth = '150%';}
					    // display static leg (via) info
					    if (mLineItem[4].length == 0) {
						    mLineItem[4] = "&nbsp;"
					    }
					    mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[4] + "</div></font>" + gFontDecorationClosing + "</td>")
					    break
    				
				    case "via (full) 2":
				    case "via (full)":
					    if (mColNum == (gColumnSequence.length - 1)) {tdWidth = '150%';}
					    // display static leg (via) info
					    if (mLineItem[4].length == 0) {
						    mLineItem[4] = "&nbsp;"
					    }
					    mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +  "<div style='text-align:" + mColumn[4] + ";padding-right:8px;'>" + mLineItem[4] + "</div>" + gFontDecorationClosing + "</font></td>")
					    break
    				
				    case "via(rotating) 2":
				    case "via (rotating)":
					    //alert('mColNum: '+ mColNum + ' | gColumnSequence.length: ' + gColumnSequence.length);
					    if (mColNum == (gColumnSequence.length - 1)) {tdWidth = 'width:3000px;';}
				    //alert('')
					    /* display rotating leg info*/
					    gViaIDCount++
					    if (mLineItem[4].length == 0) {
						    mLineItem[4] = "&nbsp;"
					    }
    //					mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">here</td>")
    					
					    mDoc.writeln("<td NOWRAP BGCOLOR='" + mShadeBackground + "'" + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag + "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'><span ID='ViaCol' ViaInfo='" + mLineItem[4] + "'></span></div>" + gFontDecorationClosing + "</font></td>")
					    break
    				
				    case "weather image":
					    mDoc.write("<td NOWRAP BGCOLOR='" + mShadeBackground + "' width='42px'" + mCellPadding + msLowerBorderStyle + ">")
					    if (mLineItem[16].length > 0) {
						    mDoc.write("<div style='text-align:" + mColumn[4] + ";padding-right:4px;'><img border=0 width=32 height=32 src='images/weatherimages/small/" + mLineItem[16] + "'></div>")
					    } else {
						    mDoc.write("<div style='text-align:" + mColumn[4] + ";padding-right:4px;'><img src='images/weatherimages/small/noweathergraphic32x32.gif' width=32 height=32 border=0></div>")
					    }
					    mDoc.writeln("</td>")
					    break
				    case "weather":
					    if (mLineItem[17].length == 0) { mLineItem[17] = "&nbsp;" }
					    mDoc.writeln("<td NOWRAP width='*' BGCOLOR=" + mShadeBackground + " " + mCellPadding + msLowerBorderStyle + ">" + gFontDecorationOpening + mFontTag +   "<div style='text-align:" + mColumn[4] + ";padding-right:4px;'>" + mLineItem[17] + "</div></font>" + gFontDecorationClosing + "</td>")
					    break
				    } // end switch
			    } // end for mColNum
			}
			mDoc.writeln("</tr>")
		} else {
			// terminate the loop once we reach a new page of data
			if (mLineItem[9] > vPageNum) { c = mLastRow }
		}
	}
	
	// draw header info for blank pages
	if (GetRowCount() == 0) {
		//If there are abosolutely no records
		if (mSearch != -1){		
			mDoc.writeln("<font color='" + gDataTextColor + "'><center><br><br><br><br><br><br><br><br><br><b>There are currently no flights listed at this time that meet your search criteria</b></center></font>")
		}else{
			if (gPaging == "true")  {
				mArrivalStatus = gArrivalToggle
				DrawMainHeader(gArrivalToggle, "1")
				mDoc.writeln("<table BORDER=0 CELLSPACING=0 cellpadding=0 WIDTH='100%'>")
				DrawColumnHeadings(gArrivalToggle, useLargeLogo)
				if (gArrivalToggle == "true") {  gArrivalToggle = "false" } else {  gArrivalToggle = "true" }
			} else {
				if (gArrivalsOrDepartures == 1) {
					mPgNum = 1
					mArrivalStatus = "true"
					DrawMainHeader("true", 1)
					mDoc.writeln("<table BORDER=0 CELLSPACING=0 cellpadding=0 WIDTH='100%'>")
					DrawColumnHeadings("true", useLargeLogo)
				}
				if (gArrivalsOrDepartures == 2) {
					mPgNum = 1
					mArrivalStatus = "false"
					DrawMainHeader("false", 1)
					mDoc.writeln("<table BORDER=0 CELLSPACING=0 cellpadding=0 WIDTH='100%'>")
					DrawColumnHeadings("false", useLargeLogo)
				}
				if (gPageToDisplay.length == 0) {
					if (gArrivalsOrDepartures == 3) {  mDoc.writeln("</table><BR>")  }
				}
			}
		}
	} else {
		if (gPaging == "true")  {
			if (mRowCount == 0) {
				gArrivalToggle = "true"

				// check to see if first page in array is for departures. if so show a blank arrivals page
				mLineItem = FetchLineItem(0)
				if ((parseInt(mLineItem[9]) > vPageNum) && (mLineItem[10] == "false")) {
					mArrivalStatus = "true"
					DrawMainHeader("true", 1)
					mDoc.writeln("<table BORDER=0 CELLSPACING=0 cellpadding=0 WIDTH='100%'>")
					DrawColumnHeadings("true", useLargeLogo)
				}
				// check to see if last page in array is for arrivals. if so show a blank departures page
				mLineItem = FetchLineItem(mLastRow - 1)
				if ((parseInt(mLineItem[9]) < vPageNum) && (mLineItem[10] == "true")) {
					mArrivalStatus = "false"
					DrawMainHeader("false", 1)
					mDoc.writeln("<table BORDER=0 CELLSPACING=0 cellpadding=0 WIDTH='100%'>")
					DrawColumnHeadings("false", useLargeLogo)
				}
			}
		} else {
			if (gPageToDisplay.length == 0) {
				mLineItem = FetchLineItem(mLastRow - 1)
				if (mLineItem[10] == "true") {
					if (gArrivalsOrDepartures == 3) {  mDoc.writeln("</table><BR>")  }
					if (gArrivalsOrDepartures != 1) {
						if (mSearch != -1){		
							mMessage = "<center><b>There are currently no departures that meet your search criteria</b></center>"
							mTrigger = "true"
						}else{
							mArrivalStatus = "false"
							DrawMainHeader("false", 1)
							mDoc.writeln("<table BORDER=0 CELLSPACING=0 cellpadding=0 WIDTH='150%'>")
							DrawColumnHeadings("false", useLargeLogo)
						}
					}
				}
			}
		}
	}
	mDoc.writeln("</table>")
	DrawFooter(mRowCount, mArrivalStatus, mPgNum)

	var mSearchType = ""

	mSearchType = gQueryString.indexOf("both")
	if (mSearchType == -1) {
		return
	}else{
		if (mTrigger == "true") {  mDoc.writeln("<BR><BR><font color='" + gDataTextColor + "'>" + mMessage + "</font>")  }
	}
	}
}

function InitializeVia() {
	if (gViaIDCount < 1) {  return  }

	var mvVia = new Array()
	var c = 0
	var d = 0
	var miMaxLegs = 0
	gViaList = new Array()
	gNumRotatingLegs = 0

	if (gViaIDCount == 1) {
		mvVia = new Array()
		mvVia = FlightDisplay.document.all.ViaCol.getAttribute("ViaInfo").split(",")
		if (mvVia.length > 1) {
			gNumRotatingLegs++
			for (d=0; d < mvVia.length; d++) {  mvVia[d] = mvVia[d] + " (" + (d + 1).toString() + ")"  } 
		}

		FlightDisplay.document.all.ViaCol.innerText = mvVia[0]
		gViaList[0] = mvVia
		if (mvVia.length > miMaxLegs) {
			miMaxLegs = mvVia.length
		}
	} else {
		for (c = 0; c < gViaIDCount; c++) {
			mvVia = new Array()
			mvVia = FlightDisplay.document.all.ViaCol[c].getAttribute("ViaInfo").split(",")
			if (mvVia.length > 1) {
				gNumRotatingLegs++
				for (d=0; d < mvVia.length; d++) {  mvVia[d] = mvVia[d] + " (" + (d + 1).toString() + ")"  } 
			}
			
			FlightDisplay.document.all.ViaCol[c].innerText = mvVia[0]
			gViaList[c] = mvVia
			if (mvVia.length > miMaxLegs) {
				miMaxLegs = mvVia.length
			}
		}
	}

	// start the timeout only if there is at least one row that contains more than 1 leg
	if (miMaxLegs > 1) {
		gLegRotationInterval = Math.max(Math.round(1500 / gNumRotatingLegs), 160)
		gCurrentViaRow = 0
		FlightDisplay.DoRotateVia()
	}
}

function RotateVia() {
	var mvVia = new Array()
	var msCurCity = ""
	var miIndex = 0
	var d = 0

	if (gViaIDCount == 1) {
		msCurCity = FlightDisplay.document.all.ViaCol.innerText
		gCurrentViaRow = 0
	} else {
		msCurCity = FlightDisplay.document.all.ViaCol[gCurrentViaRow].innerText
	}

	if (gViaList[gCurrentViaRow].length > 1) {
		miIndex = -1
		for (d=0; d < gViaList[gCurrentViaRow].length; d++) {
			if (gViaList[gCurrentViaRow][d] == msCurCity) {
				miIndex = (d + 1)
				if (miIndex >= gViaList[gCurrentViaRow].length) { miIndex = 0 }
				d = gViaList[gCurrentViaRow].length
			}
		}
		if (miIndex >= 0) {
			if (gViaIDCount == 1) {
				FlightDisplay.document.all.ViaCol.innerText = gViaList[0][miIndex]
			} else {
				FlightDisplay.document.all.ViaCol[gCurrentViaRow].innerText = gViaList[gCurrentViaRow][miIndex]
			}
		}
	}

	if (gViaIDCount > 1) {
		d = 0
		do {
			d++
			gCurrentViaRow++
			if (gCurrentViaRow >= gViaIDCount) {  gCurrentViaRow = 0 }
		} while ((gViaList[gCurrentViaRow].length < 2) && (d < 100))
	}
	FlightDisplay.DoRotateVia()
}

function blinkStatus() {
	if (gStatusIDCount == 0) { return }
	if (gStatusIDCount > 1) {
		var StatCount = gStatusIDCount
	} else {
		var StatCount = 1
	}
	//var defaultColor = gDataTextColor 
	//var defaultColor = gStatNormColor
	//var defaultColor = gDataTextColor 
	if (StatCount > 1) {
		//defaultColor = defaultColor.toUpperCase()
		
		for (var c = 0; c < StatCount; c++) {
			if (eval(FlightDisplay.document.all.FlightStatus[c]) != undefined){
				//if(FlightDisplay.document.all.FlightStatus[c].color.toUpperCase() != defaultColor.toUpperCase()){
					if (FlightDisplay.document.all.FlightStatus[c].color.toUpperCase() == FlightDisplay.document.all.DefaultColor[c].value) {
					//if (FlightDisplay.document.all.FlightStatus[c].color.toUpperCase() == defaultColor) {
						FlightDisplay.document.all.FlightStatus[c].color = FlightDisplay.document.all.StatusDefault[c].value
					} else {
						//FlightDisplay.document.all.FlightStatus[c].color = defaultColor
						FlightDisplay.document.all.FlightStatus[c].color = FlightDisplay.document.all.DefaultColor[c].value 
					}
				//}
			}else{
				//if(FlightDisplay.document.all.FlightStatus.color.toUpperCase() != defaultColor.toUpperCase()){
					if (FlightDisplay.document.all.FlightStatus.color.toUpperCase() == FlightDisplay.document.all.DefaultColor.value) {
					//if (FlightDisplay.document.all.FlightStatus[c].color.toUpperCase() == defaultColor) {
						FlightDisplay.document.all.FlightStatus.color = FlightDisplay.document.all.StatusDefault.value
					} else {
						//FlightDisplay.document.all.FlightStatus[c].color = defaultColor
						FlightDisplay.document.all.FlightStatus.color = FlightDisplay.document.all.DefaultColor.value 
					}
				//}
				
			}
		}
	}else {
		if (eval(FlightDisplay.document.all.FlightStatus[c]) != undefined){
			//if(FlightDisplay.document.all.FlightStatus[c].color.toUpperCase() != defaultColor.toUpperCase()){
				if (FlightDisplay.document.all.FlightStatus.color.toUpperCase() == FlightDisplay.document.all.DefaultColor.value) {
				//if (FlightDisplay.document.all.FlightStatus.color.toUpperCase() == defaultColor) {
					FlightDisplay.document.all.FlightStatus.color = FlightDisplay.document.all.StatusDefault.value
				} else {
					//FlightDisplay.document.all.FlightStatus.color = defaultColor
					FlightDisplay.document.all.FlightStatus.color = FlightDisplay.document.all.DefaultColor.value 
				}
			//}
		}else{
			//if(FlightDisplay.document.all.FlightStatus.color.toUpperCase() != defaultColor.toUpperCase()){
				if (FlightDisplay.document.all.FlightStatus.color.toUpperCase() == FlightDisplay.document.all.DefaultColor.value) {
				//if (FlightDisplay.document.all.FlightStatus.color.toUpperCase() == defaultColor) {
					FlightDisplay.document.all.FlightStatus.color = "red"//FlightDisplay.document.all.StatusDefault.value
				} else {
					//FlightDisplay.document.all.FlightStatus.color = defaultColor
					FlightDisplay.document.all.FlightStatus.color = "red"//FlightDisplay.document.all.DefaultColor.value 
				}
			//}
			
		}
	}
	FlightDisplay.DoBlink()
}

function DrawFlightDisplay(useLargeLogo) {
	var mDoc = eval("FlightDisplay.document")
	mDoc.clear()
	mDoc.writeln("<html>")
	mDoc.writeln("<head>")
	mDoc.writeln("<title>iFIDS.com 55</title>")
	mDoc.writeln("<base target='bottom'>")
	mDoc.writeln("<style type='text/css'>")
	mDoc.writeln("<!--")
	mDoc.writeln(".lowerBorder { border-bottom: 2px solid " + gHeaderUnderlineColor + " }")
	mDoc.writeln(".lowerHeaderBorder1 { border-bottom: 2px solid #505050 }")
	mDoc.writeln(".lowerHeaderBorder2 { border-bottom: 2px solid #FFFFFF }")
	mDoc.writeln(".fontDefn1 { font-size: 8pt; }")
	mDoc.writeln(".fontDefn2 { font-size: 10pt; }")
	mDoc.writeln(".fontDefn3 { font-size: 12pt; }")
	mDoc.writeln(".fontDefn4 { font-size: 13pt; }")
	mDoc.writeln(".fontDefn5 { font-size: 14pt; }")
	mDoc.writeln(".fontDefn6 { font-size: 16pt; }")
	mDoc.writeln(".fontDefn7 { font-size: 18pt; }")
	mDoc.writeln(".fontDefn75 { font-size: 21pt; }")
	mDoc.writeln(".fontDefn8 { font-size: 24pt; }")
	mDoc.writeln(".fontDefn9 { font-size: 36pt; }")
	mDoc.writeln(".fontDefn95 { font-size: 42pt; }")
	mDoc.writeln(".fontDefn10 { font-size: 56pt; }")
	mDoc.writeln("a:link { text-decoration:: none; }")
	mDoc.writeln("a:visited { text-decoration:: none; }")
	mDoc.writeln("a:active { text-decoration:: none; }")
	mDoc.writeln("-->")
	mDoc.writeln("</style>")
	mDoc.writeln("<script Language=\"JavaScript\">")
	mDoc.writeln("<!--")
	mDoc.writeln("var mbForceDownload = false")
	
	mDoc.writeln("var request = createRequest();")
	mDoc.writeln("var response;")

	mDoc.writeln("function createRequest(){")
		mDoc.writeln("/*@cc_on @*/")
		mDoc.writeln("/*@if (@_jscript_version >= 5)")
			mDoc.writeln("// JScript gives us Conditional compilation, we can cope with old IE versions.")
			mDoc.writeln("// and security blocked creation of the objects.")
			mDoc.writeln("try {")
				mDoc.writeln("return  new ActiveXObject('Msxml2.XMLHTTP');")
			mDoc.writeln("} catch (e) {")
				mDoc.writeln("try {")
					mDoc.writeln("return  new ActiveXObject('Microsoft.XMLHTTP');")
				mDoc.writeln("} catch (E) {")
					mDoc.writeln("return  false;")
				mDoc.writeln("}")
			mDoc.writeln("}")
		mDoc.writeln("@end @*/")
		mDoc.writeln("if (!xmlhttp && typeof XMLHttpRequest!='undefined') {")
			mDoc.writeln("try {")
				mDoc.writeln("return  new XMLHttpRequest();")
			mDoc.writeln("} catch (e) {")
				mDoc.writeln("return  false;")
			mDoc.writeln("}")
		mDoc.writeln("}")
		mDoc.writeln("if (!xmlhttp && window.createRequest) {")
			mDoc.writeln("try {")
				mDoc.writeln("return  window.createRequest();")
			mDoc.writeln("} catch (e) {")
				mDoc.writeln("return false;")
			mDoc.writeln("}")
		mDoc.writeln("}")
	mDoc.writeln("}")
	
	
	mDoc.writeln("function DownloadCache() {")
		//mDoc.writeln("\t alert('DownloadCache'); \n")
		mDoc.writeln("\tvar nPg = ''\n")
		mDoc.writeln("\t if(parent.gbMultiPages){\n")
			mDoc.writeln("\t parent.gPageIndexBeingDisplayed++; \n")
			mDoc.writeln("\t if(parent.gPageIndexBeingDisplayed >= parent.gPagesToDisplay.length)parent.gPageIndexBeingDisplayed = 0; \n")
		//		mDoc.writeln("\t\t\tparent.gPageIndexBeingDisplayed = 1\n")
		//		mDoc.writeln("\tnPg = parent.gPagesToDisplay[parent.gPageIndexBeingDisplayed]\n")
		//		mDoc.writeln("\t\t\t parent.gPageToDisplay = parent.gPagesToDisplay[parent.gPageIndexBeingDisplayed] \n")
		//	mDoc.writeln("\t\t}else{\n")
		//		mDoc.writeln("\t\t\tparent.gPageIndexBeingDisplayed = 0\n")
				mDoc.writeln("\tnPg = parent.gPagesToDisplay[parent.gPageIndexBeingDisplayed]\n")
				mDoc.writeln("\t\t\t parent.gPageToDisplay = parent.gPagesToDisplay[parent.gPageIndexBeingDisplayed] \n")
		//	mDoc.writeln("\t\t}\n")
		mDoc.writeln("}\n")
		//mDoc.writeln("\tif(canNavTo('iFIDSDisplayControl.asp?pingOnly=true')){\n")
			mDoc.writeln("\tparent.downloadCache.location.href = \"downloadCache.asp?isnormal=\" + parent.isNormal + \"&isBold=\" + parent.isBold + \"&term=\" + parent.gTerm + \"&newPage=\" + nPg + \"&ProfileName=\" + parent.gDisplayProfile + parent.gQueryString + parent.gSearchQuery")
		//mDoc.writeln("\t}\n")
	mDoc.writeln("}\n")
	
	
	mDoc.writeln("function AutoRefresh() {")
	mDoc.writeln("\t var TotalPages")
	mDoc.writeln("\t try {")
	mDoc.writeln("\t\t var mLineItem = parent.gFlightData[parent.gFlightData.length - 1]")
	mDoc.writeln("\t\t var mPageNum = parseInt(mLineItem[9])")
	
	mDoc.writeln("\t } catch (e) {")

	mDoc.writeln("\t }")
    mDoc.writeln("\t if(parent.gPaging == 'true'){")
    mDoc.writeln("\t\t TotalPages = mPageNum-1")
    mDoc.writeln("\t }else{")
    mDoc.writeln("\t\t TotalPages = (parent.gPagesToDisplay.length-1)")
    mDoc.writeln("\t }")
    
    mDoc.writeln("\t if(parent.gUntouchedPageCount >= TotalPages){")
    mDoc.writeln("\t\t if(parent.parent.parent.frames.downloadCacheWaitState){")
    mDoc.writeln("\t\t\t var DCWaitState = parent.parent.parent.frames.downloadCacheWaitState")
	mDoc.writeln("\t\t\t try{")
	mDoc.writeln("\t\t\t\t DCWaitState.checkAltDispOnInterval()")
	mDoc.writeln("\t\t\t } catch(e) {}")
	mDoc.writeln("\t\t\t parent.gDisplayIntervals = parent.gDisplayIntervals +1")
	mDoc.writeln("\t\t\t parent.gUntouchedPageCount = 0")
    mDoc.writeln("\t\t }")
	mDoc.writeln("\t }else{")
	mDoc.writeln("\t\t parent.gUntouchedPageCount++")
    mDoc.writeln("\t}")
	mDoc.writeln("\t parent.DrawFlightDisplay(false)")
    mDoc.writeln("}\n")
    

	mDoc.writeln("function DoRotateVia() {")
	mDoc.writeln("\tsetTimeout(\"parent.RotateVia()\", parent.gLegRotationInterval)")
	mDoc.writeln("}\n")

	mDoc.writeln("function DoBlink() {")
	mDoc.writeln("\tsetTimeout(\"parent.blinkStatus()\", 650)")
	mDoc.writeln("}\n")

	mDoc.writeln("function ToggleFlight(vCurrentDisplayID) {")
	mDoc.writeln("\tparent.SelectFlightForTouchscreen(vCurrentDisplayID)")
	mDoc.writeln("}\n")
	mDoc.writeln("function CatchResize() {")
	//mDoc.writeln("alert(\"refresh\")")
	mDoc.writeln("\ttop.location.reload(true)")
	mDoc.writeln("}\n")

	mDoc.writeln("function CheckDownload() {")
		mDoc.writeln("\tvar mCurDate = new Date()")
		mDoc.writeln("\tif (parseInt(mCurDate.getTime() - parent.gLastDownloaded) > 180000) {")
			mDoc.writeln("\t\tparent.gLastDownloaded = parseInt(parent.gLastDownloaded) + 180000")
			mDoc.writeln("\t\tmbForceDownload = true")
		mDoc.writeln("\t}")
	mDoc.writeln("}\n")

	mDoc.writeln("//-->")
	mDoc.writeln("</script>")
	mDoc.writeln("</head>")
	mDoc.writeln("<Script language=\"javascript\">")
	mDoc.writeln("<!--")
	mDoc.writeln("if (!parent.gInitialStart) {")
	mDoc.write("\tdocument.writeln(\"<body ")
	if (gIsNS4) {
		mDoc.write("onResize='CatchResize()' ")
	}
	mDoc.writeln("bgcolor='\" + parent.gBackgroundColor + \"' LINK='\" + parent.gDataTextColor + \"' ALINK='\" + parent.gDataTextColor + \"' VLINK='\" + parent.gDataTextColor + \"'>\")")
	mDoc.writeln("\tif (parent.gCopyData && parent.GetCacheStatus()) {")
	mDoc.writeln("\t\tparent.UpdateData()")
	mDoc.writeln("\t}")
	mDoc.writeln("\tparent.GetNextPage()")
	mDoc.writeln("\tparent.DrawPage(" + useLargeLogo + ")")
	mDoc.writeln("mbForceDownload = false")
	var mbSkipCheck = false
	if (gIsIE) {
		mDoc.writeln("\tif (parent.gViaIDCount > 0) {")
		mDoc.writeln("\t\tparent.InitializeVia()")
		mDoc.writeln("\t}")
	}
	if ((gPaging == "true") || (gPageToDisplay.length > 0)) {
		if ((gIsIE) && (gStatusBlink == "true")) {
			mDoc.writeln("\tparent.blinkStatus()")
		}
		mDoc.writeln("\tsetTimeout(\"AutoRefresh()\", (parent.gRefreshRate * 1000))")
		mDoc.writeln("\tif (parent.LastPage()) {")
			mDoc.writeln("\t\tif (!parent.GetCacheStatus()) {")
				mDoc.writeln("\t\t\tCheckDownload()")
				mDoc.writeln("\t\t\tif (mbForceDownload) { DownloadCache() }")
				//mDoc.writeln("\t\t\t  DownloadCache() ")
			mDoc.writeln("\t\t} else {")
				mDoc.writeln("\t\t\tparent.SetCacheStatus(false)")
				mDoc.writeln("\t\t\tDownloadCache()")
			mDoc.writeln("\t\t}")
		mDoc.writeln("\t}")
	} else {
		mDoc.writeln("\tif (parent.GetCacheStatus()) {")
		mDoc.writeln("\t\tparent.SetCacheStatus(false)")
		mDoc.writeln("\t\tsetTimeout(\"DownloadCache()\", (parent.gRefreshRate * 1000))")
		mDoc.writeln("\t} else {")
			mDoc.writeln("\t\t\tCheckDownload()")
			mDoc.writeln("\t\t\tif (mbForceDownload) { DownloadCache() }")
			//mDoc.writeln("\t\t\t  DownloadCache() ")
		mDoc.writeln("\t}")
		mDoc.writeln("\tsetTimeout(\"AutoRefresh()\", (parent.gRefreshRate * 1000) + 20000)")
	}

	//mDoc.writeln("parent.gRefreshCount++")
	//mDoc.writeln("if (parent.LastPage() && parent.GetCacheStatus() && (parseInt(parent.gRefreshCount) > 1)) {")
	mDoc.writeln("} else {")
	mDoc.writeln("\tdocument.writeln(\"<body bgcolor='#FFFFFF'>\")")
	mDoc.writeln("}")
	mDoc.writeln("//-->")
	mDoc.writeln("</script>")
	mDoc.writeln("</body>")
	mDoc.writeln("</html>")
	mDoc.close()
	//if ((!gIsIE) && (!gIsNS6) && (mDoc.images.length > 0)) {
	//	for (var c=0; c < mDoc.images.length; c++) {
	//		mDoc.images[c].src = mImgArr[c].src
	//	}
	//}
	//if (gIsNS6) {
		//FlightDisplay.location.reload(false)
	//}
}

function get12HourClockTime(vTime){
	var mTime = vTime.split(':')
	var tTime = mTime[0]
	if (mTime[0] > 12){ 
		tTime = mTime[0] - 12
	}else{ 
		if(mTime[0] < 10){
			tTime = tTime/1
		}
	}
	
	if (tTime == 0){tTime = 12}
	tTime += ':' + mTime[1]
	if (mTime[0] >= 12) tTime += "&nbsp;PM"; else tTime += "&nbsp;AM";
	return tTime
}