Use splat operator in signature, not func_get_args
[lhc/web/wiklou.git] / includes / htmlform / HTMLForm.php
index a7cef3c..b16801a 100644 (file)
@@ -23,7 +23,7 @@
 
 /**
  * Object handling generic submission, CSRF protection, layout and
- * other logic for UI forms. in a reusable manner.
+ * other logic for UI forms in a reusable manner.
  *
  * In order to generate the form, the HTMLForm object takes an array
  * structure detailing the form fields available. Each element of the
@@ -242,6 +242,10 @@ class HTMLForm extends ContextSource {
 
        protected $mUseMultipart = false;
        protected $mHiddenFields = [];
+       /**
+        * @var array[]
+        * @phan-var array<array{name:string,value:string,label-message?:string,label?:string,label-raw?:string,id?:string,attribs?:array,flags?:string|string[],framed?:bool}>
+        */
        protected $mButtons = [];
 
        protected $mWrapperLegend = false;
@@ -293,13 +297,10 @@ class HTMLForm extends ContextSource {
         * Construct a HTMLForm object for given display type. May return a HTMLForm subclass.
         *
         * @param string $displayFormat
-        * @param mixed $arguments,... Additional arguments to pass to the constructor.
+        * @param mixed ...$arguments Additional arguments to pass to the constructor.
         * @return HTMLForm
         */
-       public static function factory( $displayFormat/*, $arguments...*/ ) {
-               $arguments = func_get_args();
-               array_shift( $arguments );
-
+       public static function factory( $displayFormat, ...$arguments ) {
                switch ( $displayFormat ) {
                        case 'vform':
                                return new VFormHTMLForm( ...$arguments );
@@ -982,6 +983,9 @@ class HTMLForm extends ContextSource {
         *  - attribs: (array, optional) Additional HTML attributes.
         *  - flags: (string|string[], optional) OOUI flags.
         *  - framed: (boolean=true, optional) OOUI framed attribute.
+        * @codingStandardsIgnoreStart
+        * @phan-param array{name:string,value:string,label-message?:string,label?:string,label-raw?:string,id?:string,attribs?:array,flags?:string|string[],framed?:bool} $data
+        * @codingStandardsIgnoreEnd
         * @return HTMLForm $this for chaining calls (since 1.20)
         */
        public function addButton( $data ) {
@@ -1321,7 +1325,7 @@ class HTMLForm extends ContextSource {
                }
 
                return $elementstr
-                       ? Html::rawElement( 'div', [ 'class' => $elementsType ], $elementstr )
+                       ? Html::rawElement( 'div', [ 'class' => $elementsType . 'box' ], $elementstr )
                        : '';
        }