ApiULSSetLanguage: Use LanguageNameUtils

Change-Id: I00e814894db4ba84f1d08c52db2993b59fbccf55
This commit is contained in:
Abijeet
2021-11-16 13:01:14 +05:30
committed by jenkins-bot
parent 98252ee386
commit defc3d416d
2 changed files with 10 additions and 3 deletions

View File

@@ -52,7 +52,8 @@
"ulssetlang": {
"class": "ApiULSSetLanguage",
"services": [
"UserOptionsManager"
"UserOptionsManager",
"LanguageNameUtils"
]
}
},

View File

@@ -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' ) ]
);