/* -------------------------------------------------------------------------------------------- */

function stripCharsNotInBag (s, bag)

{   var i;
    var returnString = "";

    // Search through string's characters one by one.
    // If character is in bag, append to returnString.

    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) != -1) returnString += c;
    }

    return returnString;
}


function isInteger (s)

{   var i;
	
    if (isEmpty(s)) 
       if (isInteger.arguments.length == 1) return default_EmptyOK;
       else return (isInteger.arguments[1] == true);

    // Search through string's characters one by one
    // until we find a non-numeric character.
    // When we do, return false; if we don't, return true.
		
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (!isDigit(c)) 
			return false;
    }

    // All characters are numbers.
    return true;
}

function reformatString(targetString)
  { 
  var arg;
  var sPos = 0;
  var resultString = "";

  for (var i=1; i<reformatString.arguments.length; i++)
    {
    arg = reformatString.arguments[i];
    if (i%2 == 1) 
      {
      resultString += arg;
      }
    else
      {
      resultString += targetString.substring(sPos, sPos + arg);
      sPos += arg;
      }
    }
  return resultString;
  }

function IsRecsPerPageInteger(s)
{
	if (isInteger(s) == false)
		{
			alert("Please enter a number.");
			return false;
		}

	if (s == "")
		{
			alert("Blanks not allowed. Please enter a number greater than zero.")
			return false;
		}
		
	if (s==0)
		{
			alert("Please enter a number greater than zero.")
			return false;
		}
		
	return true;
}

function onlyNumbers(i)
{
var nNumberToCheck = stripCharsNotInBag(i.value, "0123456789") + "";
if (nNumberToCheck.length==0) {
	nNumberToCheck="0";
}
i.value = nNumberToCheck;
}


function checkFloat(i, idecimal)
{
var sNumberToCheck = i.value;
var iDecimalLoc = sNumberToCheck.indexOf(".");
if (iDecimalLoc == -1){
	var sFirstPart = sNumberToCheck;
	var sLastPart = "";
}
else
{
	var sFirstPart = sNumberToCheck.substr(0,iDecimalLoc);
	var sLastPart = sNumberToCheck.substr(iDecimalLoc + 1, sNumberToCheck.length);
}
sFirstPart = stripCharsNotInBag(sFirstPart, "0123456789") + "";
sLastPart = stripCharsNotInBag(sLastPart, "0123456789") + "";
if (sLastPart.length > idecimal){
	sLastPart = sLastPart.substring(0,idecimal);
}
if (sLastPart.length < idecimal){
	var loopcount = (idecimal-sLastPart.length);
    for (var icnt = 0; icnt < loopcount; icnt++) {
		sLastPart = sLastPart + "0";
       }
}
i.value = sFirstPart + "." + sLastPart;
}

// Returns true if string s is empty

function isEmpty(s)
  {
  return ((s == null) || (s.length == 0));
  }

function checkPhone (psPhone) {
	var sDateDelimiter = "/"
	var bReturn = false;
	var pbEmptyOK = true;

	var sDateDelimiter = "/"
	var bReturn = false;
    if ((pbEmptyOK == true) && (isEmpty(psPhone.value))) 
	 {
		return true;
         }
    else {
	bReturn = psPhone.value;
	bReturn = stripCharsNotInBag (bReturn , "01234567898");
	bReturn = bReturn.substring(0,10);
	if (bReturn.length < 10 )
	   {	
		alert ("Phone number should be 10 numbers in length in the format (###) ###-####.");
		psPhone.focus();
		psPhone.select();
		return false;
	   }
	else
	   {
	   bReturn = reformatString(bReturn, "(", 3, ") ", 3, "-", 4);
 	   }
	}
	psPhone.value = bReturn;
}

function CheckEmail(sEmailAddr)
{
 var bResult = true;
 if (sEmailAddr.value != ""){
 if (sEmailAddr.value.indexOf("@") < 1 || sEmailAddr.value.indexOf(".") < 1)
  {
  alert("This E-Mail address seems wrong.  Please check the prefix, the '@' sign and DOT.");
  sEmailAddr.focus();
  sEmailAddr.select();
  bResult = false;
  }
  }
  return bResult;
}

/* --------------------------------------------------------------------- */
function allowOnly(psAllowList){
if ((psAllowList.indexOf(String.fromCharCode(window.event.keyCode)) != -1) || window.event.keyCode==13){
} else {
 window.event.keyCode=0;
}
}



