/*
 * Receives the tab forward event supplied from the previous window supplied.
 */
function receiveTabForwardEvent(theFromWindow, theEvent) {
  window.setTimeout("setFocusToCaseNbr()", 10);
}

/*
 * Receives the tab backward event supplied from the previous window supplied.
 */
function receiveTabBackwardEvent(theFromWindow, theEvent) {
  window.setTimeout("setFocusToSearchButton()", 10);
}

/*
 * Sets focus to the Case Number.
 */
function setFocusToCaseNbr() {
  window.focus();
  var caseNbr = document.getElementById("caseNbr");

  if (caseNbr != null) {
    caseNbr.focus();
  }
}

/*
 * Sets focus to the Ticket Number.
 */
function setFocusToTicketNbr() {
  window.focus();
  var ticketNbr = document.getElementById("ticketNbr");

  if (ticketNbr != null) {
    ticketNbr.focus();
  }
}

/*
 * Sets focus to the search button.
 */
function setFocusToSearchButton() {
  window.focus();
  var searchButton = document.getElementById("searchButton");

  if (searchButton != null) {
    searchButton.focus();
  }
}

/*
 * Format Case Number for Searching
 */
function fmtCaseNbr() {
 var caseNbr = document.getElementById("caseNbr");

 if ((caseNbr) && caseNbr.value != "") {
    var retRequest = getXMLHttpRequest();
    var retCallbackHand =  getCallBackHandler(retRequest, updateCaseNbr);
    retRequest.onreadystatechange= retCallbackHand;
    retRequest.open("POST", "FormatCaseNumber", true);
    retRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    retRequest.send("case_nbr=" + caseNbr.value);
 }
}

/*
 * update Case Number
 * process XML and update case number with results.
 */
function updateCaseNbr(retXML) {
 var caseNbr = document.getElementById("caseNbr");
 var caseNbrEle = retXML.getElementsByTagName("caseNumber")[0];

 if ((caseNbrEle) && (caseNbr)){
    caseNbr.value = caseNbrEle.firstChild.nodeValue;
 }
}

/*
 * Initialize the page with registering hot keys and setting focus to case number.
 */
function initializePage() {

  window.setTimeout("setFocusToCaseNbr()", 10);
}

/*
 * Cleanup the page with unregistering hot keys.
 */
function cleanupPage() {
}
