function isInteger (s)
   {
      var i;
      if (isEmpty(s))
      if (isInteger.arguments.length == 1) return 0;
      else return (isInteger.arguments[1] == true);
      for (i = 0; i < s.length; i++)
      {
         var c = s.charAt(i);
         if (!isDigit(c)) return false;
      }
      return true;
   }
function IsNumeric(sText)
{
   var ValidChars = "0123456789.-";
   var IsNumber=true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;   
}
function isEmpty(s)
   {
      return ((s == null) || (s.length == 0))
   }
function isDigit (c)
   {
      return ((c >= "0") && (c <= "9"))
   }
function isBlank(val){
	if(val==null){return true;}
	for(var i=0;i<val.length;i++) {
		if ((val.charAt(i)!=' ')&&(val.charAt(i)!="\t")&&(val.charAt(i)!="\n")&&(val.charAt(i)!="\r")){return false;}
		}
	return true;
	}
// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isPhoneInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) 
		return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not 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 checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isPhoneInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function ValidatePhone(phoneNum){
	var Phone=phoneNum
	if ((Phone ==null)||(Phone ==""))
	{
		return false;
	}
	if (checkInternationalPhone(Phone)==false)
	{
		return false;
	}
	return true
 }
 function checkEmail(str) 
 {
		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    return false;
		 }

 		 return true;					
	}
function checkUsername (strng) {
 if ((strng.length < 6) || (strng.length > 15)) {
    alert('Your username must be between 6 and 15 characters.\n');
	return false;
}
var illegalChars = /\W/;
  // allow only letters, numbers, and underscores
    if (illegalChars.test(strng)) {
       alert('Invalid characters. The username can only contain letters, numbers and underscores.\n');
	   return false;
    }
return true;	
}
function checkPassword (strng) {
    var illegalChars = /[\W_]/; // allow only letters and numbers
    if ((strng.length < 8) || (strng.length > 15)) {
       alert('The password must be between 8 and 15 characters.\n');
	   return false;
    }
    if (illegalChars.test(strng)) {
      alert('The password can only contain letters and numbers.\n');
	  return false;
    }
	var x = 0;

	for (var y = 0; y < strng.length; y++)
      {
		  
         var p = strng.charAt(y);

         if (isDigit(p)) 
		 {
		 	x++;
		 }

      }
	  if(x <= 1)
		{
		alert('The password must contain at least 2 numbers. \n');
		return false;
		}

var nonums = /^[0-9]*$/;
if (nonums.test(strng)) {
     alert('Password must contain at least one letter.');
     return false;
}

	return true;
}
function validateLogIn(form)
{
	if (isBlank(form.Username.value))
	{
		alert('Username is a required field to login.');
		form.Username.focus();
		return false;
	}
	if (isBlank(form.Password.value))
	{
		alert('Password is a required field to login.');
		form.Password.focus();
		return false;
	}
}