var NUMERIC = "1234567890";
var ALPHA = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
var META = "!@#$%&*()_+=-:;,. ";
var ALPHANUMERIC = ALPHA + NUMERIC;	
var METANUMERIC = META + NUMERIC;
var METAALPHANUMERIC = META + ALPHA + NUMERIC;

//  JS Trim Functions... pulled from www.bigbold.com/snippets/posts/show/701
function LTrim(value)
{
  var re = /\s*((\S+\s*)*)/;
  return value.replace(re, "$1");
}
function RTrim(value)
{
  var re = /((\s*\S+)*)\s*/;
  return value.replace(re, "$1");
}
function Trim(value)
{
  return LTrim(RTrim(value));
}

function IsValid(strString, strValidChars)
{
  var strChar;
  var blnResult = true;  

  if (strString.length == 0)
    return false;
  for (i = 0; i < strString.length && blnResult == true; i++)
  {
    strChar = strString.charAt(i);
    if (strValidChars.indexOf(strChar) == -1)
    {
      blnResult = false;
    }
  }
  return blnResult;
}

function ToggleDisplay(elementID)
{
  var element = document.getElementById(elementID);
    
  if (element != null) 
    if ((element.style.visibility == null) || (element.style.visibility == ''))
	  element.style.visibility = 'visible';			
	else
	  element.style.visibility = (element.style.visibility == 'hidden' ? 'visible' : 'hidden');	  	
}

function displayMessage(message, clear)
{
  var messageContainer = document.getElementById('message');    
  
  messageContainer.innerHTML = message;
  
  if (clear)
  {
    // Fade Message to white... 
    setTimeout("fadeMessage('" + message + "', '#999999');", 1000); 
    setTimeout("fadeMessage('" + message + "', '#cccccc');", 1100);  
    setTimeout("fadeMessage('" + message + "', '#eeeeee');", 1200);
    setTimeout("fadeMessage('" + message + "', '#ffffff');", 1300);
    setTimeout("fadeMessage('<br />','#ffffff');", 1400);
  }
} 

function fadeMessage(message, color)
{    
  if ((message != null) || (message != ''))
    document.getElementById('message').innerHTML = '<font color="' + color + '">' + message + '</font>'; 
  else
	document.getElementById('message').innerHTML = '<br />'; 
}  			   
		  
//	RN:	Pulled from http://www.netlobo.com/url_query_string_javascript.html.	I changed the function name, I didn't like it.
function GetQSParam(name)
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}

function toggleSection(sectionName)
{
   var oSection = document.getElementById(sectionName);
   var oImg = document.getElementById(sectionName + '_img'); 
   
   if ((oSection != null) && (oImg != null))
   {  
      if ((oSection.style.display == null) || (oSection.style.display == '') || (oSection.style.display == 'block'))
	  {
	 	 oSection.style.display = 'none';
		 oImg.src = 'siteimages/expand_circle.gif';
		 oImg.title = 'Show Text';
	  }
	  else
	  {
	 	 oSection.style.display = 'block'; 
		 oImg.src = 'siteimages/collapse_circle.gif';
		 oImg.title = 'Hide Text';
	  }
   }
}

