// JavaScript Document

function openExternalLink(Link, PopUpWidth, PopUpHeight)
{
	var confirmResult = confirm("Warning: The following link is external and not part of this site.\n " + Link + "\n\nAre you sure you want to open it in a new window?");

	if (confirmResult)
	{
		if (PopUpWidth == null)
			//PopUpWidth = 550;
			PopUpWidth = window.innerWidth;
			
		if (PopUpHeight == null)
			//PopUpHeight = 750;
			PopUpHeight = window.innerHeight;
		
		var newWindow = window.open(Link, "popup", "toolbar=1,scrollbars=1,location=1,statusbar=1,menubar=1,resizable=1,width=" + PopUpWidth + ",height=" + PopUpHeight); 
		
		if (window.focus) 
			newWindow.focus();
	}
	
	return false;	
}

function faqPopUp(uniqueName, popW, popH)
{
	//Assign default value if none is set
	var popW = (popW == null || popW == "") ? 500 : popW;
	var popH = (popH == null || popH == "") ? 200 : popH;
	//var popW = 500;
	//var popH = 200;
	var winleft = (screen.width - popW) / 2;
	var winUp = (screen.height - popH) / 2;
	var window_open = window.open('/faq/name/' + uniqueName, 'help', 'width='+popW+',height='+popH+',left='+winleft+',top='+winUp+',scrollbars=yes,toolbar=0,location=0,statusbar=0,menubar=0,resizable=1');
	window_open.open;
	window_open.focus();
}

function toggleLayersOnOff(allLayers, layerOn)
{
		for (key in allLayers){
			hideLayer(allLayers[key]);
		}
		
		showLayer(layerOn);
}

function toggleLayer(layerID)
{
	var layer = document.getElementById(layerID);
		
	if (layer == null)
		return;
		
	if (layer.style.visibility == "hidden")
	{
		layer.style.display = "inline";
		layer.style.visibility = "visible";
	}
	else
	{
		layer.style.display = "none";
		layer.style.visibility = "hidden";
	}
}

function showLayer(layerID)
{
	var layer = document.getElementById(layerID);
	
	if (layer == null)
		return;
		
	layer.style.display = "inline";
	layer.style.visibility = "visible";
}

function hideLayer(layerID)
{
	var layer = document.getElementById(layerID);
	
	if (layer == null)
		return;
		
	layer.style.display = "none";
	layer.style.visibility = "hidden";
}

function formClearVisibleItems (form) {

	for (var c = 0; c < form.elements.length; c++){
		if (form.elements[c].type == 'hidden'){
			;//Do Nothing
		
		} else if (form.elements[c].type == 'select' || form.elements[c].type == 'select-one'){
			form.elements[c].selectedIndex = 0;
	
		} else if (form.elements[c].type == 'text'){
			form.elements[c].value = "";
		}
		//alert(form.elements[c].type);
	}
}

function formClearItem (formName, itemName, isAnArray) {
	var key, formItem;
	
	if (isAnArray == true){
		for (key in itemName){
			formClearItem(formName, itemName[key]);
		}
		
	} else {
		
		//formItem = document.eval(formName).eval(itemName);
		
		//Long code version of eval() needed to fix ie not processing eval properly
		formItem = "document."+eval("formName")+"."+eval("itemName");
		
		formItem = eval(formItem);
		
		if (formItem.type == 'select-one'){
			formItem.selectedIndex = 0;
	
		} else if (formItem.type == 'text' || formItem.type == 'hidden'){
			formItem.value = "";
		}
	}
}

//http://www.hunlock.com/blogs/Ten_Javascript_Tools_Everyone_Should_Have
function isArray(testObject) {
	return testObject && !(testObject.propertyIsEnumerable('length')) && typeof testObject === 'object' && typeof testObject.length === 'number';
}