// <!--

var newWin = null;

function forceReload()
{
	if (document.layers) window.location.reload(true);
}

function empty(str)
{
	return (str == "") ? true : false;
}

function stripWhitespace(text)
{
	return text.replace(/ /g, "");
}

function validateArg(arg)
{
	if ((arg == null) || (arg == "undefined") || (empty(arg)) || (arg.length < 1)) return false;
	else return true;
}

function validateInt(arg, allowZero)
{
	for (var i = 0; i < arg.length; i++) {
		if (isNaN(arg.charAt(i)) || arg.charAt(i) == " ")
			return false;
	}
	if (!allowZero && (arg == 0)) return false;
	return true;
}

function validateEmailAddress(email)
{
	var invalidChars = '!#$%^*()+{}[]|/:;"\'\\><?,';
	var email = stripWhitespace(email);
	var at = email.indexOf("@");
	var dot = email.lastIndexOf(".");
	
	if (email.length < 1) {
		return false;
	}
	else if (at < 1 || dot < 3 || dot == email.length -1 || (dot - at) < 2) {
		return false;
	}
	else {
		for (var i = 0; i < email.length; i++) {
			if (invalidChars.indexOf(email.charAt(i)) != -1) {
				return false;
			}
		}
	}
	return true;
}

function getQueryString(obj) // get query string from header
{
	var args = new Object();
	var qString = obj.location.search.substring(1);
	var argsArray = qString.split("&");

	for (var i = 0; i < argsArray.length; i++) {
		var pos = argsArray[i].indexOf('=');
		if (pos == -1) continue;
		var argName = argsArray[i].substring(0, pos);
	 	var value = argsArray[i].substring(pos + 1);
		args[argName] = unescape(value);
	}
	return args;
}

function Preload() // preload script
{ 
	this.length = arguments.length;
	for (var i = 0; i < this.length; i++) {
		this[i + 1] = new Image();
		this[i + 1].src = arguments[i];
	}
}

function recurseLayers(obj, name)
{
	var layerObj = null;
	
	for (var i = 0; i < obj.layers.length; i++)
	{
		layerObj = obj.layers[i].document.layers;
		
		for (var j = 0; j < layerObj.length; j++)
		{
			if (layerObj[j].name == name)
			{
				return layerObj[j];
				break;
			}
		}
		recurseLayers(obj.layers[i], name);
	} 
}

function parseLayers(obj, name, type)
{
	var typeObj = null;
	for (var i = 0; i < obj.layers.length; i++)
	{
		if (type == 'images') typeObj = obj.layers[i].document.images;
		else if (type == 'anchors') typeObj = obj.layers[i].document.anchors;
		
		for (var j = 0; j < typeObj.length; j++)
		{
			if (typeObj[j].name == name) {
				return typeObj[j];
				break;
			}
		}
		parseLayers(obj.layers[i], name, type);
	}
}

function swapImg(imgName, imgPath, msg) // rollover script
{
	if (document.images) {
		if ((document.layers) && (!validateArg(document.images[imgName]))) {
			var obj = parseLayers(document, imgName, 'images');
			obj.src = imgPath;
		}
		else {
			if (document.images[imgName]) {
				document.images[imgName].src = imgPath;
			}
		}
		window.status = msg;
	}
}

function openAWindow(URL, windowName, windowWidth, windowHeight, scrollbars)
{
	var xposition = 400; 
	var yposition = 300;
	
    if ((parseInt(navigator.appVersion) >= 4 )) {
        xposition = (screen.width - windowWidth) / 2;
        yposition = (screen.height - windowHeight) / 2;
    }
	
	if (!scrollbars) var scrollbars = 0;
	
    var args = "width=" + windowWidth + ","
	    	+ "height=" + windowHeight + ","
	    	+ "location=0,"
		    + "menubar=0,"
		    + "scrollbars=" + scrollbars + ","
		    + "status=0,"
		    + "titlebar=0,"
		    + "hotkeys=0,"
		    + "screenx=" + xposition + ","  // NN Only
		    + "screeny=" + yposition + ","  // NN Only
		    + "left=" + xposition + ","     // IE Only
		    + "top=" + yposition;           // IE Only
		
	if (newWin != null && !newWin.closed) {
		newWin.close();
	}
	newWin = window.open(URL, windowName, args);
	
	newWin.focus();
}

 // -->