
/**
 * Settings
 */
 
var defaultClosed = true;
 
/**
 * End Settings
 */

var LabeledDebugger = Class.create(
{
	initialize: function()
	{
		this.doDebugSections();
		this.doModuleHighlights();
	},
	
	doDebugSections: function()
	{
		if (defaultClosed)
		{
			this.hideValues();
		}
		
		this.addNameEvents();
	},
	
	hideValues: function()
	{
		$$('.varValue').each(function(value)
		{
			value.hide();
		});
	},
	
	addNameEvents: function()
	{
		$$('.varName').each(function(name)
		{
			name.observe('click', function(e)
			{
				var element = e.element();
				
				element.nextSiblings()[0].toggle();
			});
		});
	},
	
	doModuleHighlights: function()
	{
		$$('.moduleDebug').each(function(element)
		{
			element
			.insert({top: new Element('span').update('Module: ' + element.id)
				.setStyle('float: right; font-family: Arial; font-size: 11px; padding: 5px; background: #ccc;')})
			.setStyle('border: 1px solid #ccc; background: #dbfce6; margin: 10px 0 10px 0');
		});
	}
});

document.observe('dom:loaded', function()
{
	var LabeledDebug = new LabeledDebugger();
});
