/*
 * Function to display a transparent message.
 */
var tMessage = {
	show: function(msg, type)
	{
		if (!$('#tMessage').length)
		{
			$('body').append('<div id="tMessage"></div>')
		}

		clearTimeout(tMessage.t2);
		switch (type)
		{
			case 'success':
				$('#tMessage').css({ backgroundColor:'#c3f09f', color: '#264409', border: '1px solid #264409', borderBottom: '2px solid #264409', borderRight: '2px solid #264409' });
			break;
			
			case 'error':
				$('#tMessage').css({ backgroundColor:'#fd9fa3', color: '#8a1f11', border: '1px solid #8a1f11', borderBottom: '2px solid #8a1f11', borderRight: '2px solid #8a1f11' });
			break;
		}

		$('#tMessage').center().html(msg).fadeIn(1000);
		try { $('#tMessage').corner(); } catch (e) {} //Try to round corners, if we can't no big deal.

		setTimeout("tMessage.bindHideEvents()", 1000);
		tMessage.t2 = setTimeout("tMessage.hide()", 3500);
	},
	
	hide: function()
	{
		$('#tMessage').fadeOut(500);
		$('body').unbind('mousemove', tMessage.hide).unbind('click', tMessage.hide).unbind('keypress', tMessage.hide);
	},

	bindHideEvents: function()
	{
		$('body').mousemove(tMessage.hide).click(tMessage.hide).keypress(tMessage.hide);
	}
};

/*
 * Function to center any absolutely-positioned element on the viewport.
 */
(function($){
$.fn.center = function(options)
{
	return this.each(function(index)
	{
		var eleTop = $(document).scrollTop() + ($(window).height() / 2) - ($(this).height() / 2);
		var eleLeft = ($(window).width() / 2) - ($(this).width() / 2);
		$(this).css({ position: 'absolute', marginTop: '0', top: eleTop, left: eleLeft });
	});
  };
})(jQuery);


/*
 * Function to display a transparent overlay.
 */
var tOverlay = {
	__setDimensions: function()
	{
		$('#tOverlay').css(
		{
			width: $(window).width(),
			height: $(window).height(),
			top: $(document).scrollTop(),
			left: $(document).scrollLeft()
		});
	},

	show: function()
	{
		if (!$('#tOverlay').length)
		{
			$(document.body).append('<div id="tOverlay"></div>')
		}

		tOverlay.__setDimensions();
		$(window).scroll(tOverlay.__setDimensions).resize(tOverlay.__setDimensions);

		if ($.browser.msie && $.browser.version < 7)
		{
			$('embed, object, select').css({ 'visibility' : 'hidden' });
		}
		
		$('#tOverlay').css(
		{
			position: 'absolute',
			backgroundColor:'#FFFFFF',
			opacity: 0.85,
			display: 'none'
		}).fadeIn(500);
	},
	
	hide: function()
	{
		$('#tOverlay').fadeOut(500);
		$(window).unbind('scroll', tOverlay.__setDimensions).unbind('resize', tOverlay.__setDimensions);
	}
};