⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 val.js

📁 Acorp firmware port for D-Link DSL-300T - root fs
💻 JS
字号:

function valDoValidateUserName(Name,Result)
{
   if(Name.match("^[0-9]") != null) { return("A name can not start with a number."); }
   if(Name.match("[^0-9a-zA-Z_-]") != null) { return("A name can only have alpha-numeric characters"); }
   else if(Name.length > 64) { return("A name must contain 0..64 characters"); }
   return null;
}

function valDoValidateName(Name,Result)
{
   if(Name.match("^[0-9]") != null) { return("A name can not start with a number."); }
   if(Name.match("[^0-9a-zA-Z_-]") != null) { return("A name can only have alpha-numeric characters"); }
   else if((Name.length == 0) || (Name.length > 32)) { return("A name must contain 1..32 characters"); }
   return null;
}

function valDoValidateInteger(Integer,Result)
{   
   if(Integer.match("^[0-9]+\$")) { return null;}
   return("An integer can only have digits");
}

//Aids 050803 validate subnet
function valDoValidateIpRange(Subnet, HostIp, Mask)
{
  var Hostadd = HostIp.match("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$");
  var Subadd = Subnet.match("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$");
  var Maskadd = Mask.match("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$");
  var digits, digits1, digits3;
  var i;
  var error=null;
  var count = 0;

  digits = Subadd[0].split(".");
  digits1 = Hostadd[0].split(".");
  digits3 = Maskadd[0].split(".");
  
  for(i=0; i < 4; i++)
  {
    if (Number(digits3[i]) == 255)
    {
	count = (count + 1); 
    }
  }  
  
  if ((count >= 1) && (Number(digits[0]) != Number(digits1[0])))
  {
	error="Invalid IP Subnet.";
  }

  if ((count >= 2) && (Number(digits[1]) != Number(digits1[1])))
  {
	error="Invalid IP Subnet.";
  }

  if ((count >= 3) && (Number(digits[2]) != Number(digits1[2])))
  {
	error="Invalid IP Subnet.";
  }

  if ((Number(digits[3]) == 0)||(Number(digits[3]) > 254)||(Number(digits[3])==Number(digits1[3])))
  {
	error="Invalid IP Subnet.";
  }

  return error;
}
//Aids 050803 validate subnet

function valDoValidateIp(Address)
{
  var address = Address.match("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$");
  var digits;
  var i;
  var error=null;

  if(address == null) { error="Invalid IP address"; }
  else
  {
    digits = address[0].split(".");
    if(!(Number(digits[0])==0 && Number(digits[1])==0 && Number(digits[2])==0 && Number(digits[3])==0)) //rick,050819, 0.0.0.0 is work
    for(i=0; i < 4; i++)
    {
      if((Number(digits[i]) > 255 ) || (Number(digits[i]) < 0 ) || (Number(digits[0]) > 223)|| (Number(digits[0]) < 1))
      { error="Invalid IP address"; break; }
    }
  }
  return error;
}

function valDoValidateNet(Address)
{
  var address = Address.match("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$");
  var digits;
  var error=null;

  if(address == null) { error="Invalid network ID"; return error; }
  if(address[0] == "255.255.255.255") { error="Invalid network ID"; return error; }
  digits = address[0].split(".");
  for(i=1; i <= 4; i++)
   if((Number(digits[i]) > 255 ) || (Number(digits[i]) < 0 ))
    { error="Invalid network ID"; break; }
   return error;
}

function valDoValidateMask(Mask)
{
  var mask = Mask.match("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$");
  var digits;
  var bMask = 0;
  var watch = false;
  var i;
  var error=null;

  if(mask == null) { error="Invalid network mask"; return error; }
  digits = mask[0].split(".");
  for(i=0; i < 4; i++)
  {
    if((Number(digits[i]) > 255 ) || (Number(digits[i]) < 0 ))
     { error="Invalid network mask"; return error; }
	bMask = (bMask << 8) | Number(digits[i]);
  }
  bMask = bMask & 0x0FFFFFFFF;
  for(i=0; i<32; i++)
  {
    if((watch==true) && ((bMask & 0x1)==0)) { error="Invalid network mask"; return error; }
	bMask = bMask >> 1;
	if((bMask & 0x01) == 1) watch=true;
  }
  return error;
}

function valDoValidateHostName(HostName)
{
   if (HostName.match("^[a-zA-Z]+") == null) return ("Host Name must start with a character");
   else if (HostName.match("^([a-zA-Z]+[a-zA-Z0-9_-]*)(\.*[a-zA-Z0-9])+$") == null) return ("Host Name does not have correct format");
   else if ((HostName.length == 0) || (HostName.length > 63)) { return("A host name must contain 1..63 characters"); }
   return null;
}

function valDoValidateGateway(Address)
{
  var address = Address.match("^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$");
  var digits;
  var i;
  var error;

  if(address == null) { error="Invalid Gateway IP address"; return error; }
  digits = address[0].split(".");
  for(i=0; i < 4; i++)
  {
    if((Number(digits[i]) > 255 ) || (Number(digits[i]) < 0 ) || (Number(digits[0]) > 223))
    { error="Invalid Gateway IP address"; return error; }
  }
   return true;
}

function valDoValidateMAC(Addr)
{
   if(Name.match("[^0-9a-fA-F_-]") != null) { return("A mac address can only have characters 0 to 9 and A to F octet separated by -"); }
   return null;
}


//Aids,050811 add MAC check using ":"{
function valDoValidateMAC3(Addr)
{
	if((Addr.match("^[0-9a-fA-F]{1,2}\:[0-9a-fA-F]{1,2}\:[0-9a-fA-F]{1,2}\:[0-9a-fA-F]{1,2}\:[[0-9a-fA-F]{1,2}\:[[0-9a-fA-F]{1,2}$")== null) || (Addr.length)!=17)
	{ 
		return("A mac address can only have characters 0 to 9 and A to F octet separated by -,EX: 00:11:22:33:AA:BB");
	}
   return null;
}
//Aids,050811 add MAC check using ":"}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -