From defc3d416df7f59fdc50b6426956ff69f0b305fc Mon Sep 17 00:00:00 2001 From: Abijeet Date: Tue, 16 Nov 2021 13:01:14 +0530 Subject: [PATCH] ApiULSSetLanguage: Use LanguageNameUtils Change-Id: I00e814894db4ba84f1d08c52db2993b59fbccf55 --- extension.json | 3 ++- includes/api/ApiULSSetLanguage.php | 10 ++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/extension.json b/extension.json index d30cdd71..b2e3bd04 100644 --- a/extension.json +++ b/extension.json @@ -52,7 +52,8 @@ "ulssetlang": { "class": "ApiULSSetLanguage", "services": [ - "UserOptionsManager" + "UserOptionsManager", + "LanguageNameUtils" ] } }, diff --git a/includes/api/ApiULSSetLanguage.php b/includes/api/ApiULSSetLanguage.php index 73db668d..2654d089 100644 --- a/includes/api/ApiULSSetLanguage.php +++ b/includes/api/ApiULSSetLanguage.php @@ -18,6 +18,7 @@ * @license MIT */ +use MediaWiki\Languages\LanguageNameUtils; use MediaWiki\User\UserOptionsManager; use Wikimedia\ParamValidator\ParamValidator; @@ -27,19 +28,24 @@ use Wikimedia\ParamValidator\ParamValidator; class ApiULSSetLanguage extends ApiBase { /** @var UserOptionsManager */ private $userOptionsManager; + /** @var LanguageNameUtils */ + private $languageNameUtils; /** * @param ApiMain $main * @param string $action * @param UserOptionsManager $userOptionsManager + * @param LanguageNameUtils $languageNameUtils */ public function __construct( ApiMain $main, $action, - UserOptionsManager $userOptionsManager + UserOptionsManager $userOptionsManager, + LanguageNameUtils $languageNameUtils ) { parent::__construct( $main, $action ); $this->userOptionsManager = $userOptionsManager; + $this->languageNameUtils = $languageNameUtils; } public function execute() { @@ -49,7 +55,7 @@ class ApiULSSetLanguage extends ApiBase { } $languageCode = $request->getText( 'languagecode' ); - if ( !Language::isSupportedLanguage( $languageCode ) ) { + if ( !$this->languageNameUtils->isSupportedLanguage( $languageCode ) ) { $this->dieWithError( [ 'apierror-invalidlang', $this->encodeParamName( 'languagecode' ) ] );