//' js-deprecated.js (Core)
//' Version 1.0
//'------------------------------------------------------------------------------------------
//' Copyright Surfocracy Ltd, 2010, Contact: info@surfocracy.com
//'------------------------------------------------------------------------------------------
//' Description: Core JavaScript routines containing deprecated JS functions. Add for the
//' time being until full migration takes place.
//'------------------------------------------------------------------------------------------

//'------------------------------------------------------------------------------------------
// This function checks if a string is a number. No form parameter exists.
//'------------------------------------------------------------------------------------------
function IsNumberString (val, DisplayErrorText) {
   //No Form parameter
   var RefString="1234567890.()-+ ";	
   for (Count=0; Count < val.length; Count++) {
       TempChar= val.substring (Count, Count+1);
       if (RefString.indexOf (TempChar, 0)==-1) {
	      if (DisplayErrorText) alert(ErrEnterValidNumber);
          return (false);
	   }
   }
   return (true);
}  

//'------------------------------------------------------------------------------------------
// This function validates a string to check if it is in an email format.
//'------------------------------------------------------------------------------------------
function emailCheck (myForm, val, DisplayErrorText) {
var emailStr=val;
var emailPat=/^(.+)@(.+)$/
var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"
var validChars="\[^\\s" + specialChars + "\]"
var quotedUser="(\"[^\"]*\")"
var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/
var atom=validChars + '+'
var word="(" + atom + "|" + quotedUser + ")"
var userPat=new RegExp("^" + word + "(\\." + word + ")*$")
var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")
var matchArray=emailStr.match(emailPat)

   if (emailStr!="") {
      if (matchArray==null) {
	        if (DisplayErrorText) alert(ErrIncorrectEmailAddress)
	        return false
      }
      var user=matchArray[1]
      var domain=matchArray[2]
      if (user.match(userPat)==null) {
         if (DisplayErrorText) alert(ErrIncorrectEmailUsername)
         return false
      }
	  var IPArray=domain.match(ipDomainPat)
      if (IPArray!=null) {
	     for (var i=1;i<=4;i++) {
	        if (IPArray[i]>255) {
	           if (DisplayErrorText) alert(ErrIncorrectEmailIP)
		       return false
            }
         }
         return true
      }
      var domainArray=domain.match(domainPat)
      if (domainArray==null) {
         if (DisplayErrorText) alert(ErrIncorrectEmailDomain)
         return false
      }
      var atomPat=new RegExp(atom,"g")
      var domArr=domain.match(atomPat)
      var len=domArr.length
      if (domArr[domArr.length-1].length<2 || 
          domArr[domArr.length-1].length>4) {
          if (DisplayErrorText) alert(ErrIncorrectEmailExt)
          return false
      }
      if (len<2) {
         if (DisplayErrorText) alert(ErrMissingEmailHost)
         return false
      }
   }
   return true;
}      

