var Navigation = {
  
  activateLocalScrolling : function() {
    this._positionFixed = false;
    
    if($('body').hasClass('page')){

      $('#footer').localScroll({ 
        onBefore : function(){
          Navigation.removeActiveClass();
          Navigation.primaryLinks().eq(0).addClass('active');
        },
        hash: false
      });

      $('#navigation, #about').localScroll({ 
        onBefore : function(event){
          Navigation.removeActiveClass();
          $(event.target).addClass('active');
        },
        hash: false,
        offset: -42
      });

      Navigation.position();
      
      $(window).scroll(function () { 
        Navigation.position();
      });

    } else {
      $('#footer').
        css('float', 'right').
        css('margin-right', '20px').
        css('position', 'static').
        localScroll();
    }
  },
  
  position : function() {
    scrollY = (window.pageYOffset) ? window.pageYOffset : (document.documentElement && document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;

    if(!Navigation.positionFixed() && scrollY > 142) {
      $('#header').
        css('position', 'fixed').
        css('top', '-133px');

      $('#footer').
        css('margin-bottom', '0').
        css('position', 'fixed');

      Navigation._positionFixed = true;

    } else if(Navigation.positionFixed() && scrollY < 142) {
      $('#header').
        css('position', 'absolute').
        css('top', '10px');

      $('#footer').
        css('margin-bottom', '-143px').
        css('position', 'absolute');

      Navigation._positionFixed = false;
    };
    
  },
  
  positionFixed : function() {
    return this._positionFixed;
  },
  
  primaryLinks : function() {
   var links = $('#navigation a[href^=#]');
   return (Navigation.primaryLinks = function(){return links})();
  },
  
  removeActiveClass : function() {
    Navigation.primaryLinks().each(function(){ $(this).removeClass('active'); });
  }
  
};

$(document).ready(function(){
  Navigation.activateLocalScrolling();
  
  // attach fancybox to map image
  $("a#fix-tracker").fancybox({
    centerOnScroll : false,
    frameHeight : 450,
    frameWidth : 900,
    padding : 0
  });
  
});
