function stringToUppercase(inputString)
{
  return inputString.toUpperCase();
}

function TrimWhiteSpace(strText) {
	while (strText.substring(0,1) == ' ')
		strText = strText.substring(1, strText.length);
	while (strText.substring(strText.length-1,strText.length) == ' ')
		strText = strText.substring(0, strText.length-1);
  return strText;
}

function isWhiteSpace(s) {
	var i;
	var whitespace = " \t\n\r";
    // Search through string's characters one by one
    // until we find a non-whitespace character.
    // When we do, return false; if we don't, return true.
	for (i = 0; i < s.length; i++)	{
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (whitespace.indexOf(c) == -1) return false;
    }
    // All characters are whitespace.
    return true;
}

function replaceCharacters(conversionString,inChar,outChar)
{
  var convertedString = conversionString.split(inChar);
  convertedString = convertedString.join(outChar);
  return convertedString;
}

function isNotaNumber (inputString)
{
  return isNaN(inputString);
}

function checkEmail(emailString)
{
	var filter=/^(\w+(?:\.\w+)*)@((?:\w+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	if (!filter.test(emailString)) {
		return false;
	} else {
		return true;
	}
}

function setStatusBar(msgStr) { self.status = msgStr; }

function show(object) {
    if (document.getElementById && document.getElementById(object) != null) {
         node = document.getElementById(object).style.visibility='visible';
		}
    if (document.layers && document.layers[object] != null) {
         document.layers[object].visibility = 'visible';
		}
    if (document.all) {
         document.all[object].style.visibility = 'visible';
		}	
}

function hide(object) {
	if (document.getElementById && document.getElementById(object) != null) {
         node = document.getElementById(object).style.visibility='hidden';
		}
    if (document.layers && document.layers[object] != null) {
        document.layers[object].visibility = 'hidden';
		}
    if (document.all) {
         document.all[object].style.visibility = 'hidden';
		}
}

function changeColor(object,colorString) {
    if (document.getElementById && document.getElementById(object) != null) {
         node = document.getElementById(object).style.color=colorString;
		}
    if (document.layers && document.layers[object] != null) {
         document.layers[object].color = colorString;
		}
    if (document.all) {
//         document.all[object].style.color = colorString;
		}	
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function submitTheForm() {
	var stopprocessing = "false";  //Variable to indicate whether validation proces should proceed.  Also, indicates whether form should be submitted.
	var flagColor = '#FF0000';  //Color of text beside form field if data is invalid.
	var normalColor = '#000000';  //Normal color of text beside form field.
	var testRequiredField;  //First 3 letters of field name - if equal to "REQ", field is required.
	var testFieldType;  //Characters in field name that indicate type of field - position 4, length 3 - "EML" for email address, "ZIP" for zip code.
	var labelFieldName;  //Name of Lable corresponding to form field.
	var alertMessage;  //Alert message to display.
	var tempvar;  //Temporary value.
	var firstFocus;  //Variable used for first focus when required fields do not validate.
//Set all label colors to normal
	for (m=0;m<document.forms[0].elements.length;m++) {
		if (document.forms[0].elements[m].name.substr(0, 3) == "REQ") {
			labelFieldName = 'Label_' + document.forms[0].elements[m].name;
//		alert(labelFieldName);
			changeColor(labelFieldName,normalColor);
		}
	}
//Prepare the Data
	for (i=0;i<document.forms[0].elements.length;i++) {
		if (document.forms[0].elements[i].type != "select-one") {
			document.forms[0].elements[i].value = TrimWhiteSpace(document.forms[0].elements[i].value);
		}
	}
//Determine if required fields have values
	for (j=0;j<document.forms[0].elements.length;j++) {
		testRequiredField = "";
		testRequiredField = document.forms[0].elements[j].name;
		testRequiredField = testRequiredField.substr(0, 3);
		if (testRequiredField == "REQ") {
			if (document.forms[0].elements[j].type != "select-one") {
				if (isWhiteSpace(document.forms[0].elements[j].value)) {
					if (stopprocessing == "false") {
						firstFocus = j;
					}
					labelFieldName = "Label_" + document.forms[0].elements[j].name;
					changeColor(labelFieldName,flagColor);
					stopprocessing = "true";
				}
			} else {
				if (document.forms[0].elements[j].options[document.forms[0].elements[j].selectedIndex].value == "-1") {
					if (stopprocessing == "false") {
						firstFocus = j;
					}
					tempvar = document.forms[0].elements[j].name;
					labelFieldName = "Label_" + tempvar;
					changeColor(labelFieldName,flagColor);
					stopprocessing = "true";
				}
			}
		}
	}
	if (stopprocessing == "true") {
		alertMessage = "Please enter the required information. Required items are indicated by *.";
		alert(alertMessage);
		document.forms[0].elements[firstFocus].focus();
	}
//If everything validates okay, submit the form.
	if (stopprocessing == "false") {
		document.forms[0].submit();
	}
}