Array.prototype.contains = function (element) {
    for (var i = 0; i < this.length; i++) {
		if (this[i]==element || (element.constructor==String && this[i]==String(element)))
		{
			return true;
        }
    }        
	return false;
};


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)
{
	var optionals = GetOptionalFields(form);
	var errors = [];
	
	for (var i=0; i < form.length; i++)
	{
		if (form[i].value == "" && !optionals.contains(form[i].name))
		{
			errors.push(form[i].name + " cannot be blank.");
		}
	}
	
	if (errors.length)
	{
		alert(errors.join("\n"));
		return false
	}

	return true;
}

function GetOptionalFields(form)
{
	var fields = [];
	if (form["_optional"])
	{
		fields = form["_optional"].value.split(",");
	}
	return fields;
}



function toggle(e) {
	return toggleCss(e, "display", "none", "");
}

function toggleCss(e, p, v1, v2) {
	var d = $(e);	
	d.style[p] = (d.style[p] == v1) ? v2 : v1;
	return false;
}