//
// validateRequired()
// Cycles through all elements with a class of "reqField",
// and uses some basic validation.  If the element has an ID of "email"
// or "Email" it will test the value against a regular expression.
//
function validateRequired()
{

	var fields = document.getElementsByClassName("reqField");
	var error = "The following required fields are incomplete or contain errors.\n\n";
	var returnError = false;
	var emailFilter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

	if (fields.length != 0)
	{

		for (var i=0; i<fields.length; i++)
		{

			if (fields[i].value == null || fields[i].value.length == 0)
			{
				error += " - "+ camelCaseToString(fields[i].id)+" is empty\n";
				returnError = true;
			}
			else if (fields[i].id == "email" || fields[i].id == "Email")
			{

				if (!emailFilter.test(fields[i].value))
				{
					error += " - "+fields[i].id+" is invalid\n";
					returnError = true;
				}

			}


		}

	}

	error += "\n\nPlease correct these fields before continuing.";

	if (returnError == true)
	{
		alert(error);
		return false;
	}
	else
		return true;

}

//
// camelCaseToString(str)
// Takes 'CamelCase' and returns 'camel case'.
//
function camelCaseToString(str)
{
	var newStr;
	newStr = str.replace(/([A-Z])/g, " $1");

	return newStr.toLowerCase();
}

//
// JSTarget function by Roger Johansson, www.456bereastreet.com
//
var JSTarget = {
	init: function(att,val,warning) {
		if (document.getElementById && document.createElement && document.appendChild) {
			var strAtt = ((typeof att == 'undefined') || (att == null)) ? 'class' : att;
			var strVal = ((typeof val == 'undefined') || (val == null)) ? 'non-html' : val;
			var strWarning = ((typeof warning == 'undefined') || (warning == null)) ? ' (opens in a new window)' : warning;
			var oWarning;
			var arrLinks = document.getElementsByTagName('a');
			var oLink;
			var oRegExp = new RegExp("(^|\\s)" + strVal + "(\\s|$)");
			for (var i = 0; i < arrLinks.length; i++) {
				oLink = arrLinks[i];
				if ((strAtt == 'class') && (oRegExp.test(oLink.className)) || (oRegExp.test(oLink.getAttribute(strAtt)))) {
					oWarning = document.createElement("em");
					oWarning.appendChild(document.createTextNode(strWarning));
					oLink.appendChild(oWarning);
					oLink.onclick = JSTarget.openWin;
				}
			}
			oWarning = null;
		}
	},
	openWin: function(e) {
		var event = (!e) ? window.event : e;
		if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return true;
		else {
		    var oWin = window.open(this.getAttribute('href'), '_blank');
			if (oWin) {
				if (oWin.focus) oWin.focus();
				return false;
			}
			oWin = null;
			return true;
		}
	},
	/*
	addEvent function from http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html
	*/
	addEvent: function(obj, type, fn) {
		if (obj.addEventListener)
			obj.addEventListener(type, fn, false);
		else if (obj.attachEvent) {
			obj["e"+type+fn] = fn;
			obj[type+fn] = function() {obj["e"+type+fn]( window.event );}
			obj.attachEvent("on"+type, obj[type+fn]);
		}
	}
};
JSTarget.addEvent(window, 'load', function(){JSTarget.init("rel","external","");});

function popUp(obj)
{
	window.open(obj.getAttribute('href'),"Window","status = 1, height = 420, width = 420, resizable = 0");
	return false;
}