From 2e466b4de9ddecbca07c46b3afb0b925f6dbd332 Mon Sep 17 00:00:00 2001 From: Ad Schellevis Date: Thu, 28 May 2015 18:38:08 +0200 Subject: [PATCH] (mvc) add PortField to validate portnumbers --- .../OPNsense/Base/FieldTypes/PortField.php | 102 ++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php diff --git a/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php b/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php new file mode 100644 index 000000000..8f4863e7d --- /dev/null +++ b/src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php @@ -0,0 +1,102 @@ +internalValue = strtolower($value); + } + + /** + * @return array returns Text/regex validator + */ + public function getValidators() + { + + if ($this->internalValidationMessage == null) { + $msg = "please specify a valid portnumber (1-65535) or name (" . implode(",", self::$wellknownservices) . + ")" ; + } else { + $msg = $this->internalValidationMessage; + } + + if (($this->internalIsRequired == true || $this->internalValue != null) && + count(self::$internalOptionList) > 0) { + return array(new InclusionIn(array('message' => $msg,'domain'=>self::$internalOptionList))); + } else { + // empty field and not required, skip this validation. + return array(); + } + } +} +