Merge "mediawiki.inspect: add method for grepping loaded modules"
[lhc/web/wiklou.git] / includes / htmlform / HTMLTextField.php
index fe962f4..e584d88 100644 (file)
@@ -17,10 +17,6 @@ class HTMLTextField extends HTMLFormField {
                        $attribs['class'] = $this->mClass;
                }
 
-               if ( !empty( $this->mParams['disabled'] ) ) {
-                       $attribs['disabled'] = 'disabled';
-               }
-
                # @todo Enforce pattern, step, required, readonly on the server side as
                # well
                $allowedParams = array(
@@ -31,28 +27,22 @@ class HTMLTextField extends HTMLFormField {
                        'step',
                        'placeholder',
                        'list',
-                       'maxlength'
+                       'maxlength',
+                       'tabindex',
+                       'disabled',
+                       'required',
+                       'autofocus',
+                       'multiple',
+                       'readonly'
                );
-               foreach ( $allowedParams as $param ) {
-                       if ( isset( $this->mParams[$param] ) ) {
-                               $attribs[$param] = $this->mParams[$param];
-                       }
-               }
 
-               foreach ( array( 'required', 'autofocus', 'multiple', 'readonly' ) as $param ) {
-                       if ( isset( $this->mParams[$param] ) ) {
-                               $attribs[$param] = '';
-                       }
-               }
+               $attribs += $this->getAttributes( $allowedParams );
 
                # Implement tiny differences between some field variants
                # here, rather than creating a new class for each one which
                # is essentially just a clone of this one.
                if ( isset( $this->mParams['type'] ) ) {
                        switch ( $this->mParams['type'] ) {
-                               case 'email':
-                                       $attribs['type'] = 'email';
-                                       break;
                                case 'int':
                                        $attribs['type'] = 'number';
                                        break;
@@ -61,8 +51,10 @@ class HTMLTextField extends HTMLFormField {
                                        $attribs['step'] = 'any';
                                        break;
                                # Pass through
+                               case 'email':
                                case 'password':
                                case 'file':
+                               case 'url':
                                        $attribs['type'] = $this->mParams['type'];
                                        break;
                        }