/**
frappant.ch / mhm
abhängigkeit: jquery.js
v1 / 14.4.2011
fügt dynamische funktionaliät bzw. CSS-gestylten
Tooltips zu passenden Links hinzu.

anwendung:
$('a.tooltip').frp_appendTooltip();

*/

(function(jQuery) {
    jQuery.fn.frp_appendTooltip = function(options) {
	    var tooltip;
    	if(!tooltip){
    		//	erstellen wir das baseobjekt für den tooltips
    		var tooltip=jQuery('<span class="tooltip"></span>');
	    	tooltip_content=jQuery('<span class="content"/>');
	    	tooltip.append(tooltip_content);
    		jQuery('body').append(tooltip);
	    	tooltip.hide();
    	}
    	return jQuery.each(this,function(index){
    		$this=jQuery(this);
    		$parent=$this.parent();
    		$parentOffset=$parent.offset();

    		//	speichert die koordinaten des links (X x Y) im data objekt des links ab
    		$this.data('anchorpoint_left',$parentOffset.left+($parent.width()/2)+'px');
    		$this.data('anchorpoint_top',$parentOffset.top+($this.height()*1.25)+'px');

    		//	neues fenster aufmachen
    		$this.attr('target','_blank');

			//	tooltip anbinden
    		$this.bind({
    			mouseover:	function(){showFillTooltip(this,tooltip,tooltip_content);return true},
    			mouseout:	function(){hideTooltip(this,tooltip);return true}
    		});
    	});
    };

    var showFillTooltip=function(active_object,tooltip,tooltip_content){
	    active_object=jQuery(active_object);
	    tooltip=jQuery(tooltip);
    	//	verschiebt tooltip zum aktiven link
    	tooltip.css({
    		top:	active_object.data('anchorpoint_top'),
    		left:	active_object.data('anchorpoint_left')
    	});
    	//	fügt textlicher inhalt des links dem tooltip hinzu
		jQuery(tooltip_content).text(active_object.text());
    	tooltip.show();
    };
    var hideTooltip=function(active_object,tooltip,tooltip_content){
    	//	leeren und ausblenden
		jQuery(tooltip_content).text('');
    	jQuery(tooltip).hide();
    };

})(jQuery);
