var gstrValues   = ""
var gstrForms    = ""
var gstrElements = ""
var gstrTypes    = ""
var blnSetValues = true
var gstrBodyHTML
var gstrBodyHTML1
var gstrBodyHTML2
var gstrBodyHTML3
var gstrHeaderHTML
var strTitle = ""
var reOpenScriptTags     = /<script [^\>]+\>/gi;
var reCloseScriptTags    = /<\/script>/gi;
var reEvents             = /onSubmit|onSelect|onScroll|onResize|onReset|onLoad|onMouseOver|onMouseOut|onMouseMove|onMouseDown|onMouseUp|onClick|onChange|onAbort|onUnLoad|onFocus|onBlur|onKeyUp|onKeyDown|onKeyPress|onDragStart|onDragDrop|onDblClick/gi;
var reHref               = /href/gi;
var reDisableSelects     = /<select/gi;
var reDisableRadios      = /type ?=?"?radio"?/gi;
var reDisableInputs      = /<input/gi;
var reDisableTextareas   = /<textarea/gi;
var reScriptComments     = /\/\/ +-->/gi;
var reNotesToggleFalse   = /nullEvent=\"?parent.frmBody.ShowHideNotes\(false\)\"?; nullHref=\"?javascript:void\(null\);\"?/;
var reNotesToggleTrue    = /nullEvent=\"?parent.frmBody.ShowHideNotes\(true\)\"?; nullHref=\"?javascript:void\(null\);\"?/;
var reNotesToggle        = /nullHref=\"?javascript:void\(null\);\"? nullEvent=\"?parent.frmBody.ShowHideNotes/gi;
var reEndSpan            = /<\/span>/

if (ie4) {
   var reBlackCityStateZip  = /input disabled type=['"]?text['"]? value=['"]?city\/state\/zip:['"]? name=['"]?txtZip['"]? class=['"]?txtForm['"]?/gi;
   var reRedCityStateZip    = /input disabled type=['"]?text['"]? value=['"]?city\/state\/zip:['"]? name=['"]?txtZip['"]? class=['"]?txtFormReq['"]?/gi;
   var reBlackZipPostalCode = /input disabled class=txtForm/gi;
   var reRedZipPostalCode   = /input disabled class=txtFormReq/gi;
}
else {
   var reBlackCityStateZip  = /input disabled value=['"]?city\/state\/zip:['"]? name=['"]?txtZip['"]? class=['"]?txtForm['"]?/gi;
   var reRedCityStateZip    = /input disabled value=['"]?city\/state\/zip:['"]? name=['"]?txtZip['"]? class=['"]?txtFormReq['"]?/gi;
   var reBlackZipPostalCode = /input disabled value=['"]?zip code[\*]?:['"]? name=['"]?txtZip['"]? class=['"]?txtForm['"]?/gi;
   var reRedZipPostalCode   = /input disabled value=['"]?zip code[\*]?:['"]? name=['"]?txtZip['"]? class=['"]?txtFormR['"]?/gi;
}

function PrintPage(strStyle,strContent){
   strTitle = "ABF U-Pack Web Site - Print Page"

   if ((strContent == "") || (strContent == "undefined")) strContent = "content";
   
   gstrHeaderHTML = "<HTML>"
   gstrHeaderHTML += "<link HREF='/style/interior.css' REL='STYLESHEET' TYPE='text/css'>"
   gstrHeaderHTML += "<TABLE BORDER='0' CELLSPACING='0' CELLPADDING='0' WIDTH='100%' HEIGHT='28' CLASS='navBar' ID='minWin'>"
   gstrHeaderHTML +=   "<TR>"
   gstrHeaderHTML +=     "<TD WIDTH='40%'><FONT CLASS='navBarTxt'>&nbsp;" + strTitle + "&nbsp;</FONT></TD>"
   gstrHeaderHTML +=     "<TD WIDTH='60%' ALIGN='RIGHT' NOWRAP><font class='navBarTxt2'>"
   gstrHeaderHTML +=     	"<INPUT TYPE='BUTTON' VALUE='Print' CLASS='frm' ONCLICK='javascript:parent.frameBody.focus();parent.frameBody.print()'>&nbsp;<INPUT TYPE='BUTTON' VALUE='Exit' CLASS='frm' ONCLICK='parent.close()'>&nbsp;</font>"
   gstrHeaderHTML	+=		 "</TD>"
   gstrHeaderHTML +=   "</TR>"
   gstrHeaderHTML += "</TABLE>"

   if ((strStyle == null) || (strStyle == '')) gstrBodyHTML1 = "<link HREF='/style/interior.css' REL='STYLESHEET' TYPE='text/css'>"
   else gstrBodyHTML1 = "<link HREF='" + strStyle + "' REL='STYLESHEET' TYPE='text/css'>"

   if (ns6) {
      blnSetValues = true
      getFormInfoForNS()
   }
   else {
      gstrBodyHTML1 += "<html><body class=winBody>"
   }

//look into this using regular expression
   if (document.getElementById("PageResults") == null) gstrBodyHTML2 = eval('document.getElementById("content").innerHTML')
   else {
      if (document.getElementById("PageResults").innerHTML.replace(/\s/gi,"") == "") gstrBodyHTML2 = eval('document.getElementById("content").innerHTML')
      else gstrBodyHTML2 = document.getElementById("PageResults").innerHTML;
   }

   gstrBodyHTML2 = PrintPageReplace(gstrBodyHTML2)
   if (!ns6) gstrBodyHTML2  += "</body>"

   gstrBodyHTML  = gstrBodyHTML1 + gstrBodyHTML2

   if (screen.width == "640" && screen.height == "480") upWinXY('printWin','',600,420,true,false,true)
   else upWinXY('printWin','',700,420,true,false,true)

   printWin.document.write("<HTML>")
   printWin.document.write("<FRAMESET FRAMEBORDER='no' ROWS='28,*'>")
   printWin.document.write("   <FRAME ID='frameHeader' NAME='frameHeader' MARGINWIDTH='0' MARGINHEIGHT='0' SCROLLING='NO' NORESIZE FRAMEBORDER='0'>")
   printWin.document.write("   <FRAME ID='frameBody' NAME='frameBody' FRAMEBORDER='0' SCROLLING='yes'>")
   printWin.document.write("</FRAMESET>")
   printWin.document.write("</HTML>")

   setTimeout("printWin.frameHeader.document.write(gstrHeaderHTML)",200);
   setTimeout("printWin.frameHeader.document.close()",400);
   setTimeout("printWin.frameBody.document.write(gstrBodyHTML)",600);
   setTimeout("printWin.frameBody.document.close()",800);
   if (printWin.frameBody.document.getElementById("BreadCrumbs")) {
      printWin.frameBody.document.getElementById("BreadCrumbs").innerHTML = '';
   }

   if (ns6) printWin.document.title = strTitle;
   else printWin.frameHeader.parent.document.title = strTitle;
}

function PrintPageBoxes(strStyle,strContent,strContent2){
   strTitle = "ABF U-Pack Web Site - Print Page"

   if ((strContent == "") || (strContent == "undefined")) strContent = "content";

   gstrHeaderHTML = "<HTML>"
   gstrHeaderHTML += "<link HREF='/style/interior.css' REL='STYLESHEET' TYPE='text/css'>"
   gstrHeaderHTML += "<TABLE BORDER='0' CELLSPACING='0' CELLPADDING='0' WIDTH='100%' HEIGHT='28' CLASS='navBar' ID='minWin'>"
   gstrHeaderHTML +=   "<TR>"
   gstrHeaderHTML +=     "<TD WIDTH='40%'><FONT CLASS='navBarTxt'>&nbsp;" + strTitle + "&nbsp;</FONT></TD>"
   gstrHeaderHTML +=     "<TD WIDTH='60%' ALIGN='RIGHT' NOWRAP><font class='navBarTxt2'>"
   gstrHeaderHTML +=     	"<INPUT TYPE='BUTTON' VALUE='Print' CLASS='frm' ONCLICK='javascript:parent.frameBody.focus();parent.frameBody.print()'>&nbsp;<INPUT TYPE='BUTTON' VALUE='Exit' CLASS='frm' ONCLICK='parent.close()'>&nbsp;</font>"
   gstrHeaderHTML	+=		 "</TD>"
   gstrHeaderHTML +=   "</TR>"
   gstrHeaderHTML += "</TABLE>"

   if ((strStyle == null) || (strStyle == '')) gstrBodyHTML1 = "<link HREF='/style/interior.css' REL='STYLESHEET' TYPE='text/css'>"
   else gstrBodyHTML1 = "<link HREF='" + strStyle + "' REL='STYLESHEET' TYPE='text/css'>"

   if (ns6) {
      blnSetValues = true
      getFormInfoForNS()
   }
   else {
      gstrBodyHTML1 += "<html><body class=winBody>"
   }

//look into this using regular expression
   if (document.getElementById("PageResults") == null) {
   	  gstrBodyHTML2 = eval('document.getElementById("content").innerHTML');
   	  gstrBodyHTML3 = eval('document.getElementById("content2").innerHTML');
   }
   else {
      if (document.getElementById("PageResults").innerHTML.replace(/\s/gi,"") == "") {
      	gstrBodyHTML2 = eval('document.getElementById("content").innerHTML');
      	gstrBodyHTML3 = eval('document.getElementById("content2").innerHTML');
      }
      else gstrBodyHTML2 = document.getElementById("PageResults").innerHTML;
   }
   gstrBodyHTML2 = PrintPageReplace(gstrBodyHTML2)
   gstrBodyHTML3 = PrintPageReplace(gstrBodyHTML3)
   gstrBodyHTML  = gstrBodyHTML1 + gstrBodyHTML2 + gstrBodyHTML3
   
   if (!ns6) gstrBodyHTML += "</body>"

   if (screen.width == "640" && screen.height == "480") upWinXY('printWin','',600,420,true,false,true)
   else upWinXY('printWin','',700,420,true,false,true)

   printWin.document.write("<HTML>")
   printWin.document.write("<FRAMESET FRAMEBORDER='no' ROWS='28,*'>")
   printWin.document.write("   <FRAME ID='frameHeader' NAME='frameHeader' MARGINWIDTH='0' MARGINHEIGHT='0' SCROLLING='NO' NORESIZE FRAMEBORDER='0'>")
   printWin.document.write("   <FRAME ID='frameBody' NAME='frameBody' FRAMEBORDER='0' SCROLLING='yes'>")
   printWin.document.write("</FRAMESET>")
   printWin.document.write("</HTML>")

   setTimeout("printWin.frameHeader.document.write(gstrHeaderHTML)",200);
   setTimeout("printWin.frameHeader.document.close()",400);
   setTimeout("printWin.frameBody.document.write(gstrBodyHTML)",600);
   setTimeout("printWin.frameBody.document.close()",800);
   if (printWin.frameBody.document.getElementById("BreadCrumbs")) {
      printWin.frameBody.document.getElementById("BreadCrumbs").innerHTML = '';
   }

   if (ns6) printWin.document.title = strTitle;
   else printWin.frameHeader.parent.document.title = strTitle;
}

function PrintPageReplace(strHTML){
	 strHTML = strHTML.replace(reOpenScriptTags,"<!--")
   strHTML = strHTML.replace(reCloseScriptTags,"-->")
   strHTML = strHTML.replace(reEvents,"nullEvent")
   strHTML = strHTML.replace(reHref,"nullHref")
   strHTML = strHTML.replace(reDisableSelects,"<select disabled class=inputDisable")
   strHTML = strHTML.replace(reDisableRadios,"type=radio disabled class=inputDisable")
   strHTML = strHTML.replace(reDisableInputs,"<input disabled class=inputDisable")
   strHTML = strHTML.replace(reDisableTextareas,"<textarea disabled class=inputDisable")
   strHTML = strHTML.replace(reRedZipPostalCode,"input class=txtFormReq name=txtZip readOnly")
   strHTML = strHTML.replace(reBlackZipPostalCode,"input class=txtForm name=txtZip readOnly")
   strHTML = strHTML.replace(reRedCityStateZip,"input type=text value=City/State/Zip: NAME=txtZip CLASS=txtFormReq readonly")
   strHTML = strHTML.replace(reBlackCityStateZip,"input type=text value=City/State/Zip: NAME=txtZip CLASS=txtForm readonly")
   strHTML = strHTML.replace(/link nullEvent/gi,"LINK HREF")
   strHTML = strHTML.replace(reScriptComments,"")
   strHTML = strHTML.replace(reNotesToggleFalse,'href="javascript:void(null);" onclick="parent.frameHeader.ShowHideNotes(false);"')
   strHTML = strHTML.replace(reNotesToggleTrue,'href="javascript:void(null);" onclick="parent.frameHeader.ShowHideNotes(true);"')
   strHTML = strHTML.replace(reNotesToggle,'href="javascript:void(null);" onclick="parent.frameHeader.ShowHideNotes')
   return strHTML;
}

function getFormInfoForNS() {
   var intSub = 0;
   var d = document;
   var arrValues = new Array();
   var arrForms = new Array();
   var arrElements = new Array();
   var arrTypes = new Array();
   var strSpanHTML;
   var reTickies = /'/gi;

   for(var i=0;i<d.forms.length;i++) {
      if (document.getElementById("PageResults") == null) {
         strSpanHTML = document.getElementById("content").innerHTML
      }
      else {
         if (document.getElementById("PageResults").innerHTML.replace(/\s/gi,"") == "") {
            strSpanHTML = document.getElementById("content").innerHTML
         }
         else {
            strSpanHTML = document.getElementById("PageResults").innerHTML
         }
      }

      if (strSpanHTML.indexOf(d.forms[i].name) > -1) {
         for(var j=0;j<d.forms[i].elements.length;j++) {
            var objElement = d.forms[i].elements[j];
            if (objElement.type == "textarea" || objElement.type == "text" || objElement.type == "radio" || objElement.type == "checkbox" || objElement.type == "select-one" || objElement.type == "select-multiple") {
               if (d.forms[i].name == "") arrForms[intSub] = d.forms[i].id
               else arrForms[intSub] = d.forms[i].name

               if (objElement.name == "") arrElements[intSub] = objElement.id
               else arrElements[intSub] = objElement.name

               arrTypes[intSub] = objElement.type

               if (objElement.type == "textarea" || objElement.type == "text") {
                  var strReplaceString = objElement.value
                  arrValues[intSub] = strReplaceString.replace(reTickies, '*tickie*')
                  intSub++
               }
               else if (objElement.type == "radio" || objElement.type == "checkbox") {
                  arrValues[intSub] = objElement.checked
                  intSub++
               }
               else if (objElement.type == "select-one") {
                  arrValues[intSub] = objElement.options.selectedIndex
                  intSub++
               }
               else if (objElement.type == "select-multiple") {
                  //not currently handled
               }
            }
         }
      }
   }

   gstrForms    = arrForms.join("|~|")
   gstrElements = arrElements.join("|~|")
   gstrTypes    = arrTypes.join("|~|")
   gstrValues   = arrValues.join("|~|")

   if (blnSetValues) {
      gstrBodyHTML1 += "<body class=winBody>"
      gstrBodyHTML1 += "<!--hidfields--><input type='hidden' value='" + gstrForms + "' name='hidForms' id='hidForms'>"
      gstrBodyHTML1 += "<input type='hidden' value='" + gstrElements + "' name='hidElements' id='hidElements'>"
      gstrBodyHTML1 += "<input type='hidden' value='" + gstrTypes + "' name='hidTypes' id='hidTypes'>"
      gstrBodyHTML1 += "<input type='hidden' value='" + gstrValues + "' name='hidValues' id='hidValues'><!--endhidfields-->"
      gstrBodyHTML1 += "</body>"
      gstrBodyHTML1 += "<scrip" + "t language=JavaScript>"
      gstrBodyHTML1 += "setTimeout('setFormValues()',200);"
      gstrBodyHTML1 += "function setFormValues() {"
      gstrBodyHTML1 += "  var intSub = 0;"
      gstrBodyHTML1 += "  var d = document;"
      gstrBodyHTML1 += "  var docForms = document.forms;"
      gstrBodyHTML1 += "  var reTickieText = /\\*tickie\\*/gi;"
      gstrBodyHTML1 += "  var arrForms    = d.getElementById('hidForms').value.split('|~|');"
      gstrBodyHTML1 += "  var arrElements = d.getElementById('hidElements').value.split('|~|');"
      gstrBodyHTML1 += "  var arrTypes    = d.getElementById('hidTypes').value.split('|~|');"
      gstrBodyHTML1 += "  var arrValues   = d.getElementById('hidValues').value.split('|~|');"
      gstrBodyHTML1 += "  for (var i=0;i<docForms.length;i++) {"
      gstrBodyHTML1 += "    for (var j=0;j<docForms[i].elements.length;j++) {"
      gstrBodyHTML1 += "      var objElement = docForms[i].elements[j]; "
      gstrBodyHTML1 += "      if (objElement.type == 'text' || objElement.type == 'textarea' || objElement.type == 'radio' || objElement.type == 'checkbox' || objElement.type == 'select-one' || objElement.type == 'select-multiple') {"
      gstrBodyHTML1 += "        switch (objElement.type) {"
      gstrBodyHTML1 += "          case 'text':"
      gstrBodyHTML1 += "          case 'textarea':"
      gstrBodyHTML1 += "            if ((objElement.name == arrElements[intSub]) || (objElement.id == arrElements[intSub])) {"
      gstrBodyHTML1 += "               var strReplaceString = new String(arrValues[intSub]);"
      gstrBodyHTML1 += "               objElement.value = strReplaceString.replace(reTickieText, \"'\");"
      gstrBodyHTML1 += "               arrElements[intSub] = '';"
      gstrBodyHTML1 += "               intSub++;"
      gstrBodyHTML1 += "            }"
      gstrBodyHTML1 += "            else {"
      gstrBodyHTML1 += "               for (var k=(intSub + 1);k<arrElements.length;k++) {"
      gstrBodyHTML1 += "                  if ((objElement.name == arrElements[k]) || (objElement.id == arrElements[k])) {"
      gstrBodyHTML1 += "                     var strReplaceString = new String(arrValues[k]);"
      gstrBodyHTML1 += "                     objElement.value = strReplaceString.replace(reTickieText, \"'\");"
      gstrBodyHTML1 += "                     arrElements[k] = '';"
      gstrBodyHTML1 += "                     break;"
      gstrBodyHTML1 += "                  }"
      gstrBodyHTML1 += "               }"
      gstrBodyHTML1 += "            }"
      gstrBodyHTML1 += "            break;"
      gstrBodyHTML1 += "          case 'radio':"
      gstrBodyHTML1 += "          case 'checkbox':"
      gstrBodyHTML1 += "            if ((objElement.name == arrElements[intSub]) || (objElement.id == arrElements[intSub])) {"
      gstrBodyHTML1 += "               if(arrValues[intSub] == 'true') objElement.checked = true;"
      gstrBodyHTML1 += "               else objElement.checked = false;"
      gstrBodyHTML1 += "               arrElements[intSub] = '';"
      gstrBodyHTML1 += "               intSub++;"
      gstrBodyHTML1 += "            }"
      gstrBodyHTML1 += "            else {"
      gstrBodyHTML1 += "               for (var k=(intSub + 1);k<arrElements.length;k++) {"
      gstrBodyHTML1 += "                  if ((objElement.name == arrElements[k]) || (objElement.id == arrElements[k])) {"
      gstrBodyHTML1 += "                     if(arrValues[k] == 'true') objElement.checked = true;"
      gstrBodyHTML1 += "                     else objElement.checked = false;"
      gstrBodyHTML1 += "                     arrElements[k] = '';"
      gstrBodyHTML1 += "                     break;"
      gstrBodyHTML1 += "                  }"
      gstrBodyHTML1 += "               }"
      gstrBodyHTML1 += "            }"
      gstrBodyHTML1 += "            break;"
      gstrBodyHTML1 += "          case 'select-one':"
      gstrBodyHTML1 += "            if ((objElement.name == arrElements[intSub]) || (objElement.id == arrElements[intSub])) {"
      gstrBodyHTML1 += "               objElement.selectedIndex = parseInt(arrValues[intSub]);"
      gstrBodyHTML1 += "               arrElements[intSub] = '';"
      gstrBodyHTML1 += "               intSub++;"
      gstrBodyHTML1 += "            }"
      gstrBodyHTML1 += "            else {"
      gstrBodyHTML1 += "               for (var k=(intSub + 1);k<arrElements.length;k++) {"
      gstrBodyHTML1 += "                  if ((objElement.name == arrElements[k]) || (objElement.id == arrElements[k])) {"
      gstrBodyHTML1 += "                     objElement.selectedIndex = parseInt(arrValues[k]);"
      gstrBodyHTML1 += "                     arrElements[k] = '';"
      gstrBodyHTML1 += "                     break;"
      gstrBodyHTML1 += "                  }"
      gstrBodyHTML1 += "               }"
      gstrBodyHTML1 += "            }"
      gstrBodyHTML1 += "            break;"
      gstrBodyHTML1 += "          case 'select-multiple':"
      gstrBodyHTML1 += "            break;"
      gstrBodyHTML1 += "          default:"
      gstrBodyHTML1 += "            break;"
      gstrBodyHTML1 += "        }"
      gstrBodyHTML1 += "      }"
      gstrBodyHTML1 += "    }"
      gstrBodyHTML1 += "  }"
      gstrBodyHTML1 += "}"
      gstrBodyHTML1 += "</scrip" + "t>"
   }
}
