function rbGet(rbg)
{
	// what is the value of the selected radio button (if any)?
	// * returns false if value not found
	if (!rbg)
		return false;
	var value = false;
	if (!rbg.length && rbg.checked)
		return rbg.value
	else
	{
		var checked = false;
		for (var i = 0; i < rbg.length; i++)
		{
			if (rbg[i].checked)
			{
				value = rbg[i].value;
				checked = true;
				break;
			}
		}
		if (checked)
			return value;
		else
			return false;
	}
}


function rbSet(rbg, value)
{
	// sets the value of a radio button group
	if (!rbg)
		return false;
	for (var i = 0; i < rbg.length; i++)
	{
		if (rbg[i].value == value)
		{
			rbg[i].checked = true;
			break;
		}
		else
			rbg[i].checked = false;
	}
}


function rbClear(rbg)
{
	// clears all the radio buttons in a group (i.e. so none are selected)
	if (!rbg)
		return false;
	for (var i = 0; i < rbg.length; i++)
		rbg[i].checked = false;			
}


function rbEnable(rbg, enable)
{
	// enables (or disables, if enable is set to false) the radio button group
	if (!rbg)
		return false;
	if (typeof(enable) == 'undefined')
		enable = true;
	for (var i = 0; i < rbg.length; i++)
		rbg[i].disabled = !enable;
}


function rbDisable(rbg)
{
	// disables the radio button group
	rbEnable(rbg, false);
}


function rbClearAndDisable(rbg)
{
	rbClear(rbg);
	rbDisable(rbg);
}


function rbEnableAndSet(rbg, value)
{
	rbEnable(rbg);
	rbSet(rbg, value);
}
