function toggle(id)
{
	// Multiple ids
	if (id.indexOf('/') != -1)
	{
		var ids = id.split('/');
		if (ids[0])
		{
			for (var i = 0; i < ids.length; i++)
			{
				toggle(ids[i]);
			}
			for (var i = 0; i < ids.length; i++)
			{
				document.getElementById(ids[i]).style.display = 'block';
			}
		}
		return;
	}

	// Single id
	var element = document.getElementById(id);
	var siblings = element.parentNode.childNodes;
	var regex = /.*\btoggle\b.*/;
	for (var i = 0; i < siblings.length; i++)
	{
		var sibling = siblings[i];
		if (regex.test(sibling.className))
		{
			sibling.style.display = ((sibling.id != id) ? 'none' : 'block');
		}
	}
}

// Click a radio button with a specific value
function clickRadio(value)
{
	var inputs = document.getElementsByTagName('input');
	for (var i = 0; i < inputs.length; i++)
	{
		var input = inputs[i];
		if (input.type == 'radio' && input.value == value)
		{
			input.click();
		}
	}
}

// Get which radio button is checked
function radioValue(radioGroup)
{
	if (!radioGroup[0])
	{
		return radioGroup.value;
	}
	for (var i = 0; i < radioGroup.length; i++)
	{
		if (radioGroup[i].checked)
		{
			return radioGroup[i].value;
		}
	}
}

// Set dropdown selection by value
function setSelection(value)
{
	var sels = document.getElementsByTagName('select');
	for (var i = 0; i < sels.length; i++)
	{
		var opts = sels[i].getElementsByTagName('option');
		for (var j = 0; j < opts.length; j++)
		{
			if (opts[j].value == value)
			{
				sels[i].selectedIndex = j;
				return;
			}
		}
	}
}

// Pop up a centered window
function popup(url, name, width, height)
{
	var left = (screen.width - width) / 2;
	var top = (screen.height - height) / 2;
	var win = window.open(url, name, 'width=' + width + ',height=' + height + ',left=' + left + ',top=' + top);
	win.focus();
}

function init()
{
	window.focus();
}

window.onload = init;
