From 8fd96347747ecee3a177eeaf23d7f309210a72a1 Mon Sep 17 00:00:00 2001 From: Legoktm Date: Thu, 30 Jul 2015 18:55:20 +0000 Subject: [PATCH] Revert "Use OOUI HTMLForm for Special:Watchlist" Issues with spacing (T107311), probably shouldn't have been merged right before the branch cut. This reverts commit 9508c5bd576ee4206eb8e89b7d2ba82985f4e151. Change-Id: Ibf2ca5a33b8ab0f7381c720c6c92fbfd7a7c819d --- autoload.php | 2 - .../htmlform/HTMLAdvancedSelectNamespace.php | 64 -------------- .../HTMLAdvancedSelectNamespaceWithButton.php | 17 ---- includes/htmlform/HTMLCheckField.php | 2 +- includes/htmlform/HTMLForm.php | 2 - includes/specials/SpecialWatchlist.php | 84 +++++++++---------- resources/Resources.php | 4 - .../mediawiki.special.watchlist.css | 4 - 8 files changed, 41 insertions(+), 138 deletions(-) delete mode 100644 includes/htmlform/HTMLAdvancedSelectNamespace.php delete mode 100644 includes/htmlform/HTMLAdvancedSelectNamespaceWithButton.php delete mode 100644 resources/src/mediawiki.special/mediawiki.special.watchlist.css diff --git a/autoload.php b/autoload.php index 4109740772..a8940c47e3 100644 --- a/autoload.php +++ b/autoload.php @@ -478,8 +478,6 @@ $wgAutoloadLocalClasses = array( 'GitInfo' => __DIR__ . '/includes/GitInfo.php', 'GlobalDependency' => __DIR__ . '/includes/cache/CacheDependency.php', 'GlobalVarConfig' => __DIR__ . '/includes/config/GlobalVarConfig.php', - 'HTMLAdvancedSelectNamespace' => __DIR__ . '/includes/htmlform/HTMLAdvancedSelectNamespace.php', - 'HTMLAdvancedSelectNamespaceWithButton' => __DIR__ . '/includes/htmlform/HTMLAdvancedSelectNamespaceWithButton.php', 'HTMLApiField' => __DIR__ . '/includes/htmlform/HTMLApiField.php', 'HTMLAutoCompleteSelectField' => __DIR__ . '/includes/htmlform/HTMLAutoCompleteSelectField.php', 'HTMLButtonField' => __DIR__ . '/includes/htmlform/HTMLButtonField.php', diff --git a/includes/htmlform/HTMLAdvancedSelectNamespace.php b/includes/htmlform/HTMLAdvancedSelectNamespace.php deleted file mode 100644 index 348d17027f..0000000000 --- a/includes/htmlform/HTMLAdvancedSelectNamespace.php +++ /dev/null @@ -1,64 +0,0 @@ -mParams['all'] ) ? $this->mParams['all'] : '' ); - - return parent::getInputHTML( $value ) . ' ' . - Xml::checkLabel( - $this->msg( 'invert' )->text(), - $this->mParams['invertname'], - $this->mParams['invertid'], - $this->mParams['invertdefault'], - array( 'title' => $this->msg( 'tooltip-invert' )->text() ) - ) . ' ' . - Xml::checkLabel( - $this->msg( 'namespace_association' )->text(), - $this->mParams['associatedname'], - $this->mParams['associatedid'], - $this->mParams['associateddefault'], - array( 'title' => $this->msg( 'tooltip-namespace_association' )->text() ) - ); - } - - /** - * Get the OOUI version of this field. - * @since 1.26 - * @param string $value - * @return MediaWiki\\Widget\\NamespaceInputWidget A layout with all widget. - */ - public function getInputOOUI( $value ) { - # There are more fields in this Widget as only one, so there are more values instead of only once. - # Filter the data from the request before creating the form to set the correct values to the - # Widget elements. - # Get WebRequest only, if there is an instance of HTMLForm, use default data instead - $invertdefault = false; - $associateddefault = false; - if ( $this->mParent instanceof HTMLForm ) { - $request = $this->mParent->getRequest(); - if ( $request->getCheck( $this->mParams['associatedname'] ) ) { - $associateddefault = true; - } - if ( $request->getCheck( $this->mParams['invertname'] ) ) { - $invertdefault = true; - } - } - - // Unsupported: invertid, associatedid - return new MediaWiki\Widget\NamespaceInputWidget( array( - 'valueNamespace' => $value, - 'nameNamespace' => $this->mName, - 'id' => $this->mID, - 'includeAllValue' => $this->mAllValue, - 'nameInvert' => $this->mParams['invertname'], - 'labelInvert' => $this->msg( 'invert' )->text(), - 'valueInvert' => $invertdefault, - 'nameAssociated' => $this->mParams['associatedname'], - 'valueAssociated' => $associateddefault, - 'labelAssociated' => $this->msg( 'namespace_association' )->text(), - ) ); - } -} diff --git a/includes/htmlform/HTMLAdvancedSelectNamespaceWithButton.php b/includes/htmlform/HTMLAdvancedSelectNamespaceWithButton.php deleted file mode 100644 index 71c9509f03..0000000000 --- a/includes/htmlform/HTMLAdvancedSelectNamespaceWithButton.php +++ /dev/null @@ -1,17 +0,0 @@ -mClassWithButton = new HTMLFormFieldWithButton( $info ); - parent::__construct( $info ); - } - - public function getInputHTML( $value ) { - return $this->mClassWithButton->getElement( parent::getInputHTML( $value ) ); - } -} diff --git a/includes/htmlform/HTMLCheckField.php b/includes/htmlform/HTMLCheckField.php index 646b0d5a26..9666c4ea87 100644 --- a/includes/htmlform/HTMLCheckField.php +++ b/includes/htmlform/HTMLCheckField.php @@ -14,7 +14,7 @@ class HTMLCheckField extends HTMLFormField { $attr = $this->getTooltipAndAccessKey(); $attr['id'] = $this->mID; - $attr += $this->getAttributes( array( 'disabled', 'tabindex', 'title' ) ); + $attr += $this->getAttributes( array( 'disabled', 'tabindex' ) ); if ( $this->mClass !== '' ) { $attr['class'] = $this->mClass; diff --git a/includes/htmlform/HTMLForm.php b/includes/htmlform/HTMLForm.php index b10d789344..a56b398df3 100644 --- a/includes/htmlform/HTMLForm.php +++ b/includes/htmlform/HTMLForm.php @@ -140,8 +140,6 @@ class HTMLForm extends ContextSource { 'selectandother' => 'HTMLSelectAndOtherField', 'namespaceselect' => 'HTMLSelectNamespace', 'namespaceselectwithbutton' => 'HTMLSelectNamespaceWithButton', - 'advancednamespaceselect' => 'HTMLAdvancedSelectNamespace', - 'advancednamespaceselectwithbutton' => 'HTMLAdvancedSelectNamespaceWithButton', 'tagfilter' => 'HTMLTagFilter', 'submit' => 'HTMLSubmitField', 'hidden' => 'HTMLHiddenField', diff --git a/includes/specials/SpecialWatchlist.php b/includes/specials/SpecialWatchlist.php index 211798ecb3..20f577603b 100644 --- a/includes/specials/SpecialWatchlist.php +++ b/includes/specials/SpecialWatchlist.php @@ -396,8 +396,6 @@ class SpecialWatchlist extends ChangesListSpecialPage { */ public function doHeader( $opts, $numRows ) { $user = $this->getUser(); - $out = $this->getOutput(); - $out->addModules( 'mediawiki.special.watchlist' ); $this->getOutput()->addSubtitle( $this->msg( 'watchlistfor2', $user->getName() ) @@ -452,34 +450,39 @@ class SpecialWatchlist extends ChangesListSpecialPage { $form .= $wlInfo; $form .= $cutofflinks; $form .= $lang->pipeList( $links ) . "\n"; - $form .= "
\n"; - $out->addHtml( $form ); - - $formDescriptor = array( - 'namespace' => array( - 'class' => 'HTMLAdvancedSelectNamespaceWithButton', - 'label-message' => 'namespace', - 'default' => $opts['namespace'], + $form .= "
\n

"; + $form .= Html::namespaceSelector( + array( + 'selected' => $opts['namespace'], + 'all' => '', + 'label' => $this->msg( 'namespace' )->text() + ), array( 'name' => 'namespace', 'id' => 'namespace', - 'invertdefault' => $opts['invert'], - 'invertname' => 'invert', - 'invertid' => 'nsinvert', - 'associateddefault' => $opts['associated'], - 'associatedname' => 'associated', - 'associatedid' => 'nsassociated', - 'buttondefault' => $this->msg( 'allpagessubmit' )->text(), - ), - ); - $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() ); - $htmlForm->suppressDefaultSubmit(); - $htmlForm->addHiddenFields( $hiddenFields ); - $htmlForm->prepareForm()->displayForm( false ); - - $form = ''; + 'class' => 'namespaceselector', + ) + ) . ' '; + $form .= Xml::checkLabel( + $this->msg( 'invert' )->text(), + 'invert', + 'nsinvert', + $opts['invert'], + array( 'title' => $this->msg( 'tooltip-invert' )->text() ) + ) . ' '; + $form .= Xml::checkLabel( + $this->msg( 'namespace_association' )->text(), + 'associated', + 'nsassociated', + $opts['associated'], + array( 'title' => $this->msg( 'tooltip-namespace_association' )->text() ) + ) . ' '; + $form .= Xml::submitButton( $this->msg( 'allpagessubmit' )->text() ) . "

\n"; + foreach ( $hiddenFields as $key => $value ) { + $form .= Html::hidden( $key, $value ) . "\n"; + } $form .= Xml::closeElement( 'fieldset' ) . "\n"; $form .= Xml::closeElement( 'form' ) . "\n"; - $out->addHtml( $form ); + $this->getOutput()->addHTML( $form ); $this->setBottomText( $opts ); } @@ -488,7 +491,6 @@ class SpecialWatchlist extends ChangesListSpecialPage { $nondefaults = $opts->getChangedValues(); $form = ""; $user = $this->getUser(); - $out = $this->getOutput(); $dbr = $this->getDB(); $numItems = $this->countItems( $dbr ); @@ -511,25 +513,19 @@ class SpecialWatchlist extends ChangesListSpecialPage { } $form .= "

"; - $out->addHTML( $form ); - if ( $numItems > 0 && $showUpdatedMarker ) { - $formDescriptor = array( - 'resetbutton' => array( - 'type' => 'submit', - 'name' => 'dummy', - 'default' => $this->msg( 'enotif_reset' )->text(), - ), - ); - $htmlForm = HTMLForm::factory( 'ooui', $formDescriptor, $this->getContext() ); - $htmlForm->suppressDefaultSubmit(); - $htmlForm->setId( 'mw-watchlist-resetbutton' ); - $nondefaults['reset'] = 'all'; - $htmlForm->addHiddenFields( $nondefaults ); - $htmlForm->prepareForm()->displayForm( false ); + $form .= Xml::openElement( 'form', array( 'method' => 'post', + 'action' => $this->getPageTitle()->getLocalURL(), + 'id' => 'mw-watchlist-resetbutton' ) ) . "\n" . + Xml::submitButton( $this->msg( 'enotif_reset' )->text(), array( 'name' => 'dummy' ) ) . "\n" . + Html::hidden( 'reset', 'all' ) . "\n"; + foreach ( $nondefaults as $key => $value ) { + $form .= Html::hidden( $key, $value ) . "\n"; + } + $form .= Xml::closeElement( 'form' ) . "\n"; } - $form = Xml::openElement( 'form', array( + $form .= Xml::openElement( 'form', array( 'method' => 'post', 'action' => $this->getPageTitle()->getLocalURL(), 'id' => 'mw-watchlist-form' @@ -542,7 +538,7 @@ class SpecialWatchlist extends ChangesListSpecialPage { $form .= SpecialRecentChanges::makeLegend( $this->getContext() ); - $out->addHTML( $form ); + $this->getOutput()->addHTML( $form ); } protected function showHideLink( $options, $message, $name, $value ) { diff --git a/resources/Resources.php b/resources/Resources.php index 46b44a662a..fb0971e49a 100644 --- a/resources/Resources.php +++ b/resources/Resources.php @@ -1655,10 +1655,6 @@ return array( 'mediawiki.special.version' => array( 'styles' => 'resources/src/mediawiki.special/mediawiki.special.version.css', ), - 'mediawiki.special.watchlist' => array( - 'position' => 'top', - 'styles' => 'resources/src/mediawiki.special/mediawiki.special.watchlist.css', - ), /* MediaWiki Installer */ diff --git a/resources/src/mediawiki.special/mediawiki.special.watchlist.css b/resources/src/mediawiki.special/mediawiki.special.watchlist.css deleted file mode 100644 index c802f8cdd8..0000000000 --- a/resources/src/mediawiki.special/mediawiki.special.watchlist.css +++ /dev/null @@ -1,4 +0,0 @@ -.mw-htmlform-ooui-wrapper { - /* We're gonna need a bigger form! */ - width: 60em; -} -- 2.20.1