function init()
{
framework.widget.helpmenu.init("help.menu.track");
if (rtol){
var helpId = document.getElementById("help.menu.track");
if (!framework.util.isUndefinedOrNull(helpId)) {
helpId.style.width = "120px";
}
var helpItemId = document.getElementById("help.menu.track_li");
var helpItemContainerId = document.getElementById("help.menu.track._itemsContainer");
if (!framework.util.isUndefinedOrNull(helpItemId) && !framework.util.isUndefinedOrNull(helpItemContainerId)) {
helpItemContainerId.style.left=helpItemId.style.left;
}
}
if (templateType == "print"){
framework.util.hideElement('emailLink');
}
registerHelpMenuEvents();
framework.eventmodel.addElementEvent("trackSubmitButton", framework.EventType.CLICK, track.logWSS);
framework.eventmodel.addElementEvent("trackSubmitButton", framework.EventType.CLICK, validateTrackFormFields);
framework.eventmodel.addElementEvent("printerFriendly", framework.EventType.CLICK, track.logWSS);
framework.eventmodel.addElementEvent("printerFriendly", framework.EventType.CLICK, preparePrintURL);
framework.eventmodel.addElementEvent("getLink", framework.EventType.CLICK, showGetLink);
framework.eventmodel.addElementEvent("getLink", framework.EventType.CLICK, track.logWSS);
framework.eventmodel.addElementEvent("trackNbrs", framework.EventType.KEYPRESS, defaultEnterKey);
framework.eventmodel.addElementEvent("holdAtLocationLink", framework.EventType.CLICK, submitStep1Form);
framework.widget.module.init("module.shipmentoptions", noHelp, "", "");
framework.widget.module.init("module.shipmentfacts", noHelp, "", "");
framework.widget.menu.init("menubar.nav");
framework.widget.module.init("module.tableTravelHistory", noHelp, "", "");
framework.widget.table.init("split.shipmentTable", null, null);
if (splitShipment)
{
var splitShipTableData=new Array(detailInfoObject.splitShipmentInfo.scans.length);
for(var j=0; j<detailInfoObject.splitShipmentInfo.scans.length;j++)
{
splitShipTableData[j]=new Array(3);
if (!framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanPieces))
{
splitShipTableData[j][0] = detailInfoObject.splitShipmentInfo.scans[j].scanPieces;
} else
{
splitShipTableData[j][0] = "";
}
if (!framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanDate && !framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanTime)))
{
splitShipTableData[j][1] = detailInfoObject.splitShipmentInfo.scans[j].scanDate + " " + detailInfoObject.splitShipmentInfo.scans[j].scanTime;
} else if (!framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanDate && framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanTime)))
{
splitShipTableData[j][1] = detailInfoObject.splitShipmentInfo.scans[j].scanDate;
} else if (framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanDate && !framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanTime)))
{
splitShipTableData[j][1] = detailInfoObject.splitShipmentInfo.scans[j].scanTime;
} else
{
splitShipTableData[j][1] = "";
}
if (!framework.util.isUndefinedOrNull(detailInfoObject.splitShipmentInfo.scans[j].scanStatus))
{
splitShipTableData[j][2] = detailInfoObject.splitShipmentInfo.scans[j].scanStatus;
} else
{
splitShipTableData[j][2] = "";
}
}
framework.widget.table.setTableContentsArray("split.shipmentTable", splitShipTableData, true);
framework.eventmodel.addElementEvent("split.shipment.statusLink", framework.EventType.CLICK, track.logWSS);
if (showSplitShipScans == "yes"){
framework.util.setInnerHTML("split.shipment.status",detailInfoObject.status);
}
framework.eventmodel.addElementEvent("split.shipment.statusLink", framework.EventType.CLICK, onClickSplitShipmentStatusLink);
} else
{
framework.util.hideElement("split.shipment.summary");
}
framework.widget.table.setTableContentsArray("table.travelHistory", "", false);
framework.widget.table.init("table.travelHistory", null, null);
framework.eventmodel.addElementEvent("table.travelHistory._contents._header._col1", framework.EventType.CLICK, track.logWSS);
framework.eventmodel.addElementEvent("table.travelHistory._contents._header._col1", framework.EventType.CLICK, submitSort);
initMenuTabs();
framework.eventmodel.addElementEvent("notification.link", framework.EventType.CLICK, getTabToOpen);
framework.util.hideElement("timeZoneOtherMsg");
framework.util.hideElement("timeZoneAlertOrigin");
framework.util.hideElement("timeZoneAlertDestination");
if (templateType != "print"){
setupDropdown("timezone",timeZoneObject,-1,-2,true,false);
setupDropdown("GMTtime",GMTTimeZoneObject,-1,-2,true,false);
framework.eventmodel.addElementEvent("timezone", framework.EventType.CHANGE, track.logWSS);
framework.eventmodel.addElementEvent("timezone", framework.EventType.CHANGE, getSelectionTime);
framework.eventmodel.addElementEvent("showOthers", framework.EventType.LOAD, getSelectionTime);
framework.eventmodel.addElementEvent("GMTtime", framework.EventType.CHANGE, track.logWSS);
framework.eventmodel.addElementEvent("GMTtime", framework.EventType.CHANGE, getGMTOffsetTimeZone);
framework.util.hideElement("showOthers");
}
else {
if (selectedTimeZone == "localScanTime"){
framework.util.setInnerHTML("timezone", localScanTime);
}
if (selectedTimeZone == "origin"){
framework.util.setInnerHTML("timezone", origin);
}
if (selectedTimeZone == "destScanTime"){
framework.util.setInnerHTML("timezone", destScanTime);
}
framework.eventmodel.addElementEvent("printPage", framework.EventType.CLICK, track.printWindow);
framework.eventmodel.addElementEvent("closePage", framework.EventType.CLICK, track.closeWindow);
if (selectedTimeZone == "others") {
framework.util.setInnerHTML("timezone", others);
framework.util.showElement("showOthers");
if (!framework.util.isUndefinedOrNull(document.getElementById("GMTtime"))) {
framework.util.setInnerHTML("GMTtime", selectedGMTtext);
}
}
}
framework.util.setInnerHTML("estimatedPickupDate", estimatedPickupDate);
framework.util.setInnerHTML("pickupDate", pickupDate);
framework.util.setInnerHTML("shipDate", shipDate);
framework.util.setInnerHTML("estimatedDeliveryDate", estimatedDeliveryDate);
framework.util.setInnerHTML("deliveryDateTime", deliveryDateTime);
var scanTableData=new Array(detailInfoObject.scans.length);
if(detailInfoObject.scans.length > 0)
{
if (templateType == "print")
{
if (selectedTimeZone != "others") {
getSelectionTime();
} else {
getGMTOffsetTimeZone();
}
scanTableData = populateTable(detailInfoObject, null);
}
else {
scanTableData = populateTable(detailInfoObject, null);
}
}
framework.widget.table.init("table.travelHistory", null, null);
framework.widget.table.setTableContentsArray("table.travelHistory", scanTableData, true);
framework.eventmodel.addElementEvent("hour12", framework.EventType.CLICK, track.logWSS);
framework.eventmodel.addElementEvent("hour12", framework.EventType.CLICK, convert12HourTime);
framework.eventmodel.addElementEvent("hour12print", framework.EventType.LOAD, convert12HourTime);
framework.eventmodel.addElementEvent("hour24", framework.EventType.CLICK, track.logWSS);
framework.eventmodel.addElementEvent("hour24", framework.EventType.CLICK, convert24HourTime);
framework.eventmodel.addElementEvent("hour24print", framework.EventType.LOAD, convert24HourTime);
registerDetailROHelp();
initTimeFormat();
if (typeof(testMOT) != 'undefined')
{
testMOT();
}
framework.widget.table.sortColumn("table.travelHistory", 0, "sortDescending");
framework.widget.table.setTableContentsArray("table.travelHistory", scanTableData, false);
if(sortType != null && sortType != "")
{
if(sortType == "sortAscending")
{
sortNow();
}
}
if (splitShipment)
{
framework.util.hideElement("detail.Status");
if (showSplitShipScans == "no") {
framework.util.hideElement("detailTravelHistory");
} else {
framework.util.showElement("detailTravelHistory");
}
}
if (detailInfoObject.carrier.name == "FXK")
{
if (!detailInfoObject.showShipperRecipient &&
detailInfoObject.shipmentFactsLeft.length < 1 &&
detailInfoObject.shipmentFactsRight.length < 1 &&
detailInfoObject.altRefList.length < 1)
{
framework.util.hideElement("shipfactsbegin");
}
}
}
track.sortHandler = function (event)
{
var tFormat = readCookie("timeFormat");
if (!framework.util.isUndefinedOrNull(tFormat) && !(tFormat == 24))
{
var tableId = "table.travelHistory";
var tableData = framework.widget.table.getTableContentsArray(tableId);
var sortColumn = framework.widget.table.getCurrentSortColumnIndex(tableId);
var sortOrder = framework.widget.table.getCurrentSortOrder(tableId);
var tableDateColumn = 0;
var rowCount = tableData.length;
var rowon = 0;
if (!framework.util.isUndefinedOrNull(tableData[rowon])){
while(rowon < rowCount)
{
var inputDate = tableData[rowon][tableDateColumn];
if (inputDate != "")
{
var newDate = new fdxdate(inputDate);
if (inputDate.length>12){
tableData[rowon][tableDateColumn] = newDate.toMMDDYYYY24Hour();
} else {
tableData[rowon][tableDateColumn] = newDate.toMMDDYYYY24HourNoTime();
}
}
rowon++;
}
}
framework.widget.table.setTableContentsArray(tableId, tableData, false);
framework.widget.table.sortColumn(tableId, sortColumn, sortOrder);
tableData = framework.widget.table.getTableContentsArray(tableId);
var rowon = 0;
if (!framework.util.isUndefinedOrNull(tableData[rowon])){
while(rowon < rowCount)
{
var inputDate = tableData[rowon][tableDateColumn];
if (inputDate != "")
{
var newDate = new fdxdate(inputDate);
if (tFormat == "24h")
{
if (inputDate.length>10){
tableData[rowon][tableDateColumn] = newDate.toFDX24Hour();
} else {
tableData[rowon][tableDateColumn] = newDate.toFDX24HourNoTime();
}
} else {
if (inputDate.length>10){
tableData[rowon][tableDateColumn] = newDate.toFDXString();
} else {
tableData[rowon][tableDateColumn] = newDate.toFDXStringNoTime();
}
}
}
rowon++;
}
}
framework.widget.table.setTableContentsArray(tableId, tableData, false);
}
}
function registerHelpMenuEvents()
{
framework.eventmodel.addElementEvent("help.menu.track._helpMenuItem1", framework.EventType.CLICK, navToHelpThisPage);
framework.eventmodel.addElementEvent("module.shipmentfacts._headerButtons", framework.EventType.CLICK, moduleHelp);
framework.eventmodel.addElementEvent("module.tableTravelHistory._headerButtons", framework.EventType.CLICK, moduleHelp);
framework.eventmodel.addElementEvent("module.shipmentoptions._headerButtons", framework.EventType.CLICK, moduleHelp);
}
function noHelp()
{
}
function registerMenuEvents()
{
framework.eventmodel.addElementEvent("notificationTab.menu", framework.EventType.CLICK, launchSelectedTab);
framework.eventmodel.addElementEvent("notificationTab.menu", framework.EventType.CLICK, track.logWSS);
framework.eventmodel.addElementEvent("associatedTab.menu", framework.EventType.CLICK, getTabToOpen);
framework.eventmodel.addElementEvent("associatedTab.menu", framework.EventType.CLICK, track.logWSS);
}
function initMenuTabs()
{
framework.widget.menu.init("menubar.nav");
var element = document.getElementById("notificationTab.menu");
if (typeof(element) != 'undefined')
framework.eventmodel.addElementEvent("notificationTab.menu", framework.EventType.CLICK, getTabToOpen);
framework.eventmodel.addElementEvent("notificationTab.menu", framework.EventType.CLICK, track.logWSS);
element = document.getElementById("associatedTab.menu");
if (typeof(element) != 'undefined')
framework.eventmodel.addElementEvent("associatedTab.menu", framework.EventType.CLICK, getTabToOpen);
framework.eventmodel.addElementEvent("associatedTab.menu", framework.EventType.CLICK, track.logWSS);
}
function registerDetailROHelp()
{
framework.eventmodel.addElementEvent("detail.estDeliveryDateHelp", framework.EventType.MOUSEOVER, showEstDeliveryDateHelp);
framework.eventmodel.addElementEvent("detail.estDeliveryDateHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.deliveryDateHelp", framework.EventType.MOUSEOVER, showDeliveryDateHelp);
framework.eventmodel.addElementEvent("detail.deliveryDateHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.shipDateHelp", framework.EventType.MOUSEOVER, showShipDateHelp);
framework.eventmodel.addElementEvent("detail.shipDateHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.anticipatedDateHelp", framework.EventType.MOUSEOVER, showAnticipatedDateHelp);
framework.eventmodel.addElementEvent("detail.anticipatedDateHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.spodProofofDeliveryHelp", framework.EventType.MOUSEOVER, showSpodProofofDeliveryHelp);
framework.eventmodel.addElementEvent("detail.spodProofofDeliveryHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.proofofDeliveryHelp", framework.EventType.MOUSEOVER, showProofofDeliveryHelp);
framework.eventmodel.addElementEvent("detail.proofofDeliveryHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.multiPieceShipmentHelp", framework.EventType.MOUSEOVER, showMultiPieceShipmentHelp);
framework.eventmodel.addElementEvent("detail.multiPieceShipmentHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.directSigReqHelp", framework.EventType.MOUSEOVER, showDirectSigReqHelp);
framework.eventmodel.addElementEvent("detail.directSigReqHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.indirectSigReqHelp", framework.EventType.MOUSEOVER, showIndirectSigReqHelp);
framework.eventmodel.addElementEvent("detail.indirectSigReqHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.adultSigReqHelp", framework.EventType.MOUSEOVER, showAdultSigReqHelp);
framework.eventmodel.addElementEvent("detail.adultSigReqHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.smartPostHelp", framework.EventType.MOUSEOVER, showSmartPostHelp);
framework.eventmodel.addElementEvent("detail.smartPostHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("track.masternumber", framework.EventType.MOUSEOVER, showMasterHelp);
framework.eventmodel.addElementEvent("track.masternumber", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.onScheduleHelp", framework.EventType.MOUSEOVER, showOnScheduleHelp);
framework.eventmodel.addElementEvent("detail.onScheduleHelp", framework.EventType.MOUSEOUT, closeHelp);
framework.eventmodel.addElementEvent("detail.heldHelp", framework.EventType.MOUSEOVER, showHeldHelp);
framework.eventmodel.addElementEvent("detail.heldHelp", framework.EventType.MOUSEOUT, closeHelp);
}
function checkInfoRequirements(event)
{
if (this.value.length > 0)
{
document.getElementById("timezone").disabled=true;
}
else
{
document.getElementById("timezone").disabled=false;
}
}
function getTabToOpen(event)
{
if (this.id == "associatedTab.menu") {
tabToOpen = associatedShipmentsTab;
}
else if (this.id == "notification.link"){
tabToOpen += "&exceptionsChecked=yes"
}
launchSelectedTab();
}
function showEstDeliveryDateHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', estDeliveryDateText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showDeliveryDateHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', deliveryDateText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showShipDateHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', shipDateText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showAnticipatedDateHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', anticipatedDateText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showSpodProofofDeliveryHelp(event)
{
framework.widget.floatingWindow.setHTML('floatingWindow.help', spodProofofDeliveryHeader, spodProofofDeliveryText);
framework.widget.floatingWindow.show('floatingWindow.help', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showProofofDeliveryHelp(event)
{
framework.widget.floatingWindow.setHTML('floatingWindow.help', proofofDeliveryHeader, proofofDeliveryText);
framework.widget.floatingWindow.show('floatingWindow.help', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showMultiPieceShipmentHelp(event)
{
framework.widget.floatingWindow.setHTML('floatingWindow.help', multiPieceShipmentHeader, multiPieceShipmentText);
framework.widget.floatingWindow.show('floatingWindow.help', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showMasterHelp(event)
{
framework.widget.floatingWindow.setHTML('floatingWindow.help', mpsHeader, mpsText);
framework.widget.floatingWindow.show('floatingWindow.help', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showDirectSigReqHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', directSigReqText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showIndirectSigReqHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', indirectSigReqText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showAdultSigReqHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', adultSigReqText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showOnScheduleHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', onScheduleText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showHeldHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', heldText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function showSmartPostHelp(event)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', smartPostText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', this.id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function closeHelp(event)
{
framework.util.hideElement('floatingWindow.help');
framework.util.hideElement('floatingWindow.help.notitle');
}
function setupDropdown(fieldId, dataCollection, nameIndex, valIndex, clearFirst, sort) {
var options = document.getElementById(fieldId).options;
if(options == undefined)
return;
var optionsArr = new Array();
var preListArr = new Array();
var origLen = options.length;
if (clearFirst) {
options.length = 0;
} else {
for (var i=0; i<origLen; ++i) {
optionsArr[i] = options[i];
}
}
var filledVals = new Array();
var name, val;
for (var item in dataCollection) {
name = (nameIndex<-1) ? item : ( (nameIndex<0) ? dataCollection[item] : dataCollection[item][nameIndex]);
if(rtol)
{
name = name.replace("(", "").replace(")", "");
name = name.replace("(", "").replace(")", "");
}
val = (valIndex<-1) ? item : ( (valIndex<0) ? dataCollection[item] : dataCollection[item][valIndex]);
if (filledVals[val] == undefined) {
filledVals[val] = name;
optionsArr[optionsArr.length] = new Option(name, val);
}
}
if (sort) {
optionsArr.sort(optionCompare);
}
var newArray;
if (preListArr.length > 0)
newArray = preListArr.concat(optionsArr);
else
newArray = optionsArr;
for (var i=0; i<newArray.length; ++i) {
options[i] = newArray[i];
}
return true;
}
function validateTrackFormFields(event)
{
var hasErrors = false;
if (framework.util.isUndefinedOrNull(track.getElementValue("trackNbrs")) || (!(track.getElementValue("trackNbrs")).trim().length > 0) || (track.getElementValue("trackNbrs") == enterTrackingNo)) {
hasErrors = true;
framework.util.showElement("noTracknumbersInput");
} else {
framework.util.hideElement("noTracknumbersInput");
var trackNumbers = track.getElementValue("trackNbrs");
trackList = trackNumbers.split(/\n|,|" "/);
if (trackList.length > 30) {
hasErrors = true;
framework.util.showElement("tooManyTracknumbersInput");
} else {
framework.util.hideElement("tooManyTracknumbersInput");
}
}
if (hasErrors) {
event.preventDefault();
} else {
if (checkKinkosOrders(track.getElementValue("trackNbrs")))
{
document.tracking.submit();
} else {
event.preventDefault();
}
}
}
function initTimeFormat()
{
var tFormat = readCookie("timeFormat");
if (tFormat == "")
{
if (templateType == "print"){
fontWeight("hour12print", "bold");
framework.util.hideElement('hour24print');
}
else{
fontWeight("hour12", "bold");
fontWeight("hour24", "normal");
}
return;
}
if (tFormat == "24h")
{
framework.util.hideElement('hour12print');
convert24HourTime();
}
if (tFormat == "12h")
{
framework.util.hideElement('hour24print');
convert12HourTime();
}
}
function convert12HourTime()
{
if (templateType == "print"){
fontWeight("hour12print", "bold");
framework.util.hideElement('hour24print');
}
else{
fontWeight("hour24", "normal");
fontWeight("hour12", "bold");
}
createCookie("timeFormat", "12h", 2);
var shipmentEstimatedPickupDate = convert12HourTimeHelper(estimatedPickupDate);
framework.util.setInnerHTML("estimatedPickupDate",shipmentEstimatedPickupDate);
var shipmentPickupDate = convert12HourTimeHelper(pickupDate);
framework.util.setInnerHTML("pickupDate",shipmentPickupDate);
var shipmentShipDate = convert12HourTimeHelper(shipDate);
framework.util.setInnerHTML("shipDate",shipmentShipDate);
var shipmentEstimatedDeliveryDate = convert12HourTimeHelper(estimatedDeliveryDate);
framework.util.setInnerHTML("estimatedDeliveryDate",shipmentEstimatedDeliveryDate);
var shipmentDeliveryDateTime = convert12HourTimeHelper(deliveryDateTime);
framework.util.setInnerHTML("deliveryDateTime",shipmentDeliveryDateTime);
track.sortHandler();
}
function convert12HourTimeHelper(convertTime)
{
if (convertTime !=""){
var newDateTime  = new fdxdate(convertTime);
var finalDateTime = "";
if (convertTime.length>12){
finalDateTime = newDateTime.toFDXString();
} else {
finalDateTime = newDateTime.toFDXStringNoTime();
}
}
return finalDateTime;
}
function convert24HourTime()
{
createCookie("timeFormat", "24h", 2);
if (templateType == "print"){
fontWeight("hour24print", "bold");
framework.util.hideElement('hour12print');
}
else{
fontWeight("hour12", "normal");
fontWeight("hour24", "bold");
}
var shipmentEstimatedPickupDate = convert24HourTimeHelper(estimatedPickupDate);
framework.util.setInnerHTML("estimatedPickupDate",shipmentEstimatedPickupDate);
var shipmentPickupDate = convert24HourTimeHelper(pickupDate);
framework.util.setInnerHTML("pickupDate",shipmentPickupDate);
var shipmentShipDate = convert24HourTimeHelper(shipDate);
framework.util.setInnerHTML("shipDate",shipmentShipDate);
var shipmentEstimatedDeliveryDate = convert24HourTimeHelper(estimatedDeliveryDate);
framework.util.setInnerHTML("estimatedDeliveryDate",shipmentEstimatedDeliveryDate);
var shipmentDeliveryDateTime = convert24HourTimeHelper(deliveryDateTime);
framework.util.setInnerHTML("deliveryDateTime",shipmentDeliveryDateTime);
track.sortHandler();
}
function convert24HourTimeHelper(convertTime)
{
if (convertTime !=""){
var newDateTime  = new fdxdate(convertTime);
var finalDateTime = "";
if (convertTime.length>12){
finalDateTime = newDateTime.toFDX24Hour();
} else {
finalDateTime = newDateTime.toFDX24HourNoTime();
}
}
return finalDateTime;
}
function getGMTOffsetTimeZone(event)
{
if (templateType != "print") {
var timeZone = (track.getElementValue("GMTtime").substring(0,6).replace(/:/g, ""));
} else {
var timeZone = selectedGMTtime.substring(0,6).replace(/:/g, "");
}
var scanTableData=new Array(detailInfoObject.scans.length);
if(detailInfoObject.scans.length > 0)
{
if (timeZone != "select"){
scanTableData = populateTable(detailInfoObject, timeZone);
}
else {
scanTableData = populateTable(detailInfoObject, null);
}
}
framework.widget.table.init("table.travelHistory", null, null);
framework.widget.table.setTableContentsArray("table.travelHistory", scanTableData, true);
initTimeFormat();
track.sortHandler();
}
function getSelectionTime(event)
{
if (templateType == "print") {
var selectionTime = selectedTimeZone;
} else {
var selectionTime = (track.getElementValue("timezone"));
}
if (selectionTime == "localScanTime")
{
framework.util.hideElement("timeZoneOtherMsg");
framework.util.showElement("timeZoneLocalMsg");
framework.util.hideElement("timeZoneAlertOrigin");
framework.util.hideElement("timeZoneAlertDestination");
framework.util.hideElement("showOthers");
var scanTableData=new Array(detailInfoObject.scans.length);
if(detailInfoObject.scans.length > 0)
{
scanTableData = populateTable(detailInfoObject, null);
}
framework.widget.table.init("table.travelHistory", null, null);
framework.widget.table.setTableContentsArray("table.travelHistory", scanTableData, true);
initTimeFormat();
}
if (selectionTime == "others")
{
framework.util.showElement("timeZoneOtherMsg");
framework.util.hideElement("timeZoneLocalMsg");
framework.util.hideElement("timeZoneAlertOrigin");
framework.util.hideElement("timeZoneAlertDestination");
framework.util.showElement("showOthers");
var control = document.getElementById("GMTtime");
control.selectedIndex = 0;
}
if (selectionTime == "origin")
{
framework.util.showElement("timeZoneOtherMsg");
framework.util.hideElement("timeZoneLocalMsg");
framework.util.hideElement("showOthers");
framework.util.hideElement("timeZoneAlertDestination");
framework.util.hideElement("timeZoneAlertOrigin");
var scanTableData=new Array(detailInfoObject.scans.length);
if(detailInfoObject.scans.length > 0)
{
if (!framework.util.isUndefinedOrNull(detailInfoObject.origGMTOffset)){
scanTableData = populateTable(detailInfoObject, detailInfoObject.origGMTOffset);
}
else {
framework.util.showElement("timeZoneAlertOrigin");
framework.util.showElement("showOthers");
document.getElementById("timezone").selectedIndex = 3;
}
}
framework.widget.table.init("table.travelHistory", null, null);
framework.widget.table.setTableContentsArray("table.travelHistory", scanTableData, true);
initTimeFormat();
}
if (selectionTime == "destScanTime")
{
framework.util.showElement("timeZoneOtherMsg");
framework.util.hideElement("timeZoneLocalMsg");
framework.util.hideElement("showOthers");
framework.util.hideElement("timeZoneAlertOrigin")
framework.util.hideElement("timeZoneAlertDestination");
var scanTableData=new Array(detailInfoObject.scans.length);
if(detailInfoObject.scans.length > 0)
{
if (!framework.util.isUndefinedOrNull(detailInfoObject.destGMTOffset)){
scanTableData = populateTable(detailInfoObject, detailInfoObject.destGMTOffset);
}
else {
framework.util.showElement("timeZoneAlertDestination");
framework.util.showElement("showOthers");
document.getElementById("timezone").selectedIndex = 3;
}
}
framework.widget.table.init("table.travelHistory", null, null);
framework.widget.table.setTableContentsArray("table.travelHistory", scanTableData, true);
initTimeFormat();
}
track.sortHandler();
}
function populateTable (detailInfoObject, offSet)
{
framework.util.showElement("table.travelHistory");
var firstScan = true;
var scanTableData=new Array(detailInfoObject.scans.length);
for(var j=0; j<detailInfoObject.scans.length;j++)
{
scanTableData[j]=new Array(4);
var GMTOffset = "+0000";
if(!framework.util.isUndefinedOrNull(offSet))
{
if(!framework.util.isUndefinedOrNull(detailInfoObject.scans[j].GMTOffset)){
GMTOffset = detailInfoObject.scans[j].GMTOffset.replace(/:/g, "");;
}
var WebCore = (!!document.implementation &&
!!document.implementation.createHTMLDocument &&
!document.fileCreatedDate &&
!!window.XMLHttpRequest &&
!window.opera);
var offsetString = "";
if (WebCore)
{
if (navigator.vendor.indexOf("Apple") != -1)
{
offsetString = "GMT" + GMTOffset;
}
}
else {
offsetString = " GMT " + GMTOffset;
}
if(!framework.util.isUndefinedOrNull(detailInfoObject.scans[j].scanTime)){
var myDate = new fdxdate(detailInfoObject.scans[j].scanDate + " " + detailInfoObject.scans[j].scanTime +  offsetString);
offSet = offSet.replace(/:/g, "");
myDate.changeGMTOffset(offSet);
GMTOffsetChanged = myDate.toFDXString();
}
else {
GMTOffsetChanged = detailInfoObject.scans[j].scanDate;
}
}
else
{
if(!framework.util.isUndefinedOrNull(detailInfoObject.scans[j].scanTime)){
GMTOffsetChanged = (detailInfoObject.scans[j].scanDate + " " + detailInfoObject.scans[j].scanTime);
}
else {
GMTOffsetChanged = detailInfoObject.scans[j].scanDate;
}
}
scanTableData[j][0]= GMTOffsetChanged;
if (firstScan)
{
scanTableData[j][1]= "<DIV CLASS=detailfirstscan>" + detailInfoObject.scans[j].scanStatus + "</DIV>";
activity = "<DIV CLASS=detailfirstscan>" + detailInfoObject.scans[j].scanStatus + "</DIV>";
firstScan = false;
}
else
{
scanTableData[j][1]= detailInfoObject.scans[j].scanStatus;
activity = detailInfoObject.scans[j].scanStatus;
}
if (!framework.util.isUndefinedOrNull(detailInfoObject.scans[j].scanLocation))
{
scanTableData[j][2]= detailInfoObject.scans[j].scanLocation;
scanLocation = detailInfoObject.scans[j].scanLocation;
}
else
{
scanTableData[j][2]= "";
}
if (!framework.util.isUndefinedOrNull(detailInfoObject.scans[j].scanComments))
{
scanTableData[j][3]= detailInfoObject.scans[j].scanComments;
scanComments = detailInfoObject.scans[j].scanComments;
}
else
{
scanTableData[j][3]= "";
}
}
return scanTableData;
}
function onClickSplitShipmentStatusLink(event)
{
framework.util.setInnerHTML("split.shipment.status",detailInfoObject.status);
framework.util.showElement("detailTravelHistory");
printActionUrl += "&showSplitShipScans=yes";
event.preventDefault();
}
function moduleHelp(event)
{
var moduleHelpUrl = helplink;
var id = this.id;
if (id.indexOf("module.shipmentoptions") != -1){
moduleHelpUrl += "\#qh006";
}
if (id.indexOf("module.shipmentfacts") != -1) {
moduleHelpUrl += "\#qh007";
}
if (id.indexOf("module.table") != -1) {
moduleHelpUrl += "\#qh008";
}
track.moduleHelpDialog(moduleHelpUrl,false);
}
function defaultEnterKey(event)
{
var key;
if(window.event)
key = window.event.keyCode;
else
key = event.which;
if (key == 13) {
validateTrackFormFields(event);
}
}
function preparePrintURL(event)
{
var url = printActionUrl;
var selectedTimeZone = track.getElementValue("timezone");
url += "&selectedTimeZone=" + selectedTimeZone;
if (selectedTimeZone == "others" && !framework.util.isUndefinedOrNull(document.getElementById("GMTtime"))) {
var control = document.getElementById("GMTtime");
var selectedGMTtime = control.value;
url += "&selectedGMTtime=" + selectedGMTtime;
var idx = control.selectedIndex;
var selectedGMTtext = control.options[idx].text;
selectedGMTtext = selectedGMTtext.replace("&", "and");
url += "&selectedGMTtext=" + selectedGMTtext;
}
track.moduleHelpDialog(url, true);
}
function toggle()
{
var ele = document.getElementById("toggleText");
var text = document.getElementById("displayText");
if(ele.style.display == "block")
{
ele.style.display = "none";
text.style.display = "block";
}
else
{
ele.style.display = "block";
text.style.display = "none";
}
}
function submitStep1Form(event)
{
document.step1Form.toggle.value = "showRecipient";
document.step1Form.submit();
}
function cancelStep1Form()
{
document.step1Form.toggle.value = "";
document.step1Form.submit();
}
function submitStep3Form()
{
document.step3Form.selectAnotherLoc.value = "yes"
document.step3Form.submit();
}
var supported = navigator.userAgent.indexOf("Mozilla")==0 && navigator.userAgent.substring(8,9) >= 3;
function openSmallWin(howto)
{
size = "height=500,width=500";
if(supported) {
howto = window.open(howto,"howto","resizable=yes,scrollbars=yes,status=no,"+size);
return false;
}
else
return true;
}
function displayScanRolloverHelp(id, rollOverText)
{
framework.widget.floatingWindow.setHTMLContent('floatingWindow.help.notitle', rollOverText);
framework.widget.floatingWindow.show('floatingWindow.help.notitle', id, 'right', 200, framework.WidgetConstants.AUTO_HEIGHT, false);
}
function closeScanRolloverHelp(event)
{
framework.util.hideElement('floatingWindow.help');
framework.util.hideElement('floatingWindow.help.notitle');
}
function onCloseSetAsLocation(results)
{
document.step2Form.locId.value=results.locationId;
document.step2Form.locName.value=results.locationName;
document.step2Form.locAddress.value=results.originAddress;
document.step2Form.locCity.value=results.originCity;
document.step2Form.locStateProvince.value=results.originState;
document.step2Form.locPhoneNumber.value=results.phoneNumber;
document.step2Form.locPostalCode.value=results.originZip;
document.step2Form.submit();
}
function submitSort()
{
document.sortForm.regularSort.value = "yes";
document.sortForm.submit();
}
function sortNow()
{
var tableId = "table.travelHistory";
var tableData = framework.widget.table.getTableContentsArray(tableId);
var sortColumn = framework.widget.table.getCurrentSortColumnIndex(tableId);
var sortOrder = framework.widget.table.getCurrentSortOrder(tableId);
if(sortOrder == "sortNone")
{
sortOrder = sortType;
}
tableData.sort();
framework.widget.table.setTableContentsArray(tableId, tableData, false);
}
