var MainNavigation = {
	
	skewWidth:16,
	current:null,
	holderWidth:0,
	background:null,
	offset:0,
	shopNav:null,
	
	initialize:function () {
		Cufon.replace('#primary-nav #nav-list li h2 a', {
			onAfterReplace: setTimeout(function () {
				_self.update();
			}, 50)
		});
		
		var _self = this;
		this.background = $('#nav-bg');
		this.offset = $('#primary-nav #nav-list').position().left;
		
		this.shopNav = $('#storeNav').detach();
		$(MainNavigation.shopNav).appendTo('#nav-shop');
		$(MainNavigation.shopNav).css({left:28});
		var spacerWidth = $('#nav-shop').width() - 7;
		$(MainNavigation.shopNav).find('.nav-spacer').css({width:spacerWidth});

	},
	
	update: function () {
		var _self = this;
		
		$('#primary-nav #nav-list li').each (function () {
			var id = $(this).attr('id');
			var w = $(this).outerWidth() + (_self.skewWidth);
			var x = $(this).position().left;
			var gx = x + Math.round((_self.offset/2)) - 1;
			if (id == "nav-home") {
				gx = 0;
				w = w + (_self.skewWidth/2);
			}
			if (id == "nav-shop") {
				gx = gx + 3;
				w = w - (_self.skewWidth/2) - 4;
			}
			if (id == "nav-skate") {
				gx = gx - (_self.skewWidth/2);
				w = w + (_self.skewWidth/2);
			}
			if (id == "nav-auto") {
				w = w + 2;
			}
			
			if ( w%2 == 1 ) {
				w = w + 1;
			}
			var bg = $('.'+id+"-bg");
			bg.css({width:w, left:gx});
			
			//bg.hide();
			
		});
		
		
		
		
		$('#nav-list li').hover (function (ev) {
			_self.onMouseOver ($(ev.currentTarget));
		}, function (ev) {
			_self.onMouseOut ($(ev.currentTarget));
		});
		
		$('#nav-shop').hover(this.shopOver, this.shopOut);
		
		this.setCurrent($('#nav-list li.current'));
		
	},
	
	onMouseOver:function (btn) {
		var _self = this;
		var btn = $(btn);
		var id = btn.attr('id');
		var bg = $('.'+id+"-bg");
		bg.hide();
		
		
	},
	
	onMouseOut:function (btn) {
		var _self = this;
		var btn = $(btn);
		var id = btn.attr('id');
		var bg = $('.'+id+"-bg");
		if (!btn.hasClass('current')) {
			bg.show();
		}
		
	},
	
	shopOver:function () {
		$('#secondaryNav').fadeOut('fast');
		//$('#storeNav').css({display:'block'});
		$('#storeNav').stop(true, true);
		$('#storeNav').fadeIn('hidden');
	},
	
	shopOut:function () {
		$('#secondaryNav').fadeIn('fast');
		$('#storeNav').stop(true, true);
		$('#storeNav').fadeOut('hidden');
	},
	
	reposition:function () {
		
	},
	
	setCurrent:function (element) {
		var _self = this;
		this.current = (element.length > 0) ? element : null;
		var id = element.attr('id');
		var bg = $('.'+id+"-bg");
		var margin = $.browser.mozilla ? 1 : 0;
		bg.hide();
		
		var secondary = $('#secondaryNav');
		if (this.current && secondary.length > 0) {
			var w = secondary.outerWidth();
			var cw = this.current.outerWidth();
			
			var x = Math.round((cw/2) - (w/2)) + this.current.position().left;
			var tw = $('#primary-nav').outerWidth();
			
			if (x > Math.round(tw - w)) {
				x = tw - w - margin;
			}
			if (x < 0) {
				x = 0;
			}
			
			secondary.css({left:x, visibility: 'visible'});
		}
		
		
		
	}
	
};

$(function () {

	MainNavigation.initialize();

    // options
	var secondaryNav = $('#secondaryNav');
	
	// check to see if the submenu exists on page
	// fixes undefined nodeType error when submenu doesn't exist on page 
	if(secondaryNav.length === 0) {
		return;
	}
	
	var distance = 10;
	var time = 150;
	var hideDelay = 500;
	var timer;
	var hideDelayTimer = null;

    // tracker
    var beingShown = false;
    var shown = false;

	var win = $(window);
	var trigger = $('.secDrop', this);
	if(trigger.length === 0) {
		return;
	}

	$('.secDrop, .athlete-view-more').live('click', function() {
		var scrollMe = $('#mainWrap #teamGrid').offset();
		$('html, body').animate({
			scrollTop: scrollMe.top
		}, 'slow');
		return false;
	});	
});
