
(function(jQuery) {

	jQuery.fn.simpleTooltip = function(options){
	  
		// default configuration properties
		var defaults = {	
			xOffset:15,		
			yOffset:0
		};
			
		var options = jQuery.extend(defaults, options);  
				
		this.each(function() {
			var title = jQuery(this).attr("title"), content, header = '', _split;
			if (title) {
				if (title.indexOf('::') != -1) {
					_split = title.split('::');
					header = _split[0];
					content = _split[1];
				} else {
					content = title;
				}
				jQuery(this).attr("title","");
				var _tooltipHTML = jQuery('<div class="tooltip"><strong class="title">'+header+'</strong><div class="tooltip-holder"><p>'+content+'</p></div></div>');
				
				jQuery(this).mouseenter(function(e){
					jQuery("body").append(_tooltipHTML);
					var _dif = checkWidth(_tooltipHTML, e.pageX + options.xOffset);
					_tooltipHTML
						.css("position","absolute")
						.css("top",(e.pageY + options.yOffset) + "px")
						.css("left",(e.pageX + options.xOffset + _dif) + "px")						
						.css("display","none")
						.show()
				}).mouseleave(function(){	
					_tooltipHTML.hide();
				});	
				jQuery(this).mousemove(function(e){
					var _dif = checkWidth(_tooltipHTML, e.pageX + options.xOffset);
					_tooltipHTML
						.css("top",(e.pageY + options.yOffset) + "px")
						.css("left",(e.pageX + options.xOffset + _dif) + "px")					
				});
			}
		});
		function checkWidth(_tip, _x){
			var _dif = 0;
			if (window.innerHeight) _width = window.innerWidth;
			else _width = document.documentElement.clientWidth;
			var _tipWidth = _tip.outerWidth(true);
			if (_width < _x+_tipWidth + 20) {
				_dif = -_tipWidth-options.xOffset-5;
				return _dif;
			} else {
				return 0;
			}
		}
		
	};

})(jQuery);


