/* Setup variables
-----------------------------------------------------*/
var $j = jQuery.noConflict();
var $main_slider;
var $sub_slider;
var $curr_main;
var $curr_sub;
var main_slider_width;
var sub_slider_width;
var main_slider_default;
var sub_slider_default;
var no_main_select;
var no_sub_select;





/* --------------------------------------------------------------------
 * --------------------------------------------------------------------
 *
 * General functions
 *
 * --------------------------------------------------------------------
 * ------------------------------------------------------------------*/

/* Initialize the stage
-----------------------------------------------------*/
function initialize_script() {
	
	// Save the sliders
	$main_slider = $j('#mainNavSlider');
	if ($j('#subNavSlider').length > 0) $sub_slider = $j('#subNavSlider');
	
	// Save the current links
	if ($j('#mainNav').children('li.selected').length == 0) {
		no_main_select = true;
		$curr_main = $j('#mainNav').children('li:first-child');
	} else {
		no_main_select = false;
		$curr_main = $j('#mainNav').children('li.selected');
	}
	
	if ($j('#subNav').children('li').length > 0) {
		if ($j('#subNav').children('li.selected').length == 0) {
			no_sub_select = true;
			$curr_sub = $j('#subNav').children('li:first-child');
		} else {
			no_sub_select = false;
			$curr_sub = $j('#subNav').children('li.selected');
		}
	}
	
	// Save the widths
	main_slider_width = $main_slider.width();
	if ($sub_slider) sub_slider_width = $sub_slider.width();
	
	// Save the default main slider position
	var m_w = $curr_main.children('a').width();
	var m_l = $curr_main.children('a').position().left;
	main_slider_default = (m_l + m_w/2) - (main_slider_width/2);
	
	// Save the default sub slider position
	if ($curr_sub) {
		var s_w = $curr_sub.children('a').width();
		var s_l = $curr_sub.children('a').position().left;
		sub_slider_default = (s_l + s_w/2) - (sub_slider_width/2);
	}
	
	// Set the default slider positions
	$main_slider.css('left', String(main_slider_default+'px'));
	if ($sub_slider) $sub_slider.css('left', String(sub_slider_default+'px'));

}






/* --------------------------------------------------------------------
 * --------------------------------------------------------------------
 *
 * Events
 *
 * --------------------------------------------------------------------
 * ------------------------------------------------------------------*/

/* Add event listeners
-----------------------------------------------------*/
function addEventListeners() {
	
	// Main nav slider
	$j('#mainNav li a').mouseover(function() {
	
		// Save the dimensions & position
		var w = $j(this).width();
		var l = $j(this).position().left;
		
		// Save the slider position
		var pos = (l + w/2) - (main_slider_width/2);
	
		// Set the slider position
		$main_slider.stop().animate({
			left: String(pos+'px')
		}, {duration:500, easing:'easeOutExpo'}, function() {
			// Animation complete.
		});
		
		//if (no_main_select) $main_slider.fadeTo('fast',1);
		
	}).mouseout(function(){
		
		// Set the slider position
		$main_slider.stop().animate({
			left: String(main_slider_default+'px')
		}, {duration:500, easing:'easeInExpo'}, function() {
			// Animation complete.
		});
		
		//if (no_main_select) $main_slider.fadeTo('fast',0);
	
	});
	
	// Sub nav slider
	$j('#subNav li a').mouseover(function() {
		
		// Save the dimensions & position
		var w = $j(this).width();
		var l = $j(this).position().left;
		
		// Save the slider position
		var pos = (l + w/2) - (sub_slider_width/2);
	
		// Set the slider position
		$sub_slider.stop().animate({
			left: String(pos+'px')
		}, {duration:500, easing:'easeOutExpo'}, function() {
			// Animation complete.
		});
		
		//if (no_sub_select) $sub_slider.fadeTo('fast',1);
		
	}).mouseout(function(){
	
		// Set the slider position
		$sub_slider.stop().animate({
			left: String(sub_slider_default+'px')
		}, {duration:500, easing:'easeInExpo'}, function() {
			// Animation complete.
		});
		
		//if (no_sub_select) $sub_slider.fadeTo('fast',0);
	
	});
}





/* --------------------------------------------------------------------
 * --------------------------------------------------------------------
 *
 * Document Ready
 *
 * --------------------------------------------------------------------
 * ------------------------------------------------------------------*/

/* Document ready listener
-----------------------------------------------------*/
$j(document).ready(function() {
	
	// Initialize the packages
	initialize_script();
	
	// Add event listeners
	addEventListeners();	
});
