//Getting an absolute URL from a relative one.
function qualifyURL(url) {
        var a = document.createElement('a');
        a.href = url;
        return a.href;
}


//MLE 20110512
$(document).ready(function(){

  function toggleSubNavOn() {
    /* Close any active subnavs before opening a new one. */
    $('#header-navigation-main li.highlighted').children('ul').hide();
    $('#header-navigation-main li.highlighted').removeClass('highlighted');

//MLE - COMMENTED OUT THE !active test in these two sections; I still want drop-downs for nav available on "active" page for now.
//    if (!$(this).hasClass('active')) {
      $(this).children('ul').show();
      $(this).addClass('highlighted');
    }
//  }

  function toggleSubNavOff() {
//    if (!$(this).hasClass('active')) {
      $(this).children('ul').hide();
      $(this).removeClass('highlighted');
//    }
  }

  /* Configuration options for hoverIntent - used to set our hover behavior on nav-menus in next step. */
  var config = {
     over: toggleSubNavOn,
     timeout: 400,
     out: toggleSubNavOff
  };

  /* IMPORTANT: This sets our top-level menu-nav items. */
  $('body.software-dev-menu li.software-dev, body.consulting-svc-menu li.consulting-svc, body.tech-products-menu li.tech-products, body.innovations-menu li.innovations, body.about-menu li.about').hoverIntent(config);

  /* Set the look of any "active" menu-nav items; this relies on variable-content (ASP) that sets NavClassesToSetActive based on page we are on.  */
  $(NavClassesToSetActive).addClass('active');

});
;




/**
* hoverIntent r6 // 2011.02.26 // jQuery 1.5.1+
* <http://cherne.net/brian/resources/jquery.hoverIntent.html>
*
* @param  f  onMouseOver function || An object with configuration options
* @param  g  onMouseOut function  || Nothing (use configuration options object)
* @author    Brian Cherne brian(at)cherne(dot)net
*/
(function($){$.fn.hoverIntent=function(f,g){var cfg={sensitivity:7,interval:100,timeout:0};cfg=$.extend(cfg,g?{over:f,out:g}:f);var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if((Math.abs(pX-cX)+Math.abs(pY-cY))<cfg.sensitivity){$(ob).unbind("mousemove",track);ob.hoverIntent_s=1;return cfg.over.apply(ob,[ev])}else{pX=cX;pY=cY;ob.hoverIntent_t=setTimeout(function(){compare(ev,ob)},cfg.interval)}};var delay=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);ob.hoverIntent_s=0;return cfg.out.apply(ob,[ev])};var handleHover=function(e){var ev=jQuery.extend({},e);var ob=this;if(ob.hoverIntent_t){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t)}if(e.type=="mouseenter"){pX=ev.pageX;pY=ev.pageY;$(ob).bind("mousemove",track);if(ob.hoverIntent_s!=1){ob.hoverIntent_t=setTimeout(function(){compare(ev,ob)},cfg.interval)}}else{$(ob).unbind("mousemove",track);if(ob.hoverIntent_s==1){ob.hoverIntent_t=setTimeout(function(){delay(ev,ob)},cfg.timeout)}}};return this.bind('mouseenter',handleHover).bind('mouseleave',handleHover)}})(jQuery);
