(function()
{
	LAYOUT = ({
	
	id:'ccc-layout',
	settings:{width:'220px', height:'40px', opacity:0, background:'#FFFFFF', zIndex:100000, top:'0px', left:'0px'},
	enable: function(options)
	{
		if(typeof options == 'object')
		{
			jQuery.extend(this.settings, options);
		}
		
		this.getHtml();
	},
	
	getHtml: function()
	{
		var html = '<div id="'+ this.id +'" style="position:fixed; background:'+ this.settings.background +'; height:'+ this.settings.height +'; width:'+ this.settings.width +'; z-index:'+ this.settings.zIndex +'; top:'+ this.settings.top +';left:'+ this.settings.left +'; display:none;">';
		html += '</div>';
		
		if(!jQuery("#"+this.id).is(":hidden"))
		{
			jQuery("body").append(html);		
		}
		
		jQuery("#"+this.id).css({opacity:this.settings.opacity, width:jQuery(window).width()+'px', height:jQuery(document).height()+'px', display:'block'});
	},
	
	disable: function()
	{
		jQuery("#"+this.id).hide();
	}
	
	});

})(jQuery);


(function()
{
	LOADER = ({
	
	id:'ccc-loader',
	settings:{waiting_text:'Please wait...', width:'220px', height:'40px', opacity:0.9, border:'1px solid #78A9CD', background:'#E9F2F8', padding:'15px', zIndex:100001, top:'180px', left:'100px', delaytime:1},
	show: function(options)
	{
		LAYOUT.enable();
		
		if(typeof options == 'object')
		{
			jQuery.extend(this.settings, options);
		}
		
		this.getHtml();
		
		this.settings.left = (jQuery(window).width()/2 - jQuery("#"+this.id).width()/2);
		jQuery("#"+this.id).css({left:this.settings.left+'px', opacity:this.settings.opacity, display:'block'});
	},
	
	getHtml: function()
	{
		var html = '<div class="ccc-loader" id="'+ this.id +'" style="position:fixed; padding:'+ this.settings.padding +'; border:'+ this.settings.border +'; background:'+ this.settings.background +'; height:'+ this.settings.height +'; width:'+ this.settings.width +'; z-index:'+ this.settings.zIndex +'; top:'+ this.settings.top +';left:'+ this.settings.left +'; display:none;">';		
		html += '<table width="100%"><tr><td class="ccc-loader-image"></td><td style="color:#003366;">'+ this.settings.waiting_text +'</td></tr></table>';
		html += '</div>';
		
		if(jQuery("#"+this.id).is(":hidden"))
		{
			jQuery("#"+this.id).remove();
		}		
		jQuery("body").append(html);
	},
	
	hide: function()
	{
		jQuery("#"+this.id).hide(); LAYOUT.disable();
	},
	
	hideByMessage: function(content, delaytime)
	{	
		if(delaytime!=null)
		{
			setTimeout(function(){ jQuery("#"+LOADER.id).fadeOut(200, function(){ MESSAGE.show(content); }); }, delaytime);		
		}
		else
		{			
			setTimeout(function(){jQuery("#"+LOADER.id).fadeOut(200, function(){ MESSAGE.show(content); }); }, this.settings.delaytime);		
		}
	},
		
	});
	
})(jQuery);


(function()
{
	MESSAGE = ({
	
	id:'ccc-message',
	settings:{content:'', width:'400px', height:'80px', opacity:1, border:'1px solid #78A9CD', background:'#E9F2F8', padding:'15px', zIndex:100001, top:'180px', left:'100px'},
	show: function(content, options)
	{
		LOADER.hide();
		LAYOUT.enable();
		
		this.settings.content = content;
		
		if(typeof options == 'object')
		{
			jQuery.extend(this.settings, options);
		}
		
		this.getHtml();	
		
		this.settings.left = (jQuery(window).width()/2 - jQuery("#"+this.id).width()/2);
		jQuery("#"+this.id).css({left:this.settings.left+'px', opacity:this.settings.opacity, display:'block'});
	},
	
	getHtml: function()
	{
		var html = '<div class="ccc-message" id="'+ this.id +'" style="position:fixed; border:'+ this.settings.border +'; background:'+ this.settings.background +'; min-height:'+ this.settings.height +'; min-width:'+ this.settings.width +'; z-index:'+ this.settings.zIndex +'; top:'+ this.settings.top +';left:'+ this.settings.left +'; display:none;">';		
		html += '<div class="ccc-message-header"><table width="100%" cellpadding="0" cellspacing="0"><tr><td> <strong>MESSAGE</strong></td><td width="10%" align="right"><a class="ccc-message-close" onclick="MESSAGE.hide();">CLOSE</a></td></tr></table></div>';
		html += '<div class="ccc-message-content" id="ccc-message-content">'+ this.settings.content +'</div>';
		html += '</div>';
		
		if(jQuery("#"+this.id).is(":hidden"))
		{
			jQuery("#"+this.id).remove();
		}
		jQuery("body").append(html);
	},
	
	hide: function()
	{
		jQuery("#"+this.id).hide();
		LAYOUT.disable();
	}
		
	});
	
})(jQuery);
