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": { "ulssetlang": {
"class": "ApiULSSetLanguage", "class": "ApiULSSetLanguage",
"services": [ "services": [
"UserOptionsManager" "UserOptionsManager",
"LanguageNameUtils"
] ]
} }
}, },

View File

@@ -18,6 +18,7 @@
* @license MIT * @license MIT
*/ */
use MediaWiki\Languages\LanguageNameUtils;
use MediaWiki\User\UserOptionsManager; use MediaWiki\User\UserOptionsManager;
use Wikimedia\ParamValidator\ParamValidator; use Wikimedia\ParamValidator\ParamValidator;
@@ -27,19 +28,24 @@ use Wikimedia\ParamValidator\ParamValidator;
class ApiULSSetLanguage extends ApiBase { class ApiULSSetLanguage extends ApiBase {
/** @var UserOptionsManager */ /** @var UserOptionsManager */
private $userOptionsManager; private $userOptionsManager;
/** @var LanguageNameUtils */
private $languageNameUtils;
/** /**
* @param ApiMain $main * @param ApiMain $main
* @param string $action * @param string $action
* @param UserOptionsManager $userOptionsManager * @param UserOptionsManager $userOptionsManager
* @param LanguageNameUtils $languageNameUtils
*/ */
public function __construct( public function __construct(
ApiMain $main, ApiMain $main,
$action, $action,
UserOptionsManager $userOptionsManager UserOptionsManager $userOptionsManager,
LanguageNameUtils $languageNameUtils
) { ) {
parent::__construct( $main, $action ); parent::__construct( $main, $action );
$this->userOptionsManager = $userOptionsManager; $this->userOptionsManager = $userOptionsManager;
$this->languageNameUtils = $languageNameUtils;
} }
public function execute() { public function execute() {
@@ -49,7 +55,7 @@ class ApiULSSetLanguage extends ApiBase {
} }
$languageCode = $request->getText( 'languagecode' ); $languageCode = $request->getText( 'languagecode' );
if ( !Language::isSupportedLanguage( $languageCode ) ) { if ( !$this->languageNameUtils->isSupportedLanguage( $languageCode ) ) {
$this->dieWithError( $this->dieWithError(
[ 'apierror-invalidlang', $this->encodeParamName( 'languagecode' ) ] [ 'apierror-invalidlang', $this->encodeParamName( 'languagecode' ) ]
); );