window.addEvent('domready', function() {

	var nav = $('nav-bar');
	if (nav) {
		var links = $('header').getElements('.content ul a');
		var offset = -42;
		/*
		if (nav.getStyle('display') != 'block') {
			offset = 0;
		}
		*/
		links.addEvent('click', function(e) {
			var href = this.get('href');
			if (href.substr(0, 1) == '#') {
				e.stop();
				var id = href.substr(1);
        var off = -42;
        if (id == 'services') {
          off = -41;
        }
				
				var el = $(id); 
				if (el) {
					 new Fx.Scroll(window).start(0, el.getPosition().y + off);
				}
			}
		});

		var links = nav.getElements('a');
		links.addEvent('click', function(e) {
			var href = this.get('href');
			if (href.substr(0, 1) == '#') {
				e.stop();
				var id = href.substr(1);
				var off = -42;
				if (id == 'services') {
				  off = -41;
				}
				var el = $(id); 
				if (el) {
					 new Fx.Scroll(window).start(0, el.getPosition().y + off);
				}
			}
		});
		document.getElements('a.to-top').addEvent('click', function(e) {
			e.stop();
			new Fx.Scroll(window).start(0, 0);
		});
		var positions = [];
		links.each(function(a) {
			var href = a.get('href');
			if (href.substr(0, 1) == '#') {
				
				var id = href.substr(1);
				var el = $(id); 
				if (el) {
					var pos = el.getPosition().y;
					if (pos > 0) {
						pos = pos  - 140;
					}
					if (id == 'top') {
						id = 'home';
					}
					positions.include({'id': id, 'pos': pos});
				}
			}
		});
		positions = positions.reverse();
		var len = positions.length;
		//nav.set('tween', {duration: 'short', link: 'cancel'});
		
		var tw = new Fx.Tween(nav, {
	    link: 'cancel',
	    property: 'margin-top',
	    duration: 80,
	    transition: 'sine:out',
	    onComplete: function() {
	      if (nav.getStyle('margin-top') == 0) {
	        nav.removeClass('inverse');
	      } else {
	        nav.addClass('inverse'); 
	      }
	    }
		}); 
		(function() {
      var y = window.getScroll().y;
      if (y >= 564) {
        tw.start(0);
      } else {
        tw.start(-42);
      }     		  
		}).periodical(30);
		
		window.addEvent('scroll', function(e) {
			var y = window.getScroll().y;
			for (var x = 0;x < len; x++) {
				if (y >= positions[x].pos) {
					var sel = nav.getElement('.selected');
					if (!sel || (sel.get('href') != '#' + positions[x].id)) {
						links.removeClass('selected');
						var l = nav.getElement('li.' +positions[x].id+' a');
						
						if (l) {
							l.addClass('selected');
						}
					}
					break;
				}
			}
		});
	}
	
	
});
