
// JQUERY CUSTOM COMMANDS
$(document).ready( function() {  // start javascript when document is loaded

	//http://l0calh0st.tweakblogs.net/blog/4080/jquery-tooltip-script.html 
	
	$(function() { 
	    $('.tooltip').hover(function() {
	        if(!$('#tooltip').length > 0) {
	            $('body').append('<div id="tooltip"><div id="tooltip-text"></div><div id="tooltip-triangle"></div></div>');
	        }
	        var tooltip = $('#tooltip');
	        var tooltipText = $('#tooltip-text');
	        var tooltipTriangle = $('#tooltip-triangle');
	        if($(this).find(':nth-child(1)').length > 0) {
	            var data = $(this).find('span:first').html();
	        }
	        else {
	            var data = "Undefined";
	        }
	        tooltipText.removeClass();
	        tooltipTriangle.removeClass();
	        tooltipText.html(data);
	        tooltipTriangle.addClass('triangle');
	        var offset = $.extend({}, $(this).offset(), {width: this.offsetWidth, height: this.offsetHeight});
	        var tooltipHeight = $('#tooltip').height();
	        var tooltipWidth = $('#tooltip').width();
	        var scrollTop = $(document).scrollTop();
	        var scrollLeft = $(document).scrollLeft();
	        //Check if tooltip will be to close to borders 
	        if ((2 * (($(window).height() + scrollTop)- (offset.top + offset.height)) + offset.height) < tooltipHeight) {
	            var extraBottom = tooltipHeight - (2 * (($(window).height() + scrollTop)- (offset.top + offset.height)) + offset.height);
	            var extraTop = 0;
	        }
	        else if ((2 * (offset.top - scrollTop) + offset.height) < tooltipHeight) {
	            var extraTop = tooltipHeight - (2 * (offset.top - scrollTop) + offset.height);
	            var extraBottom = 0;
	        }
	        else {
	            var extraTop = 0;
	            var extraBottom = 0;
	        }
	        /*
	        if (offset.left > (scrollLeft + $(window).width() / 2)) {
	            //Right triangle / Left tooltip
	            tooltip.css({left: offset.left - tooltipWidth - 13, top: offset.top + offset.height / 2 - tooltipHeight / 2 - extraBottom + extraTop});
	            tooltipTriangle.addClass('triangle-right');
	            tooltipText.addClass('tooltip-text-right');
	        }
	        else {
	            //Left triangle / Right tooltip
	            tooltip.css({left: offset.left + offset.width + 13, top: offset.top + offset.height / 2 - tooltipHeight / 2 - extraBottom + extraTop});
	            tooltipTriangle.addClass('triangle-left');
	            tooltipText.addClass('tooltip-text-left');
	        }
	        */
	        //Left triangle / Right tooltip
	        //HACK!! alleen maar rechts van het element plaatsen
            tooltip.css({left: offset.left + offset.width + 23, top: offset.top + offset.height / 2 - tooltipHeight / 2 - extraBottom + extraTop - 3});
            tooltipTriangle.addClass('triangle-left');
            tooltipText.addClass('tooltip-text-left');
	        tooltip.show();
	    },
	    function() {
	        $('#tooltip').fadeOut('fast');    
	    });
	});
	
	
	
}); // end ready function

