Namespace extension

Change-Id: I79aa319f177589d85446888289568748cd63d1c5
This commit is contained in:
Reedy
2021-11-25 20:20:18 +00:00
committed by jenkins-bot
parent 71fb08ed41
commit f9532855ad
13 changed files with 73 additions and 27 deletions

View File

@@ -32,7 +32,7 @@
}, },
"HookHandlers": { "HookHandlers": {
"main": { "main": {
"class": "UniversalLanguageSelectorHooks", "class": "UniversalLanguageSelector\\Hooks",
"services": [ "services": [
"MainConfig", "MainConfig",
"UserOptionsLookup", "UserOptionsLookup",
@@ -42,15 +42,15 @@
} }
}, },
"APIModules": { "APIModules": {
"languagesearch": "ApiLanguageSearch", "languagesearch": "UniversalLanguageSelector\\Api\\ApiLanguageSearch",
"ulslocalization": { "ulslocalization": {
"class": "ApiULSLocalization", "class": "UniversalLanguageSelector\\Api\\ApiULSLocalization",
"services": [ "services": [
"LanguageNameUtils" "LanguageNameUtils"
] ]
}, },
"ulssetlang": { "ulssetlang": {
"class": "ApiULSSetLanguage", "class": "UniversalLanguageSelector\\Api\\ApiULSSetLanguage",
"services": [ "services": [
"UserOptionsManager", "UserOptionsManager",
"LanguageNameUtils" "LanguageNameUtils"
@@ -64,16 +64,11 @@
] ]
}, },
"AutoloadClasses": { "AutoloadClasses": {
"ApiLanguageSearch": "includes/api/ApiLanguageSearch.php",
"ApiULSLocalization": "includes/api/ApiULSLocalization.php",
"ApiULSSetLanguage": "includes/api/ApiULSSetLanguage.php",
"FontRepoCompiler": "includes/FontRepoCompiler.php",
"LanguageNameSearch": "data/LanguageNameSearch.php", "LanguageNameSearch": "data/LanguageNameSearch.php",
"LanguageNameSearchData": "data/LanguageNameSearchData.php", "LanguageNameSearchData": "data/LanguageNameSearchData.php"
"ResourceLoaderULSJsonMessageModule": "includes/ResourceLoaderULSJsonMessageModule.php", },
"ResourceLoaderULSModule": "includes/ResourceLoaderULSModule.php", "AutoloadNamespaces": {
"ULSJsonMessageLoader": "includes/ULSJsonMessageLoader.php", "UniversalLanguageSelector\\": "includes/"
"UniversalLanguageSelectorHooks": "includes/UniversalLanguageSelectorHooks.php"
}, },
"DefaultUserOptions": { "DefaultUserOptions": {
"uls-preferences": "", "uls-preferences": "",
@@ -146,7 +141,7 @@
"value": false "value": false
} }
}, },
"callback": "UniversalLanguageSelectorHooks::setVersionConstant", "callback": "UniversalLanguageSelector\\Hooks::setVersionConstant",
"ResourceFileModulePaths": { "ResourceFileModulePaths": {
"localBasePath": "resources", "localBasePath": "resources",
"remoteExtPath": "UniversalLanguageSelector/resources" "remoteExtPath": "UniversalLanguageSelector/resources"
@@ -267,7 +262,7 @@
"styles": "css/ext.uls.interlanguage.less" "styles": "css/ext.uls.interlanguage.less"
}, },
"ext.uls.languagenames": { "ext.uls.languagenames": {
"class": "ResourceLoaderULSModule" "class": "UniversalLanguageSelector\\ResourceLoaderULSModule"
}, },
"ext.uls.languagesettings": { "ext.uls.languagesettings": {
"scripts": "js/ext.uls.languagesettings.js", "scripts": "js/ext.uls.languagesettings.js",
@@ -296,7 +291,7 @@
] ]
}, },
"ext.uls.messages": { "ext.uls.messages": {
"class": "ResourceLoaderULSJsonMessageModule", "class": "UniversalLanguageSelector\\ResourceLoaderULSJsonMessageModule",
"dependencies": "ext.uls.i18n" "dependencies": "ext.uls.i18n"
}, },
"ext.uls.preferences": { "ext.uls.preferences": {

View File

@@ -18,6 +18,10 @@
* @license MIT * @license MIT
*/ */
namespace UniversalLanguageSelector\Api;
use ApiBase;
use LanguageNameSearch;
use Wikimedia\ParamValidator\ParamValidator; use Wikimedia\ParamValidator\ParamValidator;
/** /**

View File

@@ -18,7 +18,13 @@
* @license MIT * @license MIT
*/ */
namespace UniversalLanguageSelector\Api;
use ApiBase;
use ApiFormatRaw;
use ApiMain;
use MediaWiki\Languages\LanguageNameUtils; use MediaWiki\Languages\LanguageNameUtils;
use UniversalLanguageSelector\ULSJsonMessageLoader;
use Wikimedia\ParamValidator\ParamValidator; use Wikimedia\ParamValidator\ParamValidator;
/** /**

View File

@@ -18,6 +18,11 @@
* @license MIT * @license MIT
*/ */
namespace UniversalLanguageSelector\Api;
use ApiBase;
use ApiMain;
use DeferredUpdates;
use MediaWiki\Languages\LanguageNameUtils; use MediaWiki\Languages\LanguageNameUtils;
use MediaWiki\User\UserOptionsManager; use MediaWiki\User\UserOptionsManager;
use Wikimedia\ParamValidator\ParamValidator; use Wikimedia\ParamValidator\ParamValidator;
@@ -79,7 +84,6 @@ class ApiULSSetLanguage extends ApiBase {
} }
$updateUser = $user->getInstanceForUpdate(); $updateUser = $user->getInstanceForUpdate();
// @phan-suppress-next-line SecurityCheck-SQLInjection False positive caused by T290563
$this->userOptionsManager->setOption( $updateUser, 'language', $languageCode ); $this->userOptionsManager->setOption( $updateUser, 'language', $languageCode );
// Sync the DB on post-send // Sync the DB on post-send
DeferredUpdates::addCallableUpdate( static function () use ( $updateUser ) { DeferredUpdates::addCallableUpdate( static function () use ( $updateUser ) {

View File

@@ -1,7 +1,12 @@
<?php <?php
namespace UniversalLanguageSelector;
use OutputPage;
/** /**
* This class parses font specification ini files to a central list. * This class parses font specification ini files to a central list.
*
* @author Niklas Laxström * @author Niklas Laxström
* @since 2016.04 * @since 2016.04
*/ */

View File

@@ -18,6 +18,14 @@
* @license MIT * @license MIT
*/ */
namespace UniversalLanguageSelector;
use Babel;
use Config;
use ExtensionRegistry;
use Html;
use IBufferingStatsdDataFactory;
use IContextSource;
use MediaWiki\Extension\BetaFeatures\BetaFeatures; use MediaWiki\Extension\BetaFeatures\BetaFeatures;
use MediaWiki\Hook\BeforePageDisplayHook; use MediaWiki\Hook\BeforePageDisplayHook;
use MediaWiki\Hook\MakeGlobalVariablesScriptHook; use MediaWiki\Hook\MakeGlobalVariablesScriptHook;
@@ -28,11 +36,18 @@ use MediaWiki\Preferences\Hook\GetPreferencesHook;
use MediaWiki\ResourceLoader\Hook\ResourceLoaderGetConfigVarsHook; use MediaWiki\ResourceLoader\Hook\ResourceLoaderGetConfigVarsHook;
use MediaWiki\Skins\Hook\SkinAfterPortletHook; use MediaWiki\Skins\Hook\SkinAfterPortletHook;
use MediaWiki\User\UserOptionsLookup; use MediaWiki\User\UserOptionsLookup;
use MobileContext;
use OutputPage;
use RequestContext;
use Skin;
use SkinTemplate;
use Title;
use User;
/** /**
* @phpcs:disable MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName * @phpcs:disable MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName
*/ */
class UniversalLanguageSelectorHooks implements class Hooks implements
BeforePageDisplayHook, BeforePageDisplayHook,
PersonalUrlsHook, PersonalUrlsHook,
UserGetLanguageObjectHook, UserGetLanguageObjectHook,
@@ -84,7 +99,7 @@ class UniversalLanguageSelectorHooks implements
// this button. Using the SkinTemplateNavigation::Universal hook will ensure the button is // this button. Using the SkinTemplateNavigation::Universal hook will ensure the button is
// added to the correct menu. // added to the correct menu.
if ( version_compare( MW_VERSION, '1.37', '<' ) ) { if ( version_compare( MW_VERSION, '1.37', '<' ) ) {
$wgHooks['PersonalUrls'][] = "UniversalLanguageSelectorHooks::onPersonalUrls"; $wgHooks['PersonalUrls'][] = "UniversalLanguageSelector\\Hooks::onPersonalUrls";
} }
} }

View File

@@ -7,6 +7,12 @@
* @author Santhosh Thottingal * @author Santhosh Thottingal
*/ */
namespace UniversalLanguageSelector;
use ResourceLoaderContext;
use ResourceLoaderModule;
use Xml;
/** /**
* ResourceLoader module for client-side loading of json-based localization. * ResourceLoader module for client-side loading of json-based localization.
*/ */

View File

@@ -19,6 +19,13 @@
* @license MIT * @license MIT
*/ */
namespace UniversalLanguageSelector;
use Language;
use ResourceLoader;
use ResourceLoaderContext;
use ResourceLoaderModule;
/** /**
* ResourceLoader module for UniversalLanguageSelector * ResourceLoader module for UniversalLanguageSelector
*/ */

View File

@@ -19,6 +19,10 @@
* @since 2013.11 * @since 2013.11
*/ */
namespace UniversalLanguageSelector;
use Language;
class ULSJsonMessageLoader { class ULSJsonMessageLoader {
/** /**
* Returns all message files that are used to load messages for the given * Returns all message files that are used to load messages for the given

View File

@@ -2,10 +2,10 @@
namespace UniversalLanguageSelector\Tests; namespace UniversalLanguageSelector\Tests;
use FontRepoCompiler; use UniversalLanguageSelector\FontRepoCompiler;
/** /**
* @covers \FontRepoCompiler * @covers \UniversalLanguageSelector\FontRepoCompiler
* *
* @license GPL-2.0-or-later * @license GPL-2.0-or-later
* @author Thiemo Kreuz * @author Thiemo Kreuz

View File

@@ -2,10 +2,10 @@
namespace UniversalLanguageSelector\Tests; namespace UniversalLanguageSelector\Tests;
use ResourceLoaderULSJsonMessageModule; use UniversalLanguageSelector\ResourceLoaderULSJsonMessageModule;
/** /**
* @covers \ResourceLoaderULSJsonMessageModule * @covers \UniversalLanguageSelector\ResourceLoaderULSJsonMessageModule
* *
* @license GPL-2.0-or-later * @license GPL-2.0-or-later
* @author Thiemo Kreuz * @author Thiemo Kreuz

View File

@@ -2,10 +2,10 @@
namespace UniversalLanguageSelector\Tests; namespace UniversalLanguageSelector\Tests;
use ResourceLoaderULSModule; use UniversalLanguageSelector\ResourceLoaderULSModule;
/** /**
* @covers \ResourceLoaderULSModule * @covers \UniversalLanguageSelector\ResourceLoaderULSModule
* *
* @license GPL-2.0-or-later * @license GPL-2.0-or-later
* @author Thiemo Kreuz * @author Thiemo Kreuz

View File

@@ -2,10 +2,10 @@
namespace UniversalLanguageSelector\Tests; namespace UniversalLanguageSelector\Tests;
use ULSJsonMessageLoader; use UniversalLanguageSelector\ULSJsonMessageLoader;
/** /**
* @covers \ULSJsonMessageLoader * @covers \UniversalLanguageSelector\ULSJsonMessageLoader
* *
* @license GPL-2.0-or-later * @license GPL-2.0-or-later
* @author Thiemo Kreuz * @author Thiemo Kreuz