/*
checkAll()
Allows you to select/deselect all checkboxes beginning with a certain
name by clicking on a single check box. 

click <input type="checkbox" onClick="checkAll(this,'check')" />
checkAll 1 <input type="checkbox" name="check1" />
checkAll 2 <input type="checkbox" name="check2" />
checkAll 3 <input type="checkbox" name="check3" />
*/
function checkAll(elm,name)
{
	for (var i = 0; i < elm.form.elements.length; i++)
	{
		if (elm.form.elements[i].name.indexOf(name) == 0)
		{
			elm.form.elements[i].checked = elm.checked;
		}
	}
}

/*
toggleIt()
Allows you to toggle a pair of checkboxes. 

toggle 1 <input type="checkbox" name="on" onClick="toggleIt(this,'on','off')" checked="checked" />
toggle 2 <input type="checkbox" name="off" onClick="toggleIt(this,'off','on')" />
*/
function toggleIt(elm, name1, name2)
{
	if (elm.name == name1)
	{
		if (elm.checked)
		{
			elm.form[name2].checked = false;
		}
		else
		{
			elm.form[name2].checked = true;
		}
	}
	else if (elm.name == name2)
	{
		if (elm.checked)
		{
			elm.form[name1].checked = false;
		}
		else
		{
			elm.form[name2].checked = true;
		}
	}
}

/*
alterCate()
Automatically erases the text box when the user clicks on it. When the
user deselects it, it will restore the default value if it's empty. 

<input type="text" value="..blah.." onBlur="alterCate(this, 'blur')" onFocus="alterCate(this, 'focus')" />
*/
function alterCate(elm, onoff)
{
	if (typeof(onoff) == "undefined" ) {
		onoff = "blur";
	}

	if (elm.value == elm.defaultValue && onoff == "focus") {
		elm.value = "";
	} else if (elm.value == "" && onoff == "blur") {
		elm.value = elm.defaultValue;
	}
}

function toggleDisabled(elm, name)
{
	elm.form[name].disabled = elm.checked;
}