$(document).ready(function() {
	var root = $('#header h1 a').attr('href');
	
/*----------------------------------------------------------------------------
	Hero menu fader:
----------------------------------------------------------------------------*/
if(!($.browser.msie && $.browser.version == 6)) {
	$('body').mousemove(function(event) {
		var opacity = 0;
		var self = $(this);
		if(event.originalEvent.clientY < 740) {

			var distanceToNav;
			var heroLeft = $("#heroImage-container").position().left;
			var contentLeft = $('.contentSkipNav').position().left;
			
			distanceToNav = heroLeft + contentLeft;
			opacity = (event.originalEvent.clientX / distanceToNav).toPrecision(2);
			
			
			// Some pretty verbose way of determining if the client's cursor is left or right of the nav to fade correctly
			if(event.originalEvent.clientX < heroLeft + contentLeft + $('.contentSkipNav').width()) {
				distanceToNav = heroLeft + contentLeft;
				opacity = (event.originalEvent.clientX / distanceToNav).toPrecision(2);
			} else {
				distanceToNav = $(document).width() - (heroLeft + contentLeft + $('.contentSkipNav').width());
				opacity = (($(document).width() - event.originalEvent.clientX) / distanceToNav).toPrecision(2);
			}
			
			if (opacity> 0.9) opacity = 0.9;
			if (opacity < 0) opacity = 0;

			self.find('.contentSkipNav').fadeTo(0, opacity);
		} else {
			self.find('.contentSkipNav').css({opacity: 0.9});
		}
	});

	$('body').mouseout(function() {
		$("#heroImage-container").find('.contentSkipNav').fadeTo(0, 0);
	});
};
/*----------------------------------------------------------------------------
	Hero menu slide up:
----------------------------------------------------------------------------*/

	$('#heroImage a.jump-to').click(function() {
		var self = $(this);

		if (self.attr('href').match(/#[a-z]/i)) {
			$(document).scrollTo($(self.attr('href')), 700);
			/*$('#heroImage').slideUp(700, function() {});*/
		}

		return false;
	});
/*----------------------------------------------------------------------------
	Services Tabs using AJAX
----------------------------------------------------------------------------*/

	/* Load default */	
	$.get(root +"/feeds/homepage-services/", { serviceID: $('#featured ul.tabs li:first-child a').attr("rel")}, showService);


	/* Get Service by AJAX call */
	$('#featured ul.tabs a').click(function() {

		$(this).parent().parent().find("a.active").removeClass('active');
		$(this).addClass('active');		
		
		$.get(root +"/feeds/homepage-services/", { serviceID: $(this).attr("rel")}, showService);

		return false;
	});	

	function showService(xml) {
		$('#featured div').html(xml);
		$("#featured ul.related li:not(:last-child)").after("<li class='highlight'>\\</li>");		
	}
	
/*----------------------------------------------------------------------------
	News Tabs using AJAX
	@removed 	AJAX 	20/4/09		home.news.ajax.js
----------------------------------------------------------------------------*/
	$.fn.pause = function(duration) {
	    $(this).animate({ dummy: 1 }, duration);
	    return this;
	};


	function tick() {
		var container = $('#news .tabs');
		var current = container.find('.active');
		
		/* Restart */
		var next = current.parent().next().length ? current.parent().next().children() 
			: next = container.find('li:first a');		

		var position = next.parent().prevAll().length;
		
		current.removeClass('active');
		next.addClass('active');		
		
		$('#news.tabbed').children('.tab').fadeOut(1000);
		$('#news.tabbed').children('.tab:eq(' + position + ')').fadeIn(1000);

		return false;
	}

	/* Must be interval otherwise it get's blocked by the clock */
	setInterval(tick, 7500);
});
