Merge "Inject WikiPageFactory into SpecialMyLanguage"
This commit is contained in:
commit
0f55a111b4
3 changed files with 11 additions and 3 deletions
|
|
@ -903,6 +903,7 @@ class SpecialPageFactory {
|
|||
'class' => \SpecialMyLanguage::class,
|
||||
'services' => [
|
||||
'LanguageNameUtils',
|
||||
'WikiPageFactory',
|
||||
]
|
||||
],
|
||||
'Mypage' => [
|
||||
|
|
|
|||
|
|
@ -24,6 +24,7 @@
|
|||
*/
|
||||
|
||||
use MediaWiki\Languages\LanguageNameUtils;
|
||||
use MediaWiki\Page\WikiPageFactory;
|
||||
|
||||
/**
|
||||
* Unlisted special page just to redirect the user to the translated version of
|
||||
|
|
@ -39,14 +40,20 @@ class SpecialMyLanguage extends RedirectSpecialArticle {
|
|||
/** @var LanguageNameUtils */
|
||||
private $languageNameUtils;
|
||||
|
||||
/** @var WikiPageFactory */
|
||||
private $wikiPageFactory;
|
||||
|
||||
/**
|
||||
* @param LanguageNameUtils $languageNameUtils
|
||||
* @param WikiPageFactory $wikiPageFactory
|
||||
*/
|
||||
public function __construct(
|
||||
LanguageNameUtils $languageNameUtils
|
||||
LanguageNameUtils $languageNameUtils,
|
||||
WikiPageFactory $wikiPageFactory
|
||||
) {
|
||||
parent::__construct( 'MyLanguage' );
|
||||
$this->languageNameUtils = $languageNameUtils;
|
||||
$this->wikiPageFactory = $wikiPageFactory;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -98,7 +105,7 @@ class SpecialMyLanguage extends RedirectSpecialArticle {
|
|||
}
|
||||
|
||||
if ( $base->isRedirect() ) {
|
||||
$page = new WikiPage( $base );
|
||||
$page = $this->wikiPageFactory->newFromTitle( $base );
|
||||
$base = $page->getRedirectTarget();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ class SpecialMyLanguageTest extends MediaWikiIntegrationTestCase {
|
|||
$services = MediaWikiServices::getInstance();
|
||||
$special = new SpecialMyLanguage(
|
||||
$services->getLanguageNameUtils(),
|
||||
$services->getContentLanguage()
|
||||
$services->getWikiPageFactory()
|
||||
);
|
||||
$special->getContext()->setLanguage( $userLang );
|
||||
// Test with subpages both enabled and disabled
|
||||
|
|
|
|||
Loading…
Reference in a new issue