(function($) {
	$.fn.tooltip = function(options) {
		var options = $.extend({
			width : '332px',
			offsetTop : 10,
			offsetLeft : 10,
			message : '',
			onClick : true,
			cornLock : 'left'			
		}, options);
		
		var body = $(document.body);
		var window = $(window);
		
		var removeToolTip = function() {
			if($('#tooltip').length > 0) {
				if($('#tooltip').data('masterEl'))
					$('#tooltip').data('masterEl').data('showToolTip', false);
				$('#tooltip').remove();
			}
		}
		
		return this.each(function() {
			var master = $(this);
			
			$(this).click(function() {
				if(options.onClick == false) return false;
				
				var show = master.data('showToolTip');
				if(!show) {
					removeToolTip();
					
					if(options.cornLock == 'left') {
						var offset = $(this).offset();
						var top = offset.top - options.offsetTop;
						var left = offset.left + $(this).width() + options.offsetLeft;				
					}
					if(options.cornLock == 'top') {
						var offset = $(this).offset();
						var top = offset.top + options.offsetTop + $(this).height();
						var left = offset.left + options.offsetLeft;						
					}
					
					var tooltipBox = '<div class="whatisvisa_pos" id="tooltip" style="width:' + options.width + ';top:' + top + 'px;left:' + left + 'px;">';
					tooltipBox += '<div class="whatisvisa_main newnormal"><span class="float_right closewin newnormal" id="tooltip_close">Close</span><div class="clearr"></div>';
					tooltipBox += '<div id="tooltip_box_message">' + options.message + '</div>';
					tooltipBox += '<div class="whatisvisa_top"><p></p></div>';
					tooltipBox += '<div class="whatisvisa_bottom"><p></p></div><div class="whatisvisa_left"></div><div class="whatisvisa_right"></div>';
					
					if(options.cornLock == 'left')
						tooltipBox += '<div class="whatisvisa_corn"></div>';
					if(options.cornLock == 'top')
						tooltipBox += '<div class="whatisvisa_corn_top"></div>';
						
					tooltipBox += '</div></div>';
					var ttjobject = $(tooltipBox).appendTo(body);
					
					$(ttjobject).find("#tooltip_close").click(removeToolTip);
					
					master.data('showToolTip', true);
					ttjobject.data('masterEl', master);
				}
				else {
					removeToolTip();
				}			
				return false;
			}).mouseover(function() {
				if(options.onClick == false) {
					removeToolTip();
					
					var tooltipBox = '<div class="window_bottom_main no_display" id="tooltip">';
					tooltipBox += '<div class="newnormal window_bottom">' + options.message + '<div></div></div></div>';
					var ttjobject = $(tooltipBox).appendTo(body);
					
					var offset = master.offset();
					var top = offset.top - ttjobject.height() - 5;
					var left = offset.left - 21;
					
					ttjobject.css({'top' : top, 'left' : left});
					ttjobject.removeClass('no_display');
					
					ttjobject.data('masterEl', master);
				}
			}).mouseout(function() {
				if(options.onClick == false) {
					removeToolTip();
				}
			});
		});
	}
})(jQuery);
