// Custom javascript for navigation -- Jquery 1.5+ recommended, due to compatibility issues.

// Set default properties, append span.fading-button (styled in '../css/styles.css ').
$(document).ready(function(){$("ul#menu li a").parent().append('<span class="fading-button"></span>');$("ul#menu li span.fading-button").css({ opacity: 0.0 });$("ul#menu li a.current + span").css({ opacity: 0.7 });$("ul#menu li a").css({ opacity: 0.6 });$("ul#menu li a.current ").css({ opacity: 1.0 });});

// Menu list anchors opacity fades
$(document).ready(function(){$("ul#menu li a").hover(function(e){if(this.className.indexOf("current") >= 0){return;}$(this).fadeTo("fast", 0.9);},function(){if(this.className.indexOf("current") >= 0){return;} $(this).fadeTo("fast", 0.6);});});

//  Set .current on clicked items
$(document).ready(function(){$('#menu a').each(function(z){$(this).click(function(){$(this).addClass('current').parents('ul').find('a').not($(this)).removeClass('current');$(this).addClass('current').parents('ul').find('a').not($(this)).fadeTo("fast", 0.6);});});});

// Start animation
$(document).ready(function(){$("#content").css({height: "0px"});$("#scrollable").css({opacity: 0});$("#content").animate({height: "383px"}, 600, 'linear', function(){$("#scrollable").fadeTo(600, 1, 'easeInOutExpo');});});
		
// Menuslides
var sliderCount = 1;

$.fn.navi = function(settings){settings = $.extend({autoHeight: true,autoHeightEaseDuration: 300,autoHeightEaseFunction: "linear",crossLinking: true,externalTriggerSelector: "a.xtrig",firstPanelToLoad: 1,panelTitleSelector: "h2.title",slideEaseDuration: 600,slideEaseFunction: "linear"}, settings);
	
	return this.each(function(){
		
		var slider = $(this);
		
		var panelWidth = slider.find(".panel").width();
		var panelCount = slider.find(".panel").size();
		var panelContainerWidth = panelWidth*panelCount;
		
		$('.panel', slider).wrapAll('<div class="panel-container"></div>');

		$(".panel-container", slider).css({ width: panelContainerWidth });
		
		if (settings.crossLinking && location.hash && parseInt(location.hash.slice(1)) <= panelCount) {
			var currentPanel = parseInt(location.hash.slice(1));
			var offset = - (panelWidth*(currentPanel - 1));
			$('.panel-container', slider).css({ marginLeft: offset });

		} else if (settings.firstPanelToLoad != 1 && settings.firstPanelToLoad <= panelCount) { 
			var currentPanel = settings.firstPanelToLoad;
			var offset = - (panelWidth*(currentPanel - 1));
			$('.panel-container', slider).css({marginLeft: offset});

		} else { 
			var currentPanel = 1;
		};
		
		$(settings.externalTriggerSelector).each(function() {

				if (sliderCount == parseInt($(this).attr("rel").slice(12))){
					$(this).bind("click", function() {
						targetPanel = parseInt($(this).attr("href").slice(1));
						offset = - (panelWidth*(targetPanel - 1));
						alterPanelHeight(targetPanel - 1);
						currentPanel = targetPanel;
						$("#scrollable").fadeTo(600, 0, 'easeInOutExpo', function(){
							$("#content").animate({height: "0px"}, 600, 'easeInOutExpo', function(){
								$("#heading").fadeTo(400, 0,'easeInOutExpo', function(){
									
									var rand = Math.ceil(Math.random()*9);
									
									$("#heading a").css({background: "url(images/heading_" + rand + ".png) no-repeat"});
								
									$("#content").animate({height: "383px"}, 800, 'easeInOutExpo', function(){
											$('.panel-container', slider).delay(600).animate({marginLeft: offset}, 100, 'linear', function(){
											$("#scrollable").fadeTo(600, 1, 'easeInOutExpo');
										});
									});
								});
								$("#heading").fadeTo(400, 1,'easeInOutExpo');
							});
					    });
					});
				};
		});
			
		if (settings.autoHeight) {
			panelHeight = $('.panel:eq(' + (currentPanel - 1) + ')', slider).height();
			slider.css({height: panelHeight});
		};
		
		function alterPanelHeight(x) {
			if (settings.autoHeight) {
				panelHeight = $('.panel:eq(' + x + ')', slider).height()
				slider.css({height: panelHeight});
			};
		};
		
		sliderCount++;
		
	});
};
