function TrimTheString ( pszStringtoTrim )
{
    var bflag = true;
    var i = 0;
    if ( IsWhitespace ( pszStringtoTrim ) == true )
        return "";
    while ( ( i < pszStringtoTrim.length ) && ( bflag ) )
    {
        retChar = pszStringtoTrim.charAt ( i++ );
        if ( retChar != " " ) bflag = false;
    }
    if ( bflag ) return "";
    var j = pszStringtoTrim.length-1;
    bflag = true;
    while ( ( j >= 0 ) && ( bflag ) ) 
    {
        retChar = pszStringtoTrim.charAt ( j-- );
        if ( retChar != " " ) bflag = false;
    }
    if ( bflag ) return "";
    pszStringtoTrim = pszStringtoTrim.substring ( i-1 ,j+2 );
    return pszStringtoTrim;
}
function IsWhitespace ( pszStringtoCheck )
{
    var reWhitespace = /^\s+$/
    return ( IsEmpty ( pszStringtoCheck ) || reWhitespace.test ( pszStringtoCheck ) );
}

function IsEmpty ( pszStringtoCheck )
{
    return ( ( pszStringtoCheck == null ) || ( pszStringtoCheck.length == 0 ) )
}

function CheckNumericValue(strValue)
{ 
    var objRegExp  = /^\d*$/;
    return objRegExp.test(strValue);
}

function ValidateEmail ( pszFieldObj )
{
    var reEmail = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/
    var szBadStrings = " ~`!#$%^&*()+=[{]}|\<>?,:';";
    var szCurrChar;

    szFieldValue = TrimTheString( eval ( pszFieldObj ).value );
    szFieldValue = szFieldValue.toLowerCase();
    for ( var i=0 ; i < szFieldValue.length ; i++)
    {
        j = i + 1;
        szCurrChar = szFieldValue.substring ( i , j );
        if ( szBadStrings.indexOf ( szCurrChar ) != -1 )
        {       
            return false;
        }
    }
    if ( reEmail.test ( szFieldValue ) == false )
    {
        return false;
    }
    return true;

}

function IsValidPhoneNo ( TheNumber)
{
    var valid = true
//Please add the character which should be allowed
    var GoodChars = "0123456789()-+ "
    var i = 0
    if (TrimTheString(TheNumber)=="") {
        // Return false if number is empty
        valid = false
    }
    for (i =0; i <= TheNumber.length -1; i++) {
        if (GoodChars.indexOf(TheNumber.charAt(i)) == -1) {
// Note: Remove the comments from the following line to see this
// for loop in action.
// alert(TheNumber.charAt(i) + " is no good.")
            valid = false
        } // End if statement
    } // End for loop
    return valid
}

function ValidateUrl(url)
{
  /*var ht = url.substring(0,7);
  if(ht!="http://")
      url = "http://"+url;*/
  //var regexp = /^((http|https|ftp):\/\/)?(((www\.)?[^ ]+\.[com|org|net|edu|gov|us])|([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+))([^ ]+)?$/;
  var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
  return regexp.test(url);
}

function IsValidGujcetMark ( TheNumber)
{
    var valid = true
//Please add the character which should be allowed
    var GoodChars = "0123456789."
    var i = 0
    if (TrimTheString(TheNumber)=="") {
        // Return false if number is empty
        valid = false
    }
    for (i =0; i <= TheNumber.length -1; i++) {
        if (GoodChars.indexOf(TheNumber.charAt(i)) == -1) {
// Note: Remove the comments from the following line to see this
// for loop in action.
// alert(TheNumber.charAt(i) + " is no good.")
            valid = false
        } // End if statement
    } // End for loop
    return valid
}

function IsValidSMS(msg)
{
    var valid = true
    var char_array = "";
    //Please add the character which should be allowed
    var BadChars = "`~#$%&|"
    var i = 0
    if (TrimTheString(msg)=="")
    {
        // Return false if number is empty
        valid = true
    }
    
    for (i =0; i <= msg.length -1; i++)
    {
        if (BadChars.indexOf(msg.charAt(i)) != -1)
        {
            // Note: Remove the comments from the following line to see this
            // for loop in action.
            char_array = char_array + "The Character " + msg.charAt(i) + " is not allowed \n";
            valid = false
        }// End if statement        
    } // End for loop
    
    if(char_array != "")
    {
        alert(char_array);
    }
    
    return valid
}