/*
	Author: Martin Nilsson, Basement Creative Studio (BCS)
	Tooltip container måste ligga direkt efter trigger. 
	
	* första argument xOffset som int, andra yOffset
	* default pos plate bottom center mot top center på trigger
	* arg 3 = alt child tag as trigger
	
	* TODO Z funkar inte när plate är child till a. Måste arbeta med aprent och position.
 */

;(function($) { 


$.fn.hoverplate = function() {
	
	var xOffset = 0;
	var yOffset = 0;

	if(arguments.length > 0){
		xOffset = arguments[0];
		if(arguments.length > 1){
			yOffset = arguments[1];
		}
	}
	
	//$(this).css("position", "relative");

	
	$(this).each(function() {
		var triggerObj = $(this);
		var triggerZ = 40;
		triggerObj.css("z-index", triggerZ);
		var buttonObj = triggerObj.children("a");
		var toolTipObj = triggerObj.next();

		toolTipObj.css("display", "none");
		toolTipObj.css("position", "absolute");
		toolTipObj.css("z-index", 45);
		
		// TODO fixa if för arg 3
		//buttonObj.children(arguments[3]).hover(
		triggerObj.hover(
			function(event){
				// show
				triggerObj.css("z-index", 50);
				var triggerP = triggerObj.position();
				//alert("button left:"+buttonP.left);
				var left = triggerP.left - (toolTipObj.outerWidth(true)/2) + triggerObj.outerWidth(true)/2 + xOffset;
				var top = triggerP.top - (toolTipObj.outerHeight(true)/2) + triggerObj.outerHeight(true)/2 + yOffset;
				//alert("triggerP.top:"+triggerP.top);
				//alert("toolTipObj.outerHeight(true):"+toolTipObj.outerHeight(true));
				//alert("triggerObj.outerHeight(true):"+triggerObj.outerHeight(true));
				//alert(triggerP.left+","+triggerP.top);
				toolTipObj.css("left", left+"px");
				toolTipObj.css("top", top+"px");
				toolTipObj.fadeIn();
				//toolTipObj.css("display", "block");
				
			},
			function(event){
				// hide
				//toolTipObj.css("display", "none");
				toolTipObj.hide();
				triggerObj.css("z-index", triggerZ);
				alert(buttonZ);
			}
		);
	
	});
	
	
	function onMouseOut(evObj){
		alert("hide");
		toolTipObj.hide();
	}
}

   
})(jQuery);
