Fixed: FS#2607 - DNS Form IPv6 issues
- Extended the tform ISIP check and added the options 'allowempty' and 'separator'
| | |
| | | } |
| | | break; |
| | | case 'ISIP': |
| | | if($validator['allowempty'] != 'y') $validator['allowempty'] = 'n'; |
| | | if($validator['allowempty'] == 'y' && $field_value == '') { |
| | | //* Do nothing |
| | | } else { |
| | | //* Check if its a IPv4 or IPv6 address |
| | | if(isset($validator['separator']) && $validator['separator'] != '') { |
| | | //* When the field may contain several IP addresses, split them by the char defined as separator |
| | | $field_value_array = explode($validator['separator'],$field_value); |
| | | } else { |
| | | $field_value_array[] = $field_value; |
| | | } |
| | | foreach($field_value_array as $field_value) { |
| | | if(function_exists('filter_var')) { |
| | | if(!filter_var($field_value,FILTER_VALIDATE_IP)) { |
| | | $errmsg = $validator['errmsg']; |
| | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | case 'RANGE': |
| | | //* Checks if the value is within the given range or above / below a value |
| | |
| | | 'xfer' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^[0-9\.\,]{0,255}$/', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISIP', |
| | | 'allowempty' => 'y', |
| | | 'separator' => ',', |
| | | 'errmsg'=> 'xfer_error_regex'), |
| | | ), |
| | | 'default' => '', |
| | |
| | | 'also_notify' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'REGEX', |
| | | 'regex' => '/^(((25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})\.){3}(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(;){0,1}(\ ){0,1}){0,10}$/', |
| | | 'validators' => array ( 0 => array ( 'type' => 'ISIP', |
| | | 'allowempty' => 'y', |
| | | 'separator' => ',', |
| | | 'errmsg'=> 'also_notify_error_regex' |
| | | ), |
| | | // 0 => array ( 'type' => 'ISIPV4', |
| | | // 'errmsg'=> 'also_notify_error_regex' |
| | | // ), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | |
| | | $wb["mbox_error_empty"] = 'Email is empty.'; |
| | | $wb["mbox_error_regex"] = 'Email format invalid.'; |
| | | $wb["also_notify_txt"] = 'Also Notify'; |
| | | $wb['also_notify_error_regex'] = 'Please use an IP address.'; |
| | | $wb['also_notify_error_regex'] = 'Also notify: Please use an IP address.'; |
| | | $wb['xfer_error_regex'] = 'Also notify: Please use an IP address.'; |
| | | $wb["update_acl_txt"] = 'Update ACL'; |
| | | $wb['seconds_txt'] = 'Seconds'; |
| | | $wb['eg_domain_tld'] = 'e.g. domain.tld'; |