MCR: Add temporary web UI mcrundo action
[lhc/web/wiklou.git] / includes / api / ApiHelp.php
index bccb338..72509c2 100644 (file)
@@ -91,8 +91,6 @@ class ApiHelp extends ApiBase {
         * @param array $options Formatting options (described above)
         */
        public static function getHelp( IContextSource $context, $modules, array $options ) {
-               global $wgContLang;
-
                if ( !is_array( $modules ) ) {
                        $modules = [ $modules ];
                }
@@ -104,13 +102,16 @@ class ApiHelp extends ApiBase {
                ] );
                if ( !empty( $options['toc'] ) ) {
                        $out->addModules( 'mediawiki.toc' );
+                       $out->addModuleStyles( 'mediawiki.toc.styles' );
                }
                $out->setPageTitle( $context->msg( 'api-help-title' ) );
 
-               $cache = MediaWikiServices::getInstance()->getMainWANObjectCache();
+               $services = MediaWikiServices::getInstance();
+               $cache = $services->getMainWANObjectCache();
                $cacheKey = null;
                if ( count( $modules ) == 1 && $modules[0] instanceof ApiMain &&
-                       $options['recursivesubmodules'] && $context->getLanguage() === $wgContLang
+                       $options['recursivesubmodules'] &&
+                       $context->getLanguage()->equals( $services->getContentLanguage() )
                ) {
                        $cacheHelpTimeout = $context->getConfig()->get( 'APICacheHelpTimeout' );
                        if ( $cacheHelpTimeout > 0 ) {
@@ -149,7 +150,7 @@ class ApiHelp extends ApiBase {
                }
                $out->addHTML( $html );
 
-               $helptitle = isset( $options['helptitle'] ) ? $options['helptitle'] : null;
+               $helptitle = $options['helptitle'] ?? null;
                $html = self::fixHelpLinks( $out->getHTML(), $helptitle, $haveModules );
                $out->clearHTML();
                $out->addHTML( $html );
@@ -482,9 +483,7 @@ class ApiHelp extends ApiBase {
 
                                        // Type documentation
                                        if ( !isset( $settings[ApiBase::PARAM_TYPE] ) ) {
-                                               $dflt = isset( $settings[ApiBase::PARAM_DFLT] )
-                                                       ? $settings[ApiBase::PARAM_DFLT]
-                                                       : null;
+                                               $dflt = $settings[ApiBase::PARAM_DFLT] ?? null;
                                                if ( is_bool( $dflt ) ) {
                                                        $settings[ApiBase::PARAM_TYPE] = 'boolean';
                                                } elseif ( is_string( $dflt ) || is_null( $dflt ) ) {
@@ -503,12 +502,8 @@ class ApiHelp extends ApiBase {
 
                                                if ( is_array( $type ) ) {
                                                        $count = count( $type );
-                                                       $deprecatedValues = isset( $settings[ApiBase::PARAM_DEPRECATED_VALUES] )
-                                                               ? $settings[ApiBase::PARAM_DEPRECATED_VALUES]
-                                                               : [];
-                                                       $links = isset( $settings[ApiBase::PARAM_VALUE_LINKS] )
-                                                               ? $settings[ApiBase::PARAM_VALUE_LINKS]
-                                                               : [];
+                                                       $deprecatedValues = $settings[ApiBase::PARAM_DEPRECATED_VALUES] ?? [];
+                                                       $links = $settings[ApiBase::PARAM_VALUE_LINKS] ?? [];
                                                        $values = array_map( function ( $v ) use ( $links, $deprecatedValues ) {
                                                                $attr = [];
                                                                if ( $v !== '' ) {
@@ -707,9 +702,7 @@ class ApiHelp extends ApiBase {
                                                                $info[] = implode( ' ', $extra );
                                                        }
 
-                                                       $allowAll = isset( $settings[ApiBase::PARAM_ALL] )
-                                                               ? $settings[ApiBase::PARAM_ALL]
-                                                               : false;
+                                                       $allowAll = $settings[ApiBase::PARAM_ALL] ?? false;
                                                        if ( $allowAll || $settings[ApiBase::PARAM_TYPE] === 'namespace' ) {
                                                                if ( $settings[ApiBase::PARAM_TYPE] === 'namespace' ) {
                                                                        $allSpecifier = ApiBase::ALL_DEFAULT_STRING;
@@ -733,9 +726,7 @@ class ApiHelp extends ApiBase {
                                        }
 
                                        // Add default
-                                       $default = isset( $settings[ApiBase::PARAM_DFLT] )
-                                               ? $settings[ApiBase::PARAM_DFLT]
-                                               : null;
+                                       $default = $settings[ApiBase::PARAM_DFLT] ?? null;
                                        if ( $default === '' ) {
                                                $info[] = $context->msg( 'api-help-param-default-empty' )
                                                        ->parse();