//class	SAIDValidate
function SAIDValidate()
{
  //private method CalcSumOfString
  this.CalcSumOfString = function(ValueToSum)
  { 
    var lenghtOfString = ValueToSum.length;
    var sumOfString=0;
    for (var i = 0;i < lenghtOfString;i++)
    {
      sumOfString +=  parseInt(ValueToSum.substr(i,1));
    }
    return sumOfString;
  }

  //private method SAIDCheck
  this.SAIDCheck = function (IdNumber)
  {			
    var d1 = 0;
    var d2 = 0;
    var d3 = 0;
    var d4 = 0;
    var d5 = 0;
    var d6 = 0;
    var d7 = 0;
    var d8 = 0;
    var d9 = 0;
    var d10 = 0;
    var d11 = 0;
    var d12 = 0;
    var d13 = 0;
    var evsum = 0;
    var odsum = 0;
    var evnum1 = 0;
    var evnum2 = 0;
    var evnum3 = 0;
    var evnum4 = 0;
    var evnum5 = 0;
    var evnum6 = 0;
    var checkDigit = 0;
    if (IdNumber.length == 13 ) 
    {
      d1 = parseInt(IdNumber.substr(0,1),10);
      d2 = parseInt(IdNumber.substr(1,1),10);
      d3 = parseInt(IdNumber.substr(2,1),10);
      d4 = parseInt(IdNumber.substr(3,1),10);
      d5 = parseInt(IdNumber.substr(4,1),10);
      d6 = parseInt(IdNumber.substr(5,1),10);
      d7 = parseInt(IdNumber.substr(6,1),10);
      d8 = parseInt(IdNumber.substr(7,1),10);
      d9 = parseInt(IdNumber.substr(8,1),10);
      d10 = parseInt(IdNumber.substr(9,1),10);
      d11 = parseInt(IdNumber.substr(10,1),10);
      d12 = parseInt(IdNumber.substr(11,1),10);
      d13 = parseInt(IdNumber.substr(12,1),10);
      evnum1 = (d2 * 2);
      evnum2 = (d4 * 2);
      evnum3 = (d6 * 2);
      evnum4 = (d8 * 2);
      evnum5 = (d10 * 2);
      evnum6 = (d12 * 2);
      evsum = (this.CalcSumOfString(evnum1.toString())) + (this.CalcSumOfString(evnum2.toString()))+ (this.CalcSumOfString(evnum3.toString()))+ (this.CalcSumOfString(evnum4.toString()))+ (this.CalcSumOfString(evnum5.toString()))+ (this.CalcSumOfString(evnum6.toString()));				
      odsum = d1 + d3 + d5 + d7 + d9 + d11;
      if ( ((evsum + odsum) % 10) == 0 )
        checkDigit = 0;
      else					
        checkDigit = 10 - ((evsum + odsum) % 10);
      
      if (checkDigit != d13)					
        return false;
      else
        return true;
    }
    else
    {
      return false;
    }				
  }
}
