FIX Handle falsy return value when setting form field value in setAuthenticatorClass()

This commit is contained in:
Robbie Averill 2018-11-05 14:16:28 +01:00
parent ebfab45e23
commit 7775f82584
1 changed files with 9 additions and 1 deletions

View File

@ -39,10 +39,18 @@ abstract class LoginForm extends Form
public function setAuthenticatorClass($class)
{
$this->authenticatorClass = $class;
$authenticatorField = $this->Fields()->dataFieldByName('AuthenticationMethod');
/** @var FieldList|null $fields */
$fields = $this->Fields();
if (!$fields) {
return $this;
}
$authenticatorField = $fields->dataFieldByName('AuthenticationMethod');
if ($authenticatorField) {
$authenticatorField->setValue($class);
}
return $this;
}