Index: trunk/core/kernel/db/dbitem.php =================================================================== diff -u -N -r8849 -r8872 --- trunk/core/kernel/db/dbitem.php (.../dbitem.php) (revision 8849) +++ trunk/core/kernel/db/dbitem.php (.../dbitem.php) (revision 8872) @@ -447,19 +447,14 @@ $this->UpdateFormattersMasterFields(); //order is critical - should be called BEFORE checking errors $global_res = true; foreach ($this->Fields as $field => $params) { - $res = true; + $error_field = isset($params['error_field']) ? $params['error_field'] : $field; + $res = !isset($this->FieldErrors[$error_field]['pseudo']) || !$this->FieldErrors[$error_field]['pseudo']; $res = $res && $this->ValidateType($field, $params); $res = $res && $this->ValidateRange($field, $params); $res = $res && $this->ValidateUnique($field, $params); $res = $res && $this->ValidateRequired($field, $params); $res = $res && $this->CustomValidation($field, $params); - // If Formatter has set some error messages during values parsing - $error_field = isset($params['error_field']) ? $params['error_field'] : $field; - if (isset($this->FieldErrors[$error_field]['pseudo']) && $this->FieldErrors[$error_field] != '') { - $global_res = false; - } - $global_res = $global_res && $res; }