Use OOUI on Special:BlockList
authorFlorian <florian.schmidt.stargatewissen@gmail.com>
Mon, 27 Jul 2015 20:37:37 +0000 (22:37 +0200)
committerReedy <reedy@wikimedia.org>
Sat, 2 Jan 2016 18:02:42 +0000 (18:02 +0000)
Switch to OOUI HtmlForm and replace mediawiki.userSuggest with
OOUI HtmlForm type user.

Bug: T117734
Change-Id: I37d9acbdd272c0cc2f2e120aada2e9fcea215509

includes/htmlform/HTMLFormField.php
includes/specials/SpecialBlockList.php
resources/Resources.php
resources/src/mediawiki.special/mediawiki.special.blocklist.css [new file with mode: 0644]

index d4a293e..3d9ec1f 100644 (file)
@@ -1054,8 +1054,8 @@ abstract class HTMLFormField {
 
                foreach ( $oldoptions as $text => $data ) {
                        $options[] = array(
-                               'data' => $data,
-                               'label' => $text,
+                               'data' => (string)$data,
+                               'label' => (string)$text,
                        );
                }
 
index 9defaba..73a2774 100644 (file)
@@ -46,8 +46,7 @@ class SpecialBlockList extends SpecialPage {
                $out = $this->getOutput();
                $lang = $this->getLanguage();
                $out->setPageTitle( $this->msg( 'ipblocklist' ) );
-               $out->addModuleStyles( 'mediawiki.special' );
-               $out->addModules( 'mediawiki.userSuggest' );
+               $out->addModuleStyles( array( 'mediawiki.special', 'mediawiki.special.blocklist' ) );
 
                $request = $this->getRequest();
                $par = $request->getVal( 'ip', $par );
@@ -71,12 +70,11 @@ class SpecialBlockList extends SpecialPage {
                # Just show the block list
                $fields = array(
                        'Target' => array(
-                               'type' => 'text',
+                               'type' => 'user',
                                'label-message' => 'ipaddressorusername',
                                'tabindex' => '1',
                                'size' => '45',
                                'default' => $this->target,
-                               'cssclass' => 'mw-autocomplete-user', // used by mediawiki.userSuggest
                        ),
                        'Options' => array(
                                'type' => 'multiselect',
@@ -104,7 +102,7 @@ class SpecialBlockList extends SpecialPage {
                );
                $context = new DerivativeContext( $this->getContext() );
                $context->setTitle( $this->getPageTitle() ); // Remove subpage
-               $form = new HTMLForm( $fields, $context );
+               $form = HTMLForm::factory( 'ooui', $fields, $context );
                $form->setMethod( 'get' );
                $form->setWrapperLegendMsg( 'ipblocklist-legend' );
                $form->setSubmitTextMsg( 'ipblocklist-submit' );
index 8dd78ab..987b97a 100644 (file)
@@ -1694,6 +1694,10 @@ return array(
                'styles' => 'resources/src/mediawiki.special/mediawiki.special.block.css',
                'dependencies' => 'mediawiki.util',
        ),
+       'mediawiki.special.blocklist' => array(
+               'styles' => 'resources/src/mediawiki.special/mediawiki.special.blocklist.css',
+               'position' => 'top',
+       ),
        'mediawiki.special.changeslist' => array(
                'position' => 'top',
                'styles' => 'resources/src/mediawiki.special/mediawiki.special.changeslist.css',
diff --git a/resources/src/mediawiki.special/mediawiki.special.blocklist.css b/resources/src/mediawiki.special/mediawiki.special.blocklist.css
new file mode 100644 (file)
index 0000000..b7513b6
--- /dev/null
@@ -0,0 +1,4 @@
+.mw-htmlform-flatlist-item {\r
+       /* FIXME: There should be an option in OOUI to do that */\r
+       display: inline-block !important;\r
+}
\ No newline at end of file