From: Brad Jorsch Date: Tue, 30 Sep 2014 16:06:56 +0000 (-0400) Subject: Restore ability for getAttributes to set HTMLTextField type X-Git-Tag: 1.31.0-rc.0~13750^2 X-Git-Url: http://git.cyclocoop.org/%7B%24www_url%7Dadmin/password.php?a=commitdiff_plain;h=a54246820795c0d2c13c92fd563765a50292a269;p=lhc%2Fweb%2Fwiklou.git Restore ability for getAttributes to set HTMLTextField type Change I47db5eab broke SecurePoll, which was relying on this. Change-Id: Ib11bf9d34eb12f14b9636498c00ff4040b35f130 --- diff --git a/includes/htmlform/HTMLTextField.php b/includes/htmlform/HTMLTextField.php index 10bc67f0be..88df49dbf5 100644 --- a/includes/htmlform/HTMLTextField.php +++ b/includes/htmlform/HTMLTextField.php @@ -20,6 +20,7 @@ class HTMLTextField extends HTMLFormField { # @todo Enforce pattern, step, required, readonly on the server side as # well $allowedParams = array( + 'type', 'min', 'max', 'pattern', @@ -38,10 +39,13 @@ class HTMLTextField extends HTMLFormField { $attribs += $this->getAttributes( $allowedParams ); + # Extract 'type' + $type = isset( $attribs['type'] ) ? $attribs['type'] : 'text'; + unset( $attribs['type'] ); + # 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. - $type = 'text'; if ( isset( $this->mParams['type'] ) ) { switch ( $this->mParams['type'] ) { case 'int': @@ -60,6 +64,7 @@ class HTMLTextField extends HTMLFormField { break; } } + return Html::input( $this->mName, $value, $type, $attribs ); } }