(function($) {
	jQuery.fn.notice = function(message, settings) {
		if(message == "")
			return;
		
		 var config = { "class": "alert ui-state-highlight ui-corner-all", "icon": "alert", "timeout": 8000 };
		 
	    if (settings)
			$.extend(config, settings);

	    var content = $("<p />").html(message);

		if(config["icon"]) {
			content.prepend(
				$("<div />").addClass("ui-icon ui-icon-"+config["icon"]).css("float", "left").css("margin-right", 5)
			);
		}
	    
		var box = $("<div></div>").addClass(config["class"]).css('cursor', 'pointer').click(function() { hideCallback(); }).append(content);
		$(this).parent().before(box);

		var hideCallback = function() {
			$(box).hide("slide", { direction: "up" }, 1000);
		};
		
		if (config["timeout"]) {
			window.setTimeout(hideCallback, config["timeout"]);
		}
		
		$(box).show("scale", 700);
	};

})(jQuery);
