
var nUserTypeId;var sDefaultColor;var nTxtMsgMaxLength=100;var nTxtMsgOtherDataLength=0;function GetInitialStyle(oElement)
{if(oElement.currentStyle)
{sDefaultColor=oElement.currentStyle["color"];}
else if(window.getComputedStyle)
{sDefaultColor=document.defaultView.getComputedStyle(oElement,null).getPropertyValue("color");}}
function Debug(sMsg)
{alert("-- DEBUG --\n"+sMsg);}
function CheckSecurity(nGetKey)
{var oXmlRequest=new XmlRequest();if(nGetKey==1)
{oXmlRequest.addParameter("getKey","1");}
oXmlRequest.getXml("CheckSecurity.jsp",cbInitPageCode);}
function VerifyCredentials(oXml,sCurrentTab,sRedirectPage)
{var oResult=oXml.documentElement;nUserTypeId=oResult.getAttribute("userTypeId");var sErrMsg=oResult.getAttribute("errMsg");var bCanContinue;if(nUserTypeId==null||nUserTypeId==0)
{alert(sErrMsg+"\nTo continue, please login again.");if(sCurrentTab=="")
{var sCall="ClosePopup(\""+sRedirectPage+"\")";setTimeout(sCall,100);}
else
{document.location=sRedirectPage;}
bCanContinue=false;}
else
{bCanContinue=true;if(sCurrentTab!="")
{BuildMenu(sCurrentTab);}}
return(bCanContinue);}
function ClosePopup(sRedirectPage)
{if(opener!=null)
opener.window.location=sRedirectPage;else
window.location=sRedirectPage;window.close();}
function BuildMenu(sCurrentTab)
{var sTargetURL;if(nUserTypeId==1||nUserTypeId==2)
{var oTabMenu=document.createElement("ul");oTabMenu.appendChild(BuildMenuItem("EventsAlerts.html","Events &","Alerts",sCurrentTab));if(nUserTypeId==1)
{sTargetURL="Orgs.html";}
else
{sTargetURL="MyProfile.html";}
oTabMenu.appendChild(BuildMenuItem(sTargetURL,"Application","Configuration",sCurrentTab));if(nUserTypeId==1)
{oTabMenu.appendChild(BuildMenuItem("UserMgmt.html","User/Security","Management",sCurrentTab));oTabMenu.appendChild(BuildMenuItem("SubMgmt.html","Subscriber","Management",sCurrentTab));oTabMenu.appendChild(BuildMenuItem("PendingUsers.html","Pending","Users",sCurrentTab));}
var oLogOff=document.createElement("a");oLogOff.id="logoff";oLogOff.href="Logoff.html";oLogOff.appendChild(document.createTextNode("Log Off"));var oDiv=document.createElement("div");oDiv.id="logHeader";oDiv.appendChild(oLogOff);oTabMenu.appendChild(oDiv);var oTabContainer=document.getElementById("tabstrip")
oTabContainer.appendChild(oTabMenu);BuildSubLinks2(sCurrentTab);}
else if(nUserTypeId==4)
{BuildSubLinks2(sCurrentTab);}}
function BuildMenuItem(url,labelTop,labelBottom,sCurrentTab)
{var oListItem=document.createElement("li");var oAnchor=document.createElement("a");oAnchor.href=url;oAnchor.appendChild(document.createTextNode(labelTop));if(labelBottom!=null||labelBottom.length>0)
{oAnchor.appendChild(document.createElement("br"));oAnchor.appendChild(document.createTextNode(labelBottom));}
if(labelTop==sCurrentTab)
{oListItem.id="current";}
oListItem.appendChild(oAnchor);return oListItem;}
function BuildSubLinks2(sCurrentTab)
{var oSubLinkList;var sCurrentPage;var sPageTitle=document.title;oSubLinkList=document.getElementById("sublinklist");if(sCurrentTab=="Application")
{if(nUserTypeId==1)
{if(sPageTitle=="Intermodal System: Organizations")
sCurrentPage="Organizations";else if(sPageTitle=="Intermodal System: Datafeeds")
sCurrentPage="Datafeeds";else if(sPageTitle=="Intermodal System: My Profile")
sCurrentPage="My Profile";else if(sPageTitle=="Intermodal System: Event Types")
sCurrentPage="Event Types";}
oSubLinkList.appendChild(BuildSubLinkItem("MyProfile.html","My Profile",sCurrentPage));if(nUserTypeId==1)
{oSubLinkList.appendChild(BuildSubLinkItem("none","|",sCurrentTab));oSubLinkList.appendChild(BuildSubLinkItem("Orgs.html","Organizations",sCurrentPage));oSubLinkList.appendChild(BuildSubLinkItem("none","|",sCurrentTab));oSubLinkList.appendChild(BuildSubLinkItem("Datafeeds.html","Datafeeds",sCurrentPage));oSubLinkList.appendChild(BuildSubLinkItem("none","|",sCurrentTab));oSubLinkList.appendChild(BuildSubLinkItem("EventTypes.html","Event Types",sCurrentPage));}}
else if(sCurrentTab=="User/Security")
{if(sPageTitle=="Intermodal System: User Management")
sCurrentPage="User Management";else if(sPageTitle=="Intermodal System: Group Management")
sCurrentPage="Group Management";oSubLinkList.appendChild(BuildSubLinkItem("UserMgmt.html","User Management",sCurrentPage));oSubLinkList.appendChild(BuildSubLinkItem("none","|",sCurrentTab));oSubLinkList.appendChild(BuildSubLinkItem("GroupMgmt.html","Group Management",sCurrentPage));}
else if(sCurrentTab=="SubHome"||sCurrentTab=="SubProfile")
{if(sPageTitle=="My KC Scout: Subscriber Home Page")
sCurrentPage="Subscriptions";else
sCurrentPage="My Profile";oSubLinkList.appendChild(BuildSubLinkItem("SubHome.html","Subscriptions",sCurrentPage));oSubLinkList.appendChild(BuildSubLinkItem("none","|",sCurrentTab));oSubLinkList.appendChild(BuildSubLinkItem("SubProfile.html","My Profile",sCurrentPage));oSubLinkList.appendChild(BuildSubLinkItem("none","|",sCurrentTab));oSubLinkList.appendChild(BuildSubLinkItem("Logoff.html","Log Off",sCurrentPage));}
var oSubLinks=document.getElementById("sublinks")
oSubLinks.appendChild(document.createTextNode("   "));oSubLinks.appendChild(oSubLinkList);}
function BuildSubLinkItem(url,label,sPageTitle)
{var oListItem=document.createElement("li");var oAnchor;oAnchor=document.createElement("a");if(label!=sPageTitle&&label!="|")
{oAnchor.href=url;}
oAnchor.appendChild(document.createTextNode(label));oListItem.appendChild(oAnchor);return oListItem;}
function addEvent(oObject,sEventType,cbCallback,bUseCapture)
{if(oObject.addEventListener)
{oObject.addEventListener(sEventType,cbCallback,bUseCapture);return true;}
else if(oObject.attachEvent)
{return oObject.attachEvent("on"+sEventType,cbCallback);}
else
{alert("Handler could not be attached");}}
function removeEvent(oObject,sEventType,cbCallback,bUseCapture)
{if(oObject.removeEventListener)
{oObject.removeEventListener(sEventType,cbCallback,bUseCapture);return true;}
else if(oObject.detachEvent)
{return oObject.detachEvent("on"+sEventType,cbCallback);}
else
{alert("Handler could not be removed");}}
function getEventSource(oEvent)
{if(oEvent.srcElement)
{return oEvent.srcElement;}
else
{return oEvent.target;}}
function NumbersOnly(myfield,e)
{var key;var keychar;if(window.event)
key=window.event.keyCode;else if(e)
key=e.which;else
return true;keychar=String.fromCharCode(key);if((key==null)||(key==0)||(key==8)||(key==9)||(key==27))
return true;else if((("0123456789-.").indexOf(keychar)>-1))
return true;else
return false;}
function DigitsOnly(myfield,e)
{var key;var keychar;if(window.event)
key=window.event.keyCode;else if(e)
key=e.which;else
return true;keychar=String.fromCharCode(key);if((key==null)||(key==0)||(key==8)||(key==9)||(key==27))
return true;else if((("0123456789").indexOf(keychar)>-1))
return true;else
return false;}
function DateCharsOnly(myfield,e)
{var key;var keychar;if(window.event)
key=window.event.keyCode;else if(e)
key=e.which;else
return true;keychar=String.fromCharCode(key);if((key==null)||(key==0)||(key==8)||(key==9)||(key==27))
return true;else if((("0123456789/").indexOf(keychar)>-1))
return true;else
return false;}
function fillDataField(sElement,sData)
{var oField=document.getElementById(sElement);if(sData==null||sData=="")
{oField.value="";}
else
{oField.value=sData;}}
function FindInList(oList,sFind,sFindAttr,sGetAttr)
{var oItem;for(var i=0;i<oList.length;i++)
{oItem=oList[i];if(oItem.getAttribute(sFindAttr)==sFind)
{return(oItem.getAttribute(sGetAttr));}}
return("");}
function UpdateTxtMsgCount()
{var oTxtMsgDesc=document.getElementById("txtmsgdesc");var oCharCount=document.getElementById("chars");var nCharsLeft=(nTxtMsgMaxLength-oTxtMsgDesc.value.length-nTxtMsgOtherDataLength);oCharCount.firstChild.data="Characters Left: "+nCharsLeft;if(nCharsLeft<0)
{oCharCount.style.color="#E03030";oCharCount.style.fontWeight="bolder";}
else
{oCharCount.style.fontWeight="normal";oCharCount.style.color=sDefaultColor;}}
function GetTxtMsgMax()
{return(nTxtMsgMaxLength);}
function SetTxtMsgOtherDataLength(nLength)
{nTxtMsgOtherDataLength=nLength;}
function StartClock()
{var oDate=new Date();var nHour=oDate.getHours()
var nMins=oDate.getMinutes()
var nSecs=oDate.getSeconds()
var aDay=new Array("Sun, ","Mon, ","Tue, ","Wed, ","Thu, ","Fri, ","Sat, ");var aMonth=new Array("Jan ","Feb ","Mar ","Apr ","May ","Jun ","Jul ","Aug ","Sep ","Oct ","Nov ","Dec ");var sAMPM;var oBold=document.getElementById("drivetime");if(oBold!=null)
{var sDriveTime;if((nHour>=1)&&(nHour<=5))
sDriveTime="The Early Morning Update";else if((nHour>=6)&&(nHour<=11))
sDriveTime="Your Morning Commute";else if((nHour>=12)&&(nHour<=16))
sDriveTime="Afternoon Drive Time";else if((nHour>=17)&&(nHour<=19))
sDriveTime="The Evening Rush";else if((nHour>=20)&&(nHour<=23))
sDriveTime="Late Night Drive";else if(nHour==0)
sDriveTime="The Late Shift";var oBold=document.getElementById("drivetime");oBold.firstChild.data=sDriveTime;}
if(nMins<10)
nMins="0"+nMins;var oClockTxt=document.getElementById("timestamp");if(nHour<12)
sAMPM=" AM, ";else
{if(nHour!=12)
nHour-=12;sAMPM=" PM, ";}
var sClock=nHour+":"+nMins+sAMPM+aDay[oDate.getDay()]+
aMonth[oDate.getMonth()]+GetOrdinal(oDate.getDate())+", "+
oDate.getFullYear()+", CST";oClockTxt.firstChild.data=sClock;setTimeout(StartClock,(1000*(60-nSecs)));if(document.tableRefresher)
document.tableRefresher();}
function GetOrdinal(nDate)
{var sOrdinal;switch(nDate)
{case 1:case 21:case 31:sOrdinal=nDate+"st";break;case 2:case 22:sOrdinal=nDate+"nd";break;case 3:case 23:sOrdinal=nDate+"rd";break;default:sOrdinal=nDate+"th";break;}
return(sOrdinal);}
function ListboxInsertItem(oList,sText,sValue)
{var oEntry=document.createElement("option");oEntry.appendChild(document.createTextNode(sText));oEntry.value=sValue;oList.appendChild(oEntry);return(oEntry);}
function ListboxRemoveSelected(oList)
{for(var i=oList.childNodes.length;i>0;i--)
{oEntry=oList.childNodes.item(i-1);if(oEntry.selected)
{oList.removeChild(oEntry);}}}
function ListboxRemoveAll(oList)
{while(oList.childNodes.length>0)
{oList.removeChild(oList.lastChild);}}
function ListboxRemoveItem(oList,nIndex)
{oList.remove(nIndex);}
function ListboxSelectItem(oList,sTarget,bCheckValue)
{for(var i=0;i<oList.childNodes.length;i++)
{if(bCheckValue)
{if(oList.childNodes.item(i).value==sTarget)
{try
{oList.childNodes.item(i).selected=true;break;}
catch(oErr)
{}}}
else
{if(oList.childNodes.item(i).text==sTarget)
{try
{oList.childNodes.item(i).selected=true;break;}
catch(oErr)
{}}}}}
function ListboxTossSelected(oListFrom,oListTo)
{var bFound;var oEntryFrom;for(var iFrom=0;iFrom<oListFrom.childNodes.length;iFrom++)
{oEntryFrom=oListFrom.childNodes.item(iFrom);if(oEntryFrom.selected)
{bFound=false;for(var iTo=0;iTo<oListTo.childNodes.length;iTo++)
{if(oListTo.childNodes.item(iTo).value==oEntryFrom.value)
{bFound=true;break;}}
if(!bFound)
{ListboxInsertItem(oListTo,oEntryFrom.firstChild.data,oEntryFrom.value);}}}}
function ListboxSelectedText(oList)
{if(oList.item(oList.selectedIndex).childNodes.length!=0)
return(oList.item(oList.selectedIndex).firstChild.data);else
return("");}
function FillTimeListbox(oList,bSelectTime)
{var sTime;var sMin;var sHour;var sMilTime;var iTempHour;var sAMPM;var oDate=new Date();var nHourNow=oDate.getHours()
var nMinsNow=oDate.getMinutes()
ListboxInsertItem(oList,"(Not specified)","");for(var iHour=0;iHour<24;iHour++)
{for(var iMin=0;iMin<60;iMin+=5)
{if(iHour<12)
sAMPM=" AM";else
sAMPM=" PM";iTempHour=iHour;if(iHour>12)
iTempHour=iHour-12;sHour=iTempHour;if(iMin<10)
sMin="0"+iMin;else
sMin=iMin;sTime=sHour+":"+sMin+sAMPM;sMilTime=iHour+":"+sMin
ListboxInsertItem(oList,sTime,sMilTime);if(bSelectTime)
{if(iHour==nHourNow)
{if(iMin<=nMinsNow)
{oList.childNodes.item(oList.length-1).selected=true;}}}}}}
function GetDate(nOffsetFromToday)
{var cDate=new Date();cDate.setDate(cDate.getDate()+nOffsetFromToday);var nMonth=cDate.getMonth()+1;var sDate=nMonth+"/"+cDate.getDate()+"/"+cDate.getFullYear();return(sDate);}
function GetTime(nHoursOffset,nMinutesOffset,nSecondsOffset)
{var cDate=new Date();var timeOffset=cDate.getTime()+
(nHoursOffset*3600*1000)+
(nMinutesOffset*60*1000)+
(nSecondsOffset*1000);cDate.setTime(timeOffset);var sHours=cDate.getHours();var sMinutes=cDate.getMinutes();var sSeconds=cDate.getSeconds();if(sMinutes<10)
sMinutes="0"+sMinutes;if(sSeconds<10)
sSeconds="0"+sSeconds;var sTime=sHours+":"+sMinutes+":"+sSeconds;return(sTime);}
function TrimString(sInput)
{while(sInput.charAt(0)==' ')
sInput=sInput.substring(1);while(sInput.charAt(sInput.length-1)==' ')
sInput=sInput.substring(0,sInput.length-1);return sInput;}
function RemoveInnerSpaces(sInput)
{while(sInput.indexOf("  ")!=-1)
sInput=sInput.replace(/  /g," ");return(sInput);}
function RemoveCRLF(sInput)
{var sTemp;if(sInput.indexOf("\r")!=-1)
{sTemp=sInput.split("\r");sInput="";for(var i=0;i<sTemp.length;i++)
sInput+=sTemp[i];}
if(sInput.indexOf("\n")!=-1)
{sTemp=sInput.split("\n");sInput="";for(var i=0;i<sTemp.length;i++)
{sInput+=sTemp[i];if(i<(sTemp.length-1))
sInput+=" ";}}
return(sInput);}
function FormatStreetEntry(sPrefix,sStreet,sSuffix)
{var sRoute;if(sPrefix=="")
sRoute="   ";else
{sRoute=sPrefix;if(sRoute=="E")
sRoute+=" ";}
sRoute+=" "+sStreet;if(sSuffix!="")
sRoute+=" "+sSuffix;return sRoute;}
function XlatCRLF_BinToStr(sInput)
{var sOutput="";if(sInput.indexOf("\r")!=-1)
{var sTemp=sInput.split("\r");sInput="";for(var i=0;i<sTemp.length;i++)
sInput+=sTemp[i];}
if(sInput.indexOf("\n")!=-1)
{var sTemp=sInput.split("\n");for(var i=0;i<sTemp.length;i++)
{sOutput+=sTemp[i];if(i<(sTemp.length-1))
sOutput+="0x0A";}}
else
{sOutput=sInput;}
return(sOutput);}
function XlatCRLF_StrToBin(sInput)
{var sOutput="";if(sInput.indexOf("0x0A")!=-1)
{var sTemp=sInput.split("0x0A");for(var i=0;i<sTemp.length;i++)
{sOutput+=sTemp[i];if(i<(sTemp.length-1))
sOutput+="\n";}}
else
{sOutput=sInput;}
return(sOutput);}
function FillDirectionList(oDirList,sDirection,bPickSelected,sFirstEntryText)
{var sSelected="";if(oDirList.selectedIndex!=-1)
{sSelected=oDirList.childNodes.item(oDirList.selectedIndex).text;}
ListboxRemoveAll(oDirList);ListboxInsertItem(oDirList,sFirstEntryText,"-1");for(var i=0;i<sDirection.length;i++)
{if(sDirection.charAt(i)=="N")
ListboxInsertItem(oDirList,"NB",0);else if(sDirection.charAt(i)=="E")
ListboxInsertItem(oDirList,"EB",2);else if(sDirection.charAt(i)=="S")
ListboxInsertItem(oDirList,"SB",1);else if(sDirection.charAt(i)=="W")
ListboxInsertItem(oDirList,"WB",3);}
if(bPickSelected)
ListboxSelectItem(oDirList,sSelected,false);}
function ComputeDataState()
{var sDataState="";var oElement;var sValue;for(var i=0;i<document.all.length;i++)
{if(document.all(i).id!="")
{oElement=document.all(i);if(oElement.type=="checkbox"||oElement.type=="radio")
sValue=oElement.checked;else
sValue=oElement.value;if(document.all(i).value)
sDataState+=oElement.id+":"+sValue+",";}}
return(sDataState);}
