function EVENT_topnavitem_click(url, target) {
   OpenLink(url, target);
}

function nav_search(){
   var selected_value;
   var si;
   var sf = document.forms['searchform'];
   var rawKeywords;
   var escapedKeywords;

   if (!sf.Keywords.value) 
   {
       alert(g_DOC_SPECIFYSEARCHTERM);
       return;
   }

   // determine if the in_main frame exists
   if (getLastActiveFrame() == 'in_main') {
      sf.target = 'in_main';
   }
   else {
      sf.target = 'in_body';
   }

   si = sf.search.selectedIndex;
   selected_value = sf.search.options[si].value;
   if (selected_value.indexOf("docs/docapp.aspx") == 0){
      if ( !sf.Keywords.value) {
         alert(g_DOC_SPECIFYSEARCHTERM);
         return;
      }
      sf._appid.value = 5;
      sf.folderview.value = "off";
      sf.fid.value = "0";
      sf.SubSearch.value = sf.Keywords.value;
      sf._command.value = 'advancedsearch';
      sf.method = "GET";
   }
   else if (selected_value.indexOf("/ads/") == 0){

      if (getLastActiveFrame() == 'in_main') {
         top.frames[1].frames['in_main'].location = '/frame_saver.asp?url=/ads/goto.asp?keywords=' + sf.Keywords.value;
      } else {
         top.frames[1].location = '/frame_saver.asp?url=/ads/goto.asp?keywords=' + sf.Keywords.value;
      }

      return;

   }
   else if (selected_value.indexOf("dbapp/dbapp.aspx") == 0) {
      sf._appid.value = selected_value.substring(selected_value.indexOf("?")+8)
      selected_value = "dbapp/dbapp.aspx";
      sf.SubSearch.value = sf.Keywords.value;
      sf._command.value = 'list';
      sf.method = "POST";
   }
   else if (selected_value.indexOf("contacts/dispatch.aspx") == 0) {
      sf._appid.value = 2;
      rawKeywords = encodeURIComponent(sf.Keywords.value);
      escapedKeywords = rawKeywords.replace(/\+/g,"%2B");

      selected_value = "contacts/dispatch.aspx?_command=list&_SubSearch=" + escapedKeywords;
      sf.SubSearch.value = sf.Keywords.value;
      sf._command.value = 'list';
      sf.method = "POST";
   }
   else if (selected_value.indexOf("members/dispatch.aspx") == 0) {
      sf._appid.value = 1;
      rawKeywords = encodeURIComponent(sf.Keywords.value);
      escapedKeywords = rawKeywords.replace(/\+/g,"%2B");
      selected_value = "members/dispatch.aspx?_command=list&SubSearch=" + escapedKeywords;
      sf.SubSearch.value = sf.Keywords.value;
      sf._command.value = 'list';
      sf.method = "POST";
   }
   else  {
      top.frames[1].location = '/frame_saver.asp?url=' + escape(selected_value+sf.Keywords.value);
      return;
   }

   sf.action = '/' + selected_value;
   sf.submit();
}

function initScrollers() {

   var div = document.getElementById('tf_nav');
   if (div) {
      var total = getTotalWidth(div);

      if (total > parseInt(div.parentNode.offsetWidth)) {
         showArrows();
      }
      else {
         hideArrows();
      }
   }
}

function showArrows() {

   var arrow;
   arrow = document.getElementById('tf_arrow_left');
   arrow.className = 'tf-arrow tf-nav-item-lo display-td';

   arrow = document.getElementById('tf_arrow_right');
   arrow.className = 'tf-arrow tf-nav-item-lo display-td';
}

function hideArrows() {

   var arrow;
   arrow = document.getElementById('tf_arrow_left');
   arrow.className = 'tf-arrow tf-nav-item-lo display-none';

   arrow = document.getElementById('tf_arrow_right');
   arrow.className = 'tf-arrow tf-nav-item-lo display-none';
}


function getTotalWidth(div) {

   var i = 0;
   var total = 0;

   if (div && div.childNodes) {
      for (i; i < div.childNodes.length; i++) {
         if (div.childNodes[i].tagName.toLowerCase() == 'a' || div.childNodes[i].tagName.toLowerCase() == 'span') {
            total += div.childNodes[i].offsetWidth;
         }
      }
   }

   return total;
}


//
// Scroller
//
var ENGAGED   = false;
var INTERVAL;
function scrollClick(button) {

   ENGAGED = true;

   if (button.id == 'tf_arrow_right') {
       scrollLeft(-5);
       INTERVAL = setInterval("scrollLeft(-20)", 100);
   }
   else {
       scrollRight(5);
       INTERVAL = setInterval("scrollRight(20)", 100);
   }


}

function scrollToLeftEnd() {

   var nav     = document.getElementById('tf_nav');
   var parent  = nav.parentNode;
   if (nav && parent) {

       var width = getTotalWidth(nav);
       var left  = nav.offsetLeft;
       var parentwidth = parent.offsetWidth;

       if (width > parentwidth) {

           //if (Math.abs(Math.abs(parentwidth-width) - Math.abs(left)) < 0) {
           //    clearInterval(INTERVAL);
           //    ENGAGED = false;
               px = Math.abs(left) - Math.abs(parentwidth-width);
           //}

           nav.style.left = (nav.offsetLeft + px) + 'px';
       }
       else {
           clearInterval(INTERVAL);
       }

   }

}


function scrollLeft(px) {

   var nav     = document.getElementById('tf_nav');
   var parent  = nav.parentNode;

   if (nav && parent) {

       var width = getTotalWidth(nav);
       var left  = nav.offsetLeft;

       var parentwidth = parent.offsetWidth;
       if (ENGAGED && (width > parentwidth) && (parentwidth + px + Math.abs(left) < width)) {

           if (Math.abs(Math.abs(parentwidth-width) - Math.abs(left)) < 0) {
               clearInterval(INTERVAL);
               ENGAGED = false;
               px = Math.abs(left) - Math.abs(parentwidth-width);
           }
           
           nav.style.left = (nav.offsetLeft + px) + 'px';
       }
       else {
           clearInterval(INTERVAL);
       }

   }

}

function scrollRight(px) {

   var nav     = document.getElementById('tf_nav');
   var parent  = nav.parentNode;
   
   if (nav && parent) {

       var width = getTotalWidth(nav);
       var left  = nav.offsetLeft;

       if (ENGAGED && left < 0) {

           if ((left + px) > 0) {

               clearInterval(INTERVAL);
               ENGAGED = false;
               px = 0;
           }


           nav.style.left = (nav.offsetLeft + px) + 'px';
       }
       else {
           clearInterval(INTERVAL);

       }

   }



}


// automatic scrolling used for customize navigation quick links
function scrollToLeftPX(px) {

   var nav     = document.getElementById('tf_nav');
   var parent  = nav.parentNode;
   if (nav && parent) {

       var width = getTotalWidth(nav);
       var left  = nav.offsetLeft;
       var parentwidth = parent.offsetWidth;

       if ((width > parentwidth) && (left < 0)) {
           // if the amount we are moving is greater than the amount that is remaining 
           if (px > Math.abs(left)) {
              px = Math.abs(left);
           }
           nav.style.left = (nav.offsetLeft + px) + 'px';
       }
   }
}

function scrollToRightPX(px) {

   var nav     = document.getElementById('tf_nav');
   var parent  = nav.parentNode;
   if (nav && parent) {
       
       var width = getTotalWidth(nav);
       var left  = nav.offsetLeft;
       var parentwidth = parent.offsetWidth;

       if ((width > parentwidth) && ((parentwidth + Math.abs(left)) < width)) {
           var pxRemaining = Math.abs((parentwidth + Math.abs(left)) - width);
           // if the amount we are moving is greater than the amount that is remaining
           if (px > pxRemaining) {
               px = Math.abs(pxRemaining);
           }
           nav.style.left = (nav.offsetLeft - px) + 'px';
       }
   }
}


function stopScroll() {
   ENGAGED = false;
}

function resetTabs() {
   var nav = document.getElementById('tf_nav');
   if (nav) {
       nav.style.left = '0px';
   }

   initScrollers();

}

//this fixes SPR#21906
function resetTabsAndPos() {
   var nav = document.getElementById('tf_nav');
   var leftpos;
   if (nav) {
       leftpos = nav.style.left;
       nav.style.left = '0px';
   }

   initScrollers();

   nav.style.left = leftpos;
}

window.onresize = resetTabs;





