X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=blobdiff_plain;f=includes%2Fhtmlform%2FHTMLForm.php;h=78e7625915ba7b877a1192e1eed0f2b948c09141;hp=296c4b3bb935ba7cc7029cc1b782bd9f75504d1f;hb=ee56f00ddf0609082f8ae9a4dc3e6e1b6f54ddfd;hpb=64a38b3b854607498ea49342b68e9c44a0ea1390 diff --git a/includes/htmlform/HTMLForm.php b/includes/htmlform/HTMLForm.php index 296c4b3bb9..78e7625915 100644 --- a/includes/htmlform/HTMLForm.php +++ b/includes/htmlform/HTMLForm.php @@ -21,6 +21,8 @@ * @file */ +use Wikimedia\ObjectFactory; + /** * Object handling generic submission, CSRF protection, layout and * other logic for UI forms. in a reusable manner. @@ -128,44 +130,44 @@ class HTMLForm extends ContextSource { // A mapping of 'type' inputs onto standard HTMLFormField subclasses public static $typeMappings = [ - 'api' => 'HTMLApiField', - 'text' => 'HTMLTextField', - 'textwithbutton' => 'HTMLTextFieldWithButton', - 'textarea' => 'HTMLTextAreaField', - 'select' => 'HTMLSelectField', - 'combobox' => 'HTMLComboboxField', - 'radio' => 'HTMLRadioField', - 'multiselect' => 'HTMLMultiSelectField', - 'limitselect' => 'HTMLSelectLimitField', - 'check' => 'HTMLCheckField', - 'toggle' => 'HTMLCheckField', - 'int' => 'HTMLIntField', - 'float' => 'HTMLFloatField', - 'info' => 'HTMLInfoField', - 'selectorother' => 'HTMLSelectOrOtherField', - 'selectandother' => 'HTMLSelectAndOtherField', - 'namespaceselect' => 'HTMLSelectNamespace', - 'namespaceselectwithbutton' => 'HTMLSelectNamespaceWithButton', - 'tagfilter' => 'HTMLTagFilter', - 'sizefilter' => 'HTMLSizeFilterField', - 'submit' => 'HTMLSubmitField', - 'hidden' => 'HTMLHiddenField', - 'edittools' => 'HTMLEditTools', - 'checkmatrix' => 'HTMLCheckMatrix', - 'cloner' => 'HTMLFormFieldCloner', - 'autocompleteselect' => 'HTMLAutoCompleteSelectField', - 'date' => 'HTMLDateTimeField', - 'time' => 'HTMLDateTimeField', - 'datetime' => 'HTMLDateTimeField', + 'api' => HTMLApiField::class, + 'text' => HTMLTextField::class, + 'textwithbutton' => HTMLTextFieldWithButton::class, + 'textarea' => HTMLTextAreaField::class, + 'select' => HTMLSelectField::class, + 'combobox' => HTMLComboboxField::class, + 'radio' => HTMLRadioField::class, + 'multiselect' => HTMLMultiSelectField::class, + 'limitselect' => HTMLSelectLimitField::class, + 'check' => HTMLCheckField::class, + 'toggle' => HTMLCheckField::class, + 'int' => HTMLIntField::class, + 'float' => HTMLFloatField::class, + 'info' => HTMLInfoField::class, + 'selectorother' => HTMLSelectOrOtherField::class, + 'selectandother' => HTMLSelectAndOtherField::class, + 'namespaceselect' => HTMLSelectNamespace::class, + 'namespaceselectwithbutton' => HTMLSelectNamespaceWithButton::class, + 'tagfilter' => HTMLTagFilter::class, + 'sizefilter' => HTMLSizeFilterField::class, + 'submit' => HTMLSubmitField::class, + 'hidden' => HTMLHiddenField::class, + 'edittools' => HTMLEditTools::class, + 'checkmatrix' => HTMLCheckMatrix::class, + 'cloner' => HTMLFormFieldCloner::class, + 'autocompleteselect' => HTMLAutoCompleteSelectField::class, + 'date' => HTMLDateTimeField::class, + 'time' => HTMLDateTimeField::class, + 'datetime' => HTMLDateTimeField::class, // HTMLTextField will output the correct type="" attribute automagically. // There are about four zillion other HTML5 input types, like range, but // we don't use those at the moment, so no point in adding all of them. - 'email' => 'HTMLTextField', - 'password' => 'HTMLTextField', - 'url' => 'HTMLTextField', - 'title' => 'HTMLTitleTextField', - 'user' => 'HTMLUserTextField', - 'usersmultiselect' => 'HTMLUsersMultiselectField', + 'email' => HTMLTextField::class, + 'password' => HTMLTextField::class, + 'url' => HTMLTextField::class, + 'title' => HTMLTitleTextField::class, + 'user' => HTMLUserTextField::class, + 'usersmultiselect' => HTMLUsersMultiselectField::class, ]; public $mFieldData;