/**
 * @class EasyConsole
 * @date 2010-10-27
 * @author David Hainzl
 * @author seam media group
 * @version 1.0
 * This class provides an easy way to log stuff to a debug console,
 * if one is available.
 */
EasyConsole = {};

/**
 * This function logs something.
 * @param string str The error message
 */
EasyConsole.log = function (str)
{
	if (typeof console != "undefined")
	{
		console.log (str);
	}
};

/**
 * This function writes a fancy debug-message
 * @param string str The error message
 */
EasyConsole.debug = function (str)
{
	if (typeof console != "undefined")
	{
		if (typeof console.debug != "undefined")
		{
			console.debug (str);
		}
		else
		{
			EasyConsole.log (str);
		}
	}
};

/**
 * This function writes a fancy error-message
 * If no console is present, users will see a alert-popup
 * @param string str The error message
 */
EasyConsole.error = function (str)
{
	if (typeof console != "undefined")
	{
		if (typeof console.debug != "undefined")
		{
			console.error (str);
		}
		else
		{
			EasyConsole.log (str);
		}
	}
	else
	{
		alert ("Ein Fehler ist aufgetreten:\n" + str);
	}
};

/**
 * This function starts a group in a console
 * @param str The title of the group
 */
EasyConsole.group = function (str)
{
	if (typeof console != "undefined")
	{
		if (typeof console.group != "undefined")
		{
			console.group (str);
		}
		else
		{
			EasyConsole.log ("--------------------" + str + "--------------------");
		}
	}
};

/**
 * This function ends a group in a console
 */
EasyConsole.groupEnd = function ()
{
	if (typeof console != "undefined")
	{
		if (typeof console.groupEnd != "undefined")
		{
			console.groupEnd ();
		}
		else
		{
			EasyConsole.log ("----------------------------------------");
		}
	}
};
