(function(jQuery)
{
	jQuery.extend({
		noticeAdd: function(options)
		{
			var defaults = {
				inEffect: 			{opacity: 'show'},	// in effect
				inEffectDuration: 	600,				// in effect duration in miliseconds
				life:    			10000,				// time in miliseconds before the item has to disappear
				text: 				'',					// content of the item
				sticky: 			false,				// should the notice item sticky or not?
				type: 				'notice' 			// could also be error, succes
			}

			var options, noticeWrapAll, noticeItemOuter, noticeItemInner, noticeItemClose;

			options 		= jQuery.extend({}, defaults, options);
			noticeWrapAll	= (!jQuery('.notice-wrap').length) ? jQuery('<div></div>').addClass('notice-wrap').appendTo('body') : jQuery('.notice-wrap');
			noticeItemOuter	= jQuery('<div></div>').addClass('notice-item-wrapper');
			noticeItemInner	= jQuery('<div></div>').hide().addClass('notice-item' + (options.type ? ' notice-item-'+ options.type : '')).appendTo(noticeWrapAll).html('<p>'+options.text+'</p>').animate(options.inEffect, options.inEffectDuration).wrap(noticeItemOuter);
			noticeItemClose	= jQuery('<div></div>').addClass('notice-item-close').prependTo(noticeItemInner).html('<img src="/cms/img/x.png" />').click(function() { jQuery.noticeRemove(noticeItemInner) });

			if(navigator.userAgent.match(/MSIE 6/i))
			{
				noticeWrapAll.css({top: document.documentElement.scrollTop});
			}

			if(!options.sticky)
			{
				setTimeout(function()
				{
					jQuery.noticeRemove(noticeItemInner);
				},
				options.life);
			}
		},

		noticeRemove: function(obj)
		{
			obj.animate({opacity: '0'}, 600, function()
			{
				obj.parent().animate({height: '0px'}, 300, function()
				{
					obj.parent().remove();
				});
			});
		}
	});
})(jQuery);


