ApiVisualEditorEdit: Use action=parse 'subtitle' option

Bug: T259313
Depends-On: Id1fa03d05e6a984862861a1de37d84e48a692d79
Change-Id: I15df60de7c2376d04e07c27a8c1f4d057af53b20
This commit is contained in:
Bartosz Dziewoński 2020-10-28 22:12:01 +01:00 committed by Jforrester
parent 7248ad6332
commit 9f9966d1cd
2 changed files with 4 additions and 14 deletions

View file

@ -24,7 +24,7 @@
"license-name": "MIT",
"type": "editor",
"requires": {
"MediaWiki": ">= 1.35.0"
"MediaWiki": ">= 1.36.0"
},
"callback": "VisualEditorHooks::onRegistration",
"config": {

View file

@ -93,7 +93,7 @@ class ApiVisualEditorEdit extends ApiBase {
$apiParams = [
'action' => 'parse',
'oldid' => $newRevId,
'prop' => 'text|revid|categorieshtml|displaytitle|modules|jsconfigvars',
'prop' => 'text|revid|categorieshtml|displaytitle|subtitle|modules|jsconfigvars',
];
$api = new ApiMain(
new DerivativeRequest(
@ -113,6 +113,7 @@ class ApiVisualEditorEdit extends ApiBase {
$content = $result['parse']['text']['*'] ?? false;
$categorieshtml = $result['parse']['categorieshtml']['*'] ?? false;
$displaytitle = $result['parse']['displaytitle'] ?? false;
$subtitle = $result['parse']['subtitle'] ?? false;
$modules = array_merge(
$result['parse']['modules'] ?? [],
$result['parse']['modulestyles'] ?? []
@ -140,6 +141,7 @@ class ApiVisualEditorEdit extends ApiBase {
'content' => $content,
'categorieshtml' => $categorieshtml,
'displayTitleHtml' => $displaytitle,
'contentSub' => $subtitle,
'modules' => $modules,
'jsconfigvars' => $jsconfigvars
];
@ -421,18 +423,6 @@ class ApiVisualEditorEdit extends ApiBase {
RequestContext::getMain()->setTitle( $originalTitle );
}
$context = new RequestContext;
$context->setTitle( $title );
$context->setRequest( new FauxRequest( [ 'action' => 'view' ] ) );
$tempOut = new OutputPage( $context );
$tempOut->setArticleFlag( true );
$subpagestr = $this->getSkin()->subPageSubtitle( $tempOut );
if ( $subpagestr !== '' ) {
$subpagestr = '<span class="subpages">' . $subpagestr . '</span>';
}
$result['contentSub'] = $subpagestr . $this->getOutput()->getSubtitle();
$lang = $this->getLanguage();
if ( isset( $saveresult['edit']['newtimestamp'] ) ) {