var tick = 0;
var scrollStop;

$(document).ready(function(){

  // Navigation
  $('#nav-primary li a, section footer li a, header h1 a, .quick-jump a').click(function() {
    $(this).addClass("active");
    var elementClicked = $(this).attr("href");
    var destination = $(elementClicked).offset().top;
    $("html,body").stop().animate({ 
     scrollTop: destination-20
    },5000, 'easeInOutCubic');
    return false;
  });

  $('section#top #featured-brands a').click(function() {
    $(this).addClass("active");
    var elementClicked = $(this).attr("href");
    var destination = $(elementClicked).offset().top;
    $("html,body").stop().animate({ 
     scrollTop: destination-210
    },5000, 'easeInOutCubic');
    return false;
  });

  // Scroll Position Actions
  var top = $("#top");
    var who = $("#road-3");
    var brands = $("#road-5")
    var road2skip = $("#road-2 .quick-jump")
    var road4skip = $("#road-4 .quick-jump")
    var contact = $("#road-7")
    scrollStop = setTimeout(updateScrollInfo, 500);

  
    $(window).scroll(function(){ 
      tick++;
      clearTimeout(scrollStop);
      scrollStop = setTimeout(updateScrollInfo, 500);
      if (tick > 10)
      {
        updateScrollInfo();
      }
    });
  
    function updateScrollInfo()
    {
      tick = 0;
      if(isWho()){
        $('.quick-jump').animate({opacity: "0"}, 500);
        $('#nav-primary li a').removeClass("current");
        $('#nav-primary li.who a').addClass("current");
      } else if (isTop()){
        $('.quick-jump').animate({opacity: "0"}, 500);
          $('#nav-primary li a').removeClass("current");
          $('#nav-primary li.top a').addClass("current");
      }  else if (isBrands()){
        $('.quick-jump').animate({opacity: "0"}, 500);
          $('#nav-primary li a').removeClass("current");
          $('#nav-primary li.brands a').addClass("current");
      } else if (isRoad2()){
          $('#road-2 .quick-jump').animate({opacity: "1"},500);
      } else if (isRoad4()){
          $('#road-4 .quick-jump').animate({opacity: "1"},500);
      } else if (isContact()){
        $('.quick-jump').animate({opacity: "0"}, 500);
          $('#nav-primary li a').removeClass("current");
          $('#nav-primary li.contact a').addClass("current");
      }
    }
  
    function isTop() {
        var docViewTop = $(window).scrollTop(),
            docViewBottom = docViewTop + $(window).height(),
            elemTop = $(top).offset().top,
         elemBottom = elemTop + $(top).height();
       //Is more than half of the element visible
       return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom));
    }
  
    function isWho() {
        var docViewTop = $(window).scrollTop(),
            docViewBottom = docViewTop + $(window).height(),
            elemTop = $(who).offset().top,
         elemBottom = elemTop + $(who).height();
       //Is more than half of the element visible
       return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom));
    }
  
    function isBrands() {
        var docViewTop = $(window).scrollTop(),
            docViewBottom = docViewTop + $(window).height(),
            elemTop = $(brands).offset().top,
         elemBottom = elemTop + $(brands).height();
       //Is more than half of the element visible
       return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom));
    }
  
    function isRoad2() {
        var docViewTop = $(window).scrollTop(),
            docViewBottom = docViewTop + $(window).height(),
            elemTop = $(road2skip).offset().top,
         elemBottom = elemTop + $(road2skip).height();
       //Is more than half of the element visible
        return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom));
    }
  
    function isRoad4() {
        var docViewTop = $(window).scrollTop(),
            docViewBottom = docViewTop + $(window).height(),
            elemTop = $(road4skip).offset().top,
         elemBottom = elemTop + $(road4skip).height();
       //Is more than half of the element visible
        return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom));
    }
  
    function isContact() {
        var docViewTop = $(window).scrollTop(),
            docViewBottom = docViewTop + $(window).height(),
            elemTop = $(contact).offset().top,
         elemBottom = elemTop + $(contact).height();
       //Is more than half of the element visible
       return ((elemBottom >= docViewTop) && (elemTop <= docViewBottom));
    }

});
