function replace(str,target,repl,mode)
{
var comm = "g";
 if ( replace.arguments.length == 3)  
                                   comm = "gi"  
  else if (replace.arguments.length > 3)
                    if ( mode != -1 )                
                                comm = "gi"  
 var tmp = str
 var re  = new RegExp(target,comm); 
 tmp=tmp.replace(re,repl);
 return tmp; 
};

function roundOff(value, precision)
{
        value = "" + value //convert value to string
        precision = parseInt(precision);

        var whole = "" + Math.round(value * Math.pow(10, precision));

        var decPoint = whole.length - precision;

        if(decPoint != 0)
        {
                result = whole.substring(0, decPoint);
                result += ".";
                result += whole.substring(decPoint, whole.length);
        }
        else
        {
                result = whole;
        }
        return result;
}


function isphone(phoneNumber) {
   var alphavals = new RegExp("[a-z]","gi");
   var numericvals = new RegExp("[0-9]+" , "gi");
   var searchy = phoneNumber.search(alphavals); 
   var searchx = phoneNumber.search(numericvals);
   if ( searchx == -1 ||  phoneNumber.length < 7 || searchy > -1)  return false; 
   return true;
};

function checkfield(data)
{
if (rmspaces(data) == "") return false
else return true;
};

function checkfieldn(data,len)
{
if ( (rmspaces(data)).length < len) return false
else return true;
};

function rmspaces(x) {
var leftx = 0;
var rightx = x.length -1;
while ( x.charAt(leftx) == ' ') leftx++;
while ( x.charAt(rightx) == ' ') --rightx;
var q = x.substr(leftx,rightx-leftx + 1); 
if ( (leftx == x.length) && (rightx == -1) ) q ='';
return(q)
};

function isalpha(x)
{
 var flag = true;
 
 for (i = 0 ; i < x.length && flag; i++) 
   if ( parseFloat(x.charAt(i)) >= 0 ||  parseFloat(x.charAt(i)) <= "9" )   
                                                flag = false;
                                              
  return(flag); 

};

function y2k(number) { return (number < 1000) ? number + 1900 : number; }

function isdate (day,month,year)
{
// checks if date passed is valid
// will accept dates in following format:
// isDate(dd,mm,ccyy), or
// isDate(dd,mm) - which defaults to the current year, or
// isDate(dd) - which defaults to the current month and year.
// Note, if passed the month must be between 1 and 12, and the
// year in ccyy format.

    var today = new Date();
    year = ((!year) ? y2k(today.getYear()):year);
    month = ((!month) ? today.getMonth():month-1);
    if (!day) return false
    var test = new Date(year,month,day);
    if ((y2k(test.getYear()) == year)&&(month == test.getMonth())&&(day == test.getDate()))
        return true;
    else
        return false
}


function todate(fday,fmon,fyear , tday,tmon,tyear)
{
var fromdt;
var todt;

   fm = parseInt(fmon) - 1;
   tm = parseInt(tmon) - 1;
   var fromdt = new Date(fyear,fm,fday);
   var todt = new Date(tyear,tm,tday);
 
   if (todt < fromdt)
          return false;
       else
          return true;
}

function isnumeric(data)
 {
 var flag = ( (rmspaces(data)).length > 0);
 var isdot = 0;
  if (flag)
  {
        for (i=0;i<data.length && flag;i++)
    if ( data.charAt(i) > '9' || data.charAt(i) < '0')
       {
         if (data.charAt(i) != '.' || isdot > 0)
            {
              flag = false;
      }
           else
            {
         isdot = 1;
      }
       };
  }
 return flag
  }

function isemail(data){
var flag = false;
if (  (data.indexOf('@',0)  == -1) || (data.indexOf('\\',0)  != -1) || (data.indexOf('/',0)  != -1) ||!checkfield(data) || ( data.indexOf('.',0)  == -1 ) || ( data.indexOf('@')  == 0 ) || ( data.lastIndexOf('.') < data.lastIndexOf('@')  ) || ( data.lastIndexOf('.') == (data.length - 1)  ) ||        ( data.lastIndexOf('@')   !=   data.indexOf('@') ) || (data.indexOf(',',0)  != -1) ||  (data.indexOf(':',0)  != -1) || (data.indexOf(';',0)  != -1)  )return flag
else         {
             var temp = rmspaces(data);
             if (temp.indexOf(' ',0) != -1) flag = true;
             var d3 = temp.lastIndexOf('.') + 4;
             var d4 = temp.substring(0,d3);
             var e2 = temp.length  -  temp.lastIndexOf('.')  - 1 ;
             var i1 = temp.indexOf('@') ;
          if (  (temp.charAt(i1+1) == '.') || ( e2 > 3 )  ||  ( e2 < 2 )    ) flag = true;
          return !flag;
                   };
   };// End Of Function
   
   
function arecharacters(input)
{
  var ch;
  for(var i=0;i<input.length;i++)
  {
    ch=input.charAt(i);
    if(!((ch>='a' && ch<='z') || (ch>='A' && ch<='Z')) )
      return(false);  
  }
  return(true);
}


function isalphanum(data)
{
 
  var str = data.toLowerCase();
  var ch;
  var ischar = false;
  var isnum = false;
  
  for(var i=0;i<str.length;i++)
	  {
	      ch=str.charAt(i);
	      if (! (  (ch >='a' && ch<='z') || ( ch >= '0' && ch <= '9') ) )     return(false); 	      
	      if ( ch >='a' && ch<='z' ) ischar = true;
	      if ( ch >='0' && ch<='9' ) isnum = true;	      
    }; 
    
    return(ischar && isnum);

};
    
