// JavaScript Document
// #CACHE{3600}
$(document).ready(function($) {
	$('#suggest:focus').each(function() {
		$(this).attr('value','');
	});
	$("div.sousmenu .submenu_me").each(function(){

		var sousmenu = $(this);

		var metas = $(this).metadata();

		$(this).append('<div class="ajaxsubmenu"></div>');
		$(this).addClass('submenu_active');
		$(this).find(".ajaxsubmenu").css('display','none').addClass('unloaded');
	});
	$("#multiSMenu").tabs();
	$("div.sousmenu .submenu_me").hover(function(event){
			var metas = $(this).metadata();
			var subme = $(this).find(".ajaxsubmenu");
			subme.css('display','block');
			var posX = $(this).parent().offset().left+$(this).parent().width()-10;
			subme.css('left',posX+'px');

			if($(this).find(".unloaded")) {
				subme.removeClass('unloaded');
				subme.load(metas.submenu, function(){
					activateSub(event,subme,$(this).parent());
				});
			}
			else
			{
				activateSub(event,subme,$(this).parent());
			}
		},
		function(){
			$(this).find(".ajaxsubmenu").css('display','none');
		});
	function activateSub(event,subme,parent) {
		var posY = parent.offset().top;
		var topOffset = 15;
		var tOffset = parseInt(topOffset, 10);
		var sTop = $(document).scrollTop();
		var wHeight = $(window).height();
		var mouseX = event.pageX;
		var mouseY = event.pageY;
		var baseline = sTop + wHeight;
		//alert(posY);
		 if (posY + subme.height() + tOffset > baseline && mouseY - sTop > subme.height() + tOffset) {
          tipY = mouseY - subme.height();
          direction = 'top';
		  //alert(mouseY);
        } else {
          tipY = posY + tOffset - 14;
          direction = 'bottom';
        }
		//var tipY = posY + tOffset - 14;

		subme.css({top: tipY + 'px',position: 'absolute'}).
				removeClass('unloaded');
	}
	/*$("div.sousmenu .submenu_me").cluetip({
				mouseOutClose: true,
				sticky: true,
				arrows: true,
				showTitle: false,
				dropShadow: false,
				width: '200px'
			});*/


	/* ### VERSION ORIGINALE avec effets slide
	$("div.infosPerso li.user, div.infosPerso li.cart").hover(
		function(){
			var that = this;
			$(this).addClass('hover');
			$(this).find(".ticket").slideDown("fast",
				function(){
				  $(that).addClass('hover');
				});
		},
		function () {
			var that = this;
			$(this).find(".ticket").slideUp("fast",
				function(){
				  $(that).removeClass('hover');
				});
		});
	*/

	// DEBUT version modifiée sans les effets
	// il faudrait ne quitter que sur blur

	function showTicket(){
		$("div.infosPerso li.user").addClass('hover');
		$("div.infosPerso li.user").find(".ticket").show();
		$("div.infosPerso").unbind('click', unlockTicket);
		$("div.infosPerso li.user").bind('click', lockTicket);
	}

	function lockTicket(){
		$("div.infosPerso li.user").addClass('locked');
	}

	function unlockTicket(){
		$("div.infosPerso li.user").removeClass('locked');
	}

	function hideTicket(){
		if($("div.infosPerso li.user").hasClass('locked')){
			// locked ? do nothing
		}
		else{
			$("div.infosPerso li.user").removeClass('hover');
			$("div.infosPerso li.user").find(".ticket").hide();
		}
	}

	$("div.infosPerso li.user").hover(showTicket, hideTicket);


	$("div.infosPerso li.cart").hover(
		function(){
			$(this).addClass('hover');
			$(this).find(".ticket").show();
			unlockTicket();
			hideTicket();
		},
		function(){
			$(this).removeClass('hover');
			$(this).find(".ticket").hide();
		}
	);



	// FIN MODIFS

	$('#suggest').val($('#recherche_label').html());

	$('#suggest').click(
		function(){
			$(this).val("");
		}
	);

	$('#suggest').suggest(
		'/ajax/ted_search.php',
		{
			dataContainer:'#suggestid', attachObject:'#suggestresults', onSelect: function()
			{
				$(this).parent('form').submit();
			}
		});

	$('.fancybox_me').fancybox();


	function addMega(){
		$(this).addClass('hovering');
		$(this).fadeIn("fast", function(){ });
	}
	function hideMega(){
		$(this).removeClass('hovering');
	}
	function removeMega(){
	  $(this).fadeOut("slow", hideMega);
	}
	var megaConfig = {
		interval: 50,
		sensitivity: 4,
		over: addMega,
		timeout: 250,
		out: removeMega
	};
	$("li.mega").hoverIntent(megaConfig);
});

