mirror of
https://github.com/silverstripe/silverstripe-spamprotection.git
synced 2024-10-22 14:05:59 +02:00
Provide possibility of meaningful error messages when using UserForms
This commit is contained in:
parent
947d0f09e0
commit
74af26deb8
@ -112,9 +112,18 @@ if (class_exists('EditableFormField')) {
|
||||
|
||||
public function validateField($data, $form)
|
||||
{
|
||||
$formField = $this->getFormField();
|
||||
// In case you dont have this function in your php - primitive version
|
||||
if (!function_exists("array_column")) {
|
||||
function array_column($array, $column_name) {
|
||||
return array_map(function ($element) use ($column_name) {
|
||||
return $element[$column_name];
|
||||
}, $array);
|
||||
}
|
||||
}
|
||||
if (!$formField->validate($form->getValidator())) {
|
||||
$form->addErrorMessage($this->Name, $this->getErrorMessage()->HTML(), 'error', false);
|
||||
$errorArray = $form->getValidator()->getErrors();
|
||||
$errorText = $errorArray[array_search($this->Name, array_column($errorArray, 'fieldName'))]['message'];
|
||||
$form->addErrorMessage($this->Name, $errorText, 'error', false);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user