Namespace extension
Change-Id: I79aa319f177589d85446888289568748cd63d1c5
This commit is contained in:
@@ -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": {
|
||||||
|
|||||||
@@ -18,6 +18,10 @@
|
|||||||
* @license MIT
|
* @license MIT
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
namespace UniversalLanguageSelector\Api;
|
||||||
|
|
||||||
|
use ApiBase;
|
||||||
|
use LanguageNameSearch;
|
||||||
use Wikimedia\ParamValidator\ParamValidator;
|
use Wikimedia\ParamValidator\ParamValidator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -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;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -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 ) {
|
||||||
@@ -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
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -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";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -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.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -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
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user