diff --git a/interface/lib/classes/validate_server.inc.php b/interface/lib/classes/validate_server.inc.php new file mode 100644 index 0000000000000000000000000000000000000000..9a8dfcc2782a8e55a1a6a17bc57eb46ebcaf141a --- /dev/null +++ b/interface/lib/classes/validate_server.inc.php @@ -0,0 +1,61 @@ +tform->wordbook[$errmsg])) { + return $app->tform->wordbook[$errmsg]."
\r\n"; + } else { + return $errmsg."
\r\n"; + } + } + + /** + * Validator function for server-ip + */ + function check_server_ip($field_name, $field_value, $validator) { + if($_POST['ip_type'] == 'IPv41') { + if(!filter_var($field_value, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4)) { + return $this->get_error($validator['errmsg']); + } + } elseif ($_POST['ip_type'] == 'IPv61') { + if(!filter_var($field_value, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)) { + return $this->get_error($validator['errmsg']); + } + } else return $this->get_error($validator['errmsg']); + } + +} + diff --git a/interface/web/admin/form/server_ip.tform.php b/interface/web/admin/form/server_ip.tform.php index 0dbdfe190d12c81540e31a24cdb31fdd2ef4c594..49a59de1623dedb83af3a5a041191bbc8c13dc65 100644 --- a/interface/web/admin/form/server_ip.tform.php +++ b/interface/web/admin/form/server_ip.tform.php @@ -121,7 +121,7 @@ $form["tabs"]['server_ip'] = array ( 'ip_address' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'TEXT', - 'validators' => array ( 0 => array ( 'type' => 'ISIP', + 'validators' => array ( 0 => array ( 'type' => 'CUSTOME', 'class' => 'validate_server', 'function' => 'check_server_ip', 'errmsg'=> 'ip_error_wrong'), 1 => array ( 'type' => 'UNIQUE', 'errmsg'=> 'ip_error_unique'),