﻿
  var ANX = (isIE)? "A" : "a";
  var ULX = (isIE)? "UL" : "ul";
  var LIX = (isIE)? "LI" : "li";
  var DIVX = (isIE)? "DIV" : "div";
  var LVL_ID = new Array("A","B","C","E","F")

 /* top nav */
  var navSections = new Array("ourStations","ourFuels","Community","tips")
  var topNav = new Array("tnavStations","tnavFuels","tnavCommunity","tnavTips")
  var subNav = new Array("subnavStations","subnavFuels","subnavCommunity","subnavTips")
    var parentLevels = new Array()
    var childMenus = new Array()
    var g_curSubNav = "" 
    var aMatchIDX = -1;   
    document.write("<style> .rtSecondLevel, .rtThirdLevel, .rtFourthLevel { display:none; } </style>");
    var g_TIMES = 0;

function cleanUrl(curURL) {
  var cl_URL = curURL.replace(/\/index.*/,'/');
	cl_URL = cl_URL.replace(/\/default.*/,'/');
	cl_URL = cl_URL.replace(/#.*/,'');
	cl_URL = cl_URL.replace(/\?.*/,'');
  return cl_URL.toLowerCase();
}

    var docUrl = cleanUrl(document.URL)

function setSideMenus() {
    getTopNav();
  if(document.getElementById("rightNav")) {
     getParentsArray("rightNav"); 
     if(!MenuMemory("rightNav")) {
         for (var j=0; j < parentLevels.length; j++) {
               if (parentLevels[j].length > 0) {
                   if(parentLevels[j].item(0).hasChildNodes()) {
                      if(isIE) {
                          if (getTheMatch("rightNav",j))
                               break;
                      } else {
                           if (getFireFoxMatching("rightNav",j))
                              break;
                      }
                   } 
               } 
         }  // for j
     }   // MenuMemory 
   }  // #30       
 }  // #28


/*  TOP NAV HI-LITE */
function turnAllOff() {  for (var j=0; j < subNav.length; j++) {  turnOff(subNav[j]) } }

function doThis() {
   var t = this.id
    var x
   if (t.charAt(0)=="t") 
      x =  'sub' + t.substring(1,t.length)
   else
      x = 'sub' + t.substring(0,t.length-1)
   turnAllOff(); turnOn(x);
   hideSelect();
}

function unDoThis() {
   var t = this.id
    var x
   if (t.charAt(0)=="t") 
      x =  'sub' + t.substring(1,t.length)
   else
      x = 'sub' + t.substring(0,t.length-1)
    turnOff_d(x,100);
    unhideSelect();
}

function unDoThis2() {
   var t = this.id
    var x
   if (t.charAt(0)=="t") 
      x =  'sub' + t.substring(1,t.length)
   else
      x = 'sub' + t.substring(0,t.length-1)
    turnOff_d(x,200);
    unhideSelect();
}

function getTopNav() {
   // this will hi-lite the top nav
  var tmp, tp2

  for (var k=0; k < navSections.length; k++) {
    if (docUrl.lastIndexOf("/" + navSections[k].toLowerCase() + "/") > -1) {
        // matching, hi-lite top button
       document.getElementById(topNav[k]).className = "onState"
    } else {
            // insert into its topNav & subNav li items mouseover events, mouseout events
       if (subNav[k] != "") {         
          document.getElementById(topNav[k]).onmouseover = doThis;
          document.getElementById(topNav[k]).onmouseout = unDoThis2;
          tmp = document.getElementById(subNav[k]).getElementsByTagName(LIX)
          for (var m = 0; m < tmp.length; m++) {
             tmp.item(m).getElementsByTagName(ANX).item(0).onmouseover = doThis;
             tmp.item(m).getElementsByTagName(ANX).item(0).onmouseout = unDoThis;
          }  // for m
       }  // if there's subNav
    }
  }
}
/* END OF TOP NAV HI-LITE */

/* RIGHT NAV HI-LITE */
function getParentsArray(elementi) {
   var root = document.getElementById(elementi);
   var BB = ""
    if (root.getElementsByTagName(DIVX).length > 0) {
       for (var j=0; j < root.getElementsByTagName(DIVX).length; j++) {
          parentLevels[j] = root.getElementsByTagName(DIVX).item(j).getElementsByTagName("UL")     
       }
    }
}

function MenuMemory(elemento) {
 var t = document.getElementById(elemento).getElementsByTagName(DIVX)
 var linkUrl = ""
 var foundit = false;
 var BB = ""
 var temp1, temp2, temp3
     for (var x=0; x < t.length; x++) {
         linkUrl = cleanUrl(t.item(x).getElementsByTagName(ANX).item(0).href)
           if (linkUrl==docUrl) {
                var omsg = "";
              if (parentLevels[x].length > 0) {
                    t.item(x).getElementsByTagName("span").item(0).className = "onStateB"    
                    t.item(x).getElementsByTagName(ANX).item(0).className = "onBold";
                    t.item(x).className = "onStateB"; 
                    temp2 = parentLevels[x].item(0)
                    if(isIE) {
                           temp2.style.display = "inline-block";
                         for (var z=0; z < temp2.childNodes.length; z++) {
                              temp1 = temp2.childNodes(z)
                              if (temp1.getElementsByTagName(ULX).length==0)
                                  temp1.className = "rtnavL2noBox";
                          }
                    } else {   // for firefox
                          temp2.style.display = "block";
                          temp3 =  temp2.getElementsByTagName(LIX)
                          if (temp3.length > 0) {
                            for (var z=0; z < temp3.length; z++) {
                                temp1 = temp3.item(z) 
                                 if (temp1.getElementsByTagName(ULX).length==0)
                                  temp1.className = "rtnavL2noBox";
                            } 
                          }
                    }

              } else {
                     t.item(x).className = "onStateB" 
                     t.item(x).getElementsByTagName("span").item(0).className = "onStateA"    
                     t.item(x).getElementsByTagName(ANX).item(0).className = "onGray"
               } // if ULX.length > 0
                foundit = true;
                break;
           }   // if linkUrl==docUrl
     }   // for loop
  return foundit;
}


function getTheMatch(rtNav,idx) {
   var t = parentLevels[idx]
  var t2 = t.item(0).childNodes
  var t1, t3, t4, levelArray, BB, tt
  var LevelSTR = idx + "|"
   var t_L2, t_L3  
  for (var j=0; j < t2.length; j++) {    
      BB = t2.item(j).getElementsByTagName(ANX).item(0).href.toLowerCase();
         if(BB==docUrl) {
           aMatchIDX = j;
           LevelSTR += aMatchIDX + "|"
            break;
         } else {
              t_L2 = j;
              if (t2.item(j).getElementsByTagName(ULX).length > 0) { 
                  tt = t2.item(j).getElementsByTagName(ULX).item(0)
                  for (var k = 0; k < tt.childNodes.length; k++) {
                          BB =  tt.childNodes[k].getElementsByTagName(ANX).item(0).href.toLowerCase();       
                          if(BB==docUrl) {
                                 aMatchIDX = k;
                                 LevelSTR +=  t_L2 + "|"  + (aMatchIDX) + "|"
                                 break;
                          } else { 
                              t_L3 = k; 
                              if(tt.childNodes[k].getElementsByTagName(ULX).length > 0) {                                 
                                  t4 = tt.childNodes[k].getElementsByTagName(ULX).item(0)
                                   for (var m = 0; m < t4.childNodes.length; m++) {
                                        BB =  t4.childNodes[m].getElementsByTagName(ANX).item(0).href.toLowerCase();
                                        if (BB==docUrl) {
                                             aMatchIDX = m;
                                             LevelSTR += t_L2 + "|" + t_L3 + "|" + m + "|" 
                                        }
                                    }
                              }
                          } 
                     }  
                }
         }
  } 
      if (aMatchIDX != -1) {
         turnRightNavOn(rtNav,LevelSTR)
         return true
      } 
  return false
}

function getFireFoxMatching(rtNav, idx) {
  // note - already have the top top level idx
var retSTR = ""
var curLI_Href = ""
 var t1,t2, tea1, tea2
 t1 = parentLevels[idx].item(0)  // products & services div
 t2 = t1.getElementsByTagName(LIX)
 var xParentNode = new Array()
 var cnt = 0;
   for(var j=0; j < t2.length; j++) {
      if(t2.item(j).childNodes.length > 1) {
        xParentNode[cnt] = j
       cnt++;
      } 
    curLI_Href = cleanUrl(t2.item(j).getElementsByTagName(ANX).item(0).href)
    if(docUrl==curLI_Href) {
      aMatchIDX = j
      break;
    }
  }  // end for j

    for (var m=0; m < xParentNode.length; m++) {
       tea1 = xParentNode[m];  // li w/ children
     tea2 = t2.item(parseInt(tea1)).getElementsByTagName(ANX)
       for (var n=1; n < tea2.length; n++) {
         curLI_Href = cleanUrl(tea2.item(n).href)
         if(docUrl==curLI_Href) {
           retSTR += tea1 + "|" 
           aMatchIDX = parseInt(tea1+n)
           break;
         }
       }
    }

    retSTR +=  (aMatchIDX > -1)? aMatchIDX + "|" : "";
    if (retSTR.length > 0) {
        turnRightNavOnFF(rtNav, idx + "|" + retSTR, xParentNode.join("|"))
        return true
    } else {
        return false
    }
}

function turnRightNavOn(rtNav,onSTR) {
       var levelArray, t1,t2,t3,t4
        levelArray = onSTR.split("|")
          t3 = document.getElementById(rtNav).getElementsByTagName(DIVX).item(parseInt(levelArray[0]))
          t1 = t3.getElementsByTagName(ULX).item(0)
          for (var z=0; z < levelArray.length-1; z++) {
               if(z==0) {                
                  t3.className = "onStateB";
                   t3.getElementsByTagName("span").item(0).className = "onStateB";
                   t3.getElementsByTagName(ANX).item(0).className = "onBold"  
                   t1.style.display = (isIE)? "inline-block" : "block";
                  for (var j = 0; j < t1.childNodes.length; j++) {
                       if (t1.childNodes(j).getElementsByTagName(ULX).length == 0) {
                          t1.childNodes(parseInt(j)).className = "rtnavL2noBox";
                       }                            
                   }                   
               } else if(z==1) {
                      t2 = t1.childNodes(parseInt(levelArray[z]))
                      if (t2.getElementsByTagName(ULX).length > 0) {
                        t2.getElementsByTagName(ULX).item(0).style.display = "block";
                        t2.className = "rtnavOnL2";
                      } 
                       if (levelArray.length < 4) {  t2.getElementsByTagName(ANX).item(0).className = "onGray"; }
               } else if(z==2) {
                          t2 = t1.childNodes(parseInt(levelArray[1]))   
                          tt = t2.getElementsByTagName(ULX).item(0)
                          t4 = tt.childNodes(parseInt(levelArray[z]))
                          if (levelArray.length < 5) { t4.getElementsByTagName(ANX).item(0).className = "onGray"; }
                          if(t4.getElementsByTagName(ULX).length > 0) { t4.getElementsByTagName(ULX).item(0).style.display = "block"; }
                } else if(z==3) {
                     tt = t1.childNodes(parseInt(levelArray[1])) 
                     t2 = tt.getElementsByTagName(ULX).item(0).childNodes(parseInt(levelArray[2]))
                     t4 = t2.getElementsByTagName(ULX).item(0).childNodes(parseInt(levelArray[z]))
                     t4.className = "rtnavOnL4";
                     t4.getElementsByTagName(ANX).item(0).className = "onGray"; 
                }
           }
          return true
}

function turnRightNavOnFF(rtNav, onSTR, parentNodeSTR) {
  // for firefox, will merge with the other turnRightNavOn later
       var levelArray, xParentNode
        levelArray = onSTR.split("|")
        xParentNode = parentNodeSTR.split("|")
        var t1, t2, t3, t4
        t3 = document.getElementById(rtNav).getElementsByTagName(DIVX).item(parseInt(levelArray[0]))
        t1 = t3.getElementsByTagName(ULX).item(0)
          for (var z=0; z < levelArray.length-1; z++) {
               if(z==0) {   
                  t3.className = "onStateB";
                   t3.getElementsByTagName("span").item(0).className = "onStateB";
                   t3.getElementsByTagName(ANX).item(0).className = "onBold"  
                   t1.style.display = "block";
                   t4 =  t1.getElementsByTagName(LIX)
                   for(var k = 0; k < t4.length; k++) {                   
                     if (t4.item(k).getElementsByTagName(ULX).length == 0) {
                            t4.item(k).className = "rtnavL2noBox";
                     }
                   }

               } else if(z==1) {
                      t2 = t1.getElementsByTagName(LIX).item(levelArray[z])
                      if (t2.getElementsByTagName(ULX).length > 0) {
                        t2.getElementsByTagName(ULX).item(0).style.display = "block";
                        t2.className = "rtnavOnL2";
                      } 
                       if (levelArray.length < 4) {  t2.getElementsByTagName(ANX).item(0).className = "onGray"; }
               } else if(z==2) {
                      t4 =  t1.getElementsByTagName(LIX).item(parseInt(levelArray[z]))  
                      if (levelArray.length < 5) { t4.getElementsByTagName(ANX).item(0).className = "onGray"; }
                      if(t4.getElementsByTagName(ULX).length > 0) { t4.getElementsByTagName(ULX).item(0).style.display = "block"; }
               } else if(z==3) {
                     t4 = t1.getElementsByTagName(LIX).item(parseInt(levelArray[z]))
                     t4.className = "rtnavOnL4";
                     t4.getElementsByTagName(ANX).item(0).className = "onGray"; 
               }
          } // for z

}




