jQuery(document).ready(function($) {

	var activeAnim = false;

	var wwd = $('#mc-whatwedo');
	var hww = $('#mc-howwework');
	var wcs = $('#mc-whychoosesyllogism');
	
	var transitionTime = 500;
	var currentNav = "whatwedo";
	var navCookieName = "syllogism-nav";





	// -------------------------------------------------------------------- FUNCTIONS

	function moveCurrentNavIndicator(newCurrentNav) 
		// places bg indicator on currently selected font size
		{
			currentNav = newCurrentNav;
			$(".nav").children("li").each(function() {
				var xoffset = 0;
				switch ($(this).attr("class")) {
					case 'howwework':
						xoffset = -215;
						break;
					case 'whychoosesyllogism':
						xoffset = -430;
						break;
				}
		
				var bgPosition;
				if ($(this).attr("class") != newCurrentNav) {
					bgPosition = xoffset + "px -215px";
					$(this).children("div a").css('background-position', bgPosition);	
				} else {
					bgPosition = xoffset + "px -140px";
					$(this).children("div a").hide().css('background-position', bgPosition).fadeIn(250);
				}
			});
		}

	function changeNav(nav) 
		{
			switch (nav) {
				case 'whatwedo':
					wwd.parent().prepend(wwd);
					wwd.show(transitionTime, function() {
						hww.hide(transitionTime/1.5);
						wcs.hide(transitionTime/1.5);
						activeAnim = false;
					});	
					break;
				case 'howwework':
					hww.parent().prepend(hww);
					hww.show(transitionTime, function() {
						wwd.hide(transitionTime/1.5);
						wcs.hide(transitionTime/1.5);	
						activeAnim = false;				
					});											
					break;
				case 'whychoosesyllogism':
					wcs.parent().prepend(wcs);
					wcs.show(transitionTime, function() {
						wwd.hide(transitionTime/1.5);
						hww.hide(transitionTime/1.5);
						activeAnim = false;					
					});										
					break;
			}
		}
	
	function isMouseLeaveOrEnter(e, handler) 
		// courtesy of http://dynamic-tools.net/toolbox/isMouseLeaveOrEnter/ 
		{		
			var reltg = e.relatedTarget ? e.relatedTarget : e.type == 'mouseout' ? e.toElement : e.fromElement;
			while (reltg && reltg != handler) {
				reltg = reltg.parentNode;
			}
			return (reltg != handler);
		}
	
	function attachNavEvents(parent, myClass) 
		{
			$(parent + " ." + myClass).mouseover(function(event) {
				if ($(this).attr("class") != currentNav) {
					if (isMouseLeaveOrEnter(event, this)) {
						$(this).append('<div class="nav-' + myClass + '"></div>');
						$("div.nav-" + myClass).css({display:"none"}).fadeIn(200);
					}
				}
			}).mouseout(function(event) {
				if (isMouseLeaveOrEnter(event, this)) {			
					// fade out & destroy pseudo-link
					$("div.nav-" + myClass).fadeOut(200, function() {
						$(this).remove();
					});
				}
			}).click(function(event) {
				if (!activeAnim) {
					activeAnim = true;
					currentNav = myClass;
					changeNav(myClass);
					moveCurrentNavIndicator(myClass);
					$.cookie(navCookieName, currentNav);
					event.preventDefault();
					// return false;
				} else {
					// alert('hey!');
					event.preventDefault();
				}
			});
		}





	// -------------------------------------------------------------------- CODE
	
	hww.hide();
	wcs.hide();
	
	// if exists load saved value, otherwise store it
	if ($.cookie(navCookieName)) {
		currentNav = $.cookie(navCookieName);
		changeNav(currentNav);
	} else {
		$.cookie(navCookieName, currentNav);
	}

	moveCurrentNavIndicator(currentNav);

	// create events for each main content selector
	attachNavEvents(".nav", "whatwedo");
	attachNavEvents(".nav", "howwework");
	attachNavEvents(".nav", "whychoosesyllogism");
	
});






