mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/VisualEditor
synced 2024-11-15 02:23:58 +00:00
Merge "Update displaytitle on save"
This commit is contained in:
commit
dc81adeb36
|
@ -115,6 +115,9 @@ class ApiVisualEditorEdit extends ApiVisualEditor {
|
||||||
$this->dieUsage( 'Error contacting the Parsoid server', 'parsoidserver' );
|
$this->dieUsage( 'Error contacting the Parsoid server', 'parsoidserver' );
|
||||||
}
|
}
|
||||||
$result['isRedirect'] = $page->isRedirect();
|
$result['isRedirect'] = $page->isRedirect();
|
||||||
|
$result['displayTitleHtml'] = $this->getOutput()->getWikiPage()->getParserOutput(
|
||||||
|
$this->getOutput()->parserOptions()
|
||||||
|
)->getDisplayTitle();
|
||||||
|
|
||||||
if ( isset( $saveresult['edit']['newrevid'] ) ) {
|
if ( isset( $saveresult['edit']['newrevid'] ) ) {
|
||||||
$result['newrevid'] = intval( $saveresult['edit']['newrevid'] );
|
$result['newrevid'] = intval( $saveresult['edit']['newrevid'] );
|
||||||
|
|
|
@ -421,9 +421,11 @@ ve.init.mw.ViewPageTarget.prototype.onSurfaceReady = function () {
|
||||||
* @method
|
* @method
|
||||||
* @param {string} html Rendered page HTML from server
|
* @param {string} html Rendered page HTML from server
|
||||||
* @param {string} categoriesHtml Rendered categories HTML from server
|
* @param {string} categoriesHtml Rendered categories HTML from server
|
||||||
* @param {number} [newid] New revision id, undefined if unchanged
|
* @param {number} newid New revision id, undefined if unchanged
|
||||||
|
* @param {boolean} isRedirect Whether this page is a redirect or not
|
||||||
|
* @param {string} displayTitle What HTML to show as the page title
|
||||||
*/
|
*/
|
||||||
ve.init.mw.ViewPageTarget.prototype.onSave = function ( html, categoriesHtml, newid, isRedirect ) {
|
ve.init.mw.ViewPageTarget.prototype.onSave = function ( html, categoriesHtml, newid, isRedirect, displayTitle ) {
|
||||||
var newUrlParams, watchChecked;
|
var newUrlParams, watchChecked;
|
||||||
if ( !this.pageExists || this.restoring ) {
|
if ( !this.pageExists || this.restoring ) {
|
||||||
// This is a page creation or restoration, refresh the page
|
// This is a page creation or restoration, refresh the page
|
||||||
|
@ -466,7 +468,7 @@ ve.init.mw.ViewPageTarget.prototype.onSave = function ( html, categoriesHtml, ne
|
||||||
}
|
}
|
||||||
this.saveDialog.close();
|
this.saveDialog.close();
|
||||||
this.saveDialog.reset();
|
this.saveDialog.reset();
|
||||||
this.replacePageContent( html, categoriesHtml, isRedirect );
|
this.replacePageContent( html, categoriesHtml, isRedirect, displayTitle );
|
||||||
this.setupSectionEditLinks();
|
this.setupSectionEditLinks();
|
||||||
this.tearDownBeforeUnloadHandler();
|
this.tearDownBeforeUnloadHandler();
|
||||||
this.deactivate( true );
|
this.deactivate( true );
|
||||||
|
@ -1549,8 +1551,10 @@ ve.init.mw.ViewPageTarget.prototype.onWindowPopState = function ( e ) {
|
||||||
* @method
|
* @method
|
||||||
* @param {string} html Rendered HTML from server
|
* @param {string} html Rendered HTML from server
|
||||||
* @param {string} categoriesHtml Rendered categories HTML from server
|
* @param {string} categoriesHtml Rendered categories HTML from server
|
||||||
|
* @param {boolean} isRedirect Whether this page is a redirect or not
|
||||||
|
* @param {string} displayTitle What HTML to show as the page title
|
||||||
*/
|
*/
|
||||||
ve.init.mw.ViewPageTarget.prototype.replacePageContent = function ( html, categoriesHtml, isRedirect ) {
|
ve.init.mw.ViewPageTarget.prototype.replacePageContent = function ( html, categoriesHtml, isRedirect, displayTitle ) {
|
||||||
var $content = $( $.parseHTML( html ) ), $editableContent;
|
var $content = $( $.parseHTML( html ) ), $editableContent;
|
||||||
|
|
||||||
if ( $( '#mw-imagepage-content' ).length ) {
|
if ( $( '#mw-imagepage-content' ).length ) {
|
||||||
|
@ -1570,6 +1574,7 @@ ve.init.mw.ViewPageTarget.prototype.replacePageContent = function ( html, catego
|
||||||
}
|
}
|
||||||
|
|
||||||
mw.hook( 'wikipage.content' ).fire( $editableContent.empty().append( $content ) );
|
mw.hook( 'wikipage.content' ).fire( $editableContent.empty().append( $content ) );
|
||||||
|
$( '#content > #firstHeading > span ' ).html( displayTitle );
|
||||||
$( '#catlinks' ).replaceWith( categoriesHtml );
|
$( '#catlinks' ).replaceWith( categoriesHtml );
|
||||||
if ( isRedirect ) {
|
if ( isRedirect ) {
|
||||||
$( '#contentSub' ).text( ve.msg( 'redirectpagesub' ) );
|
$( '#contentSub' ).text( ve.msg( 'redirectpagesub' ) );
|
||||||
|
|
|
@ -543,7 +543,7 @@ ve.init.mw.Target.onSave = function ( doc, saveData, response ) {
|
||||||
} else if ( typeof data.content !== 'string' ) {
|
} else if ( typeof data.content !== 'string' ) {
|
||||||
this.onSaveError( doc, saveData, null, 'Invalid HTML content in response from server', response );
|
this.onSaveError( doc, saveData, null, 'Invalid HTML content in response from server', response );
|
||||||
} else {
|
} else {
|
||||||
this.emit( 'save', data.content, data.categorieshtml, data.newrevid, data.isRedirect );
|
this.emit( 'save', data.content, data.categorieshtml, data.newrevid, data.isRedirect, data.displayTitleHtml );
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue