function $()
{
	var elements = new Array();
	for (var i = 0; i < arguments.length; i++) {
		var element = arguments[i];
		if (typeof element == 'string')
			element = document.getElementById(element);
		if (arguments.length == 1)
			return element;
		elements.push(element);
	}
	return elements;
}

function checkForm(form, msg)
{
	var error = false;
	var theForm = form;
	var header = "ERROR: Incomplete Form";
	
	if (!msg)
		var msg = "Some fields were not filled in.  Please fill them.";
	
	var theElements = theForm.elements;
		
	for (var i = 0; i < theElements.length; i++)
	{
		var element = theElements[i];
		if (element.value == "")
			error = true;
	}

	if (error)
	{
		msgbox(header, msg);
		return false;
	}
}

function clearDuplicateObj(element, index)
{
	var id = element.value;
	var name = element.name;
	var objs = document.getElementsByName(element.name);
		
	for (var j =0; j < objs.length; j++)
		if (objs[j].value == id)
			if (j != index)
			{
				eval("objs[" + j + "].value = 'empty'");
				return j;
			}
}

function msgbox()
{
	var header = arguments[0];
	var msg = arguments[1];
	var redirect = arguments[2];
	var cancel = arguments[3];
	
	if (redirect)
		redirect = "document.location.href='" + redirect;
	
	html = "<table width=\"296px\" cellpadding=\"10px\" align=\"center\" class=\"text\"><tr><td>";
	html += "<br><b>" + header + "</b><br><br>" + msg + "</td></tr>";
	html += "<tr><td><table align=\"center\"><tr><td><input type=\"button\" name=\"confirmation\" value=\"OK\" class=\"button\" onClick=\"document.all.msgbox.style.display = 'none'; " + redirect + "&confirmation=1';\"></td>";
	
	if (cancel == true)
		html += "<td><input type=\"button\" name=\"confirmation\" value=\"Cancel\" class=\"button\" onClick=\"document.all.msgbox.style.display = 'none'; " + redirect + "&confirmation=0';\"></td>";
	
	html += "</tr></table>";
	html += "</td></tr></table>";

	document.all.message.innerHTML = html;
	document.all.msgbox.style.display = 'block';
	button = document.getElementsByTagName('input')[0];
	button = button.focus();
	
}

function popUp(URL, w, h)
{
	eval("popup = window.open(URL, 'popup', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=" + w + ",height=" + h + "');");	
}

function toggleImg(img)
{
	if (img.src.substr(-6, 2) == "_0")
		img.src = img.src.substr(0, (img.src.length - 6)) + "_1.gif";
	else
		img.src = img.src.substr(0, (img.src.length -6)) + "_0.gif";
}

function rowHighlight(row, on)
{
	var checkbox = row.getElementsByTagName('input')[0];
	if (on)
		row.style.backgroundImage = 'url(images/alpha_25_light.png)';
	else
		if (checkbox)
		{
			if (!checkbox.checked)
				row.style.backgroundImage = ''; 
		}
		else
			row.style.backgroundImage = '';
}

function rowSelect(row)
{
	var checkbox = row.getElementsByTagName('input')[0];
	if (checkbox && !checkbox.checked)
		checkbox.checked = !checkbox.checked;
	
	var rows = document.getElementsByTagName('tr');
	for(var i=0; i<rows.length; i++)
	{
		var col = rows[i].getElementsByTagName('td')[0];
		rows[i].style.backgroundImage = '';
		if (col)
			col.style.backgroundImage = '';
	}
	
	row.style.backgroundImage = 'url(images/alpha_25_light.png)';

}

function setCursor(cursor)
{
	document.body.style.cursor = cursor;
}

function toggleDisplay()
{
	var on = arguments[arguments.length - 1];
	
	if (arguments.length == 1)
		$(arguments[0]).style.display = ($(arguments[0]).style.display != 'none' ? 'none' : 'block' );
	else {
		for ( var i=0; i < (arguments.length - 1); i++ ) {
			if (on == true)
				$(arguments[i]).style.display = 'block';
			else if (on == false)
				$(arguments[i]).style.display = 'none';
			else
				$(arguments[i]).style.display = ($(arguments[i]).style.display != 'none' ? 'none' : 'block' );
		}
	}
}

function updateRetainedBountyRows(element, index)
{
	var ftRow = document.getElementById('table_final_table').getElementsByTagName('input');
	var prevIndex = clearDuplicateObj(element, index);	
}