* @file
*/
+use MediaWiki\Edit\PreparedEdit;
use \MediaWiki\Logger\LoggerFactory;
use \MediaWiki\MediaWikiServices;
use Wikimedia\Rdbms\FakeResultWrapper;
public $mLatest = false; // !< Integer (false means "not loaded")
/**@}}*/
- /** @var stdClass Map of cache fields (text, parser output, ect) for a proposed/new edit */
+ /** @var PreparedEdit Map of cache fields (text, parser output, ect) for a proposed/new edit */
public $mPreparedEdit = false;
/**
* Determine whether a page would be suitable for being counted as an
* article in the site_stats table based on the title & its content
*
- * @param object|bool $editInfo (false): object returned by prepareTextForEdit(),
+ * @param PreparedEdit|bool $editInfo (false): object returned by prepareTextForEdit(),
* if false, the current database state will be used
* @return bool
*/
* @return bool
*/
public function updateIfNewerOn( $dbw, $revision ) {
-
$row = $dbw->selectRow(
[ 'revision', 'page' ],
[ 'rev_id', 'rev_timestamp', 'page_is_redirect' ],
public function replaceSectionContent(
$sectionId, Content $sectionContent, $sectionTitle = '', $edittime = null
) {
-
$baseRevId = null;
if ( $edittime && $sectionId !== 'new' ) {
$dbr = wfGetDB( DB_REPLICA );
public function replaceSectionAtRev( $sectionId, Content $sectionContent,
$sectionTitle = '', $baseRevId = null
) {
-
if ( strval( $sectionId ) === '' ) {
// Whole-page edit; let the whole text through
$newContent = $sectionContent;
$meta = [
'bot' => ( $flags & EDIT_FORCE_BOT ),
'minor' => ( $flags & EDIT_MINOR ) && $user->isAllowed( 'minoredit' ),
- 'serialized' => $editInfo->pst,
+ 'serialized' => $pstContent->serialize( $serialFormat ),
'serialFormat' => $serialFormat,
'baseRevId' => $baseRevId,
'oldRevision' => $old_revision,
/**
* Prepare content which is about to be saved.
- * Returns a stdClass with source, pst and output members
+ *
+ * Prior to 1.30, this returned a stdClass object with the same class
+ * members.
*
* @param Content $content
* @param Revision|int|null $revision Revision object. For backwards compatibility, a
* @param string|null $serialFormat
* @param bool $useCache Check shared prepared edit cache
*
- * @return object
+ * @return PreparedEdit
*
* @since 1.21
*/
$popts = ParserOptions::newFromUserAndLang( $user, $wgContLang );
Hooks::run( 'ArticlePrepareTextForEdit', [ $this, $popts ] );
- $edit = (object)[];
+ $edit = new PreparedEdit();
if ( $cachedEdit ) {
$edit->timestamp = $cachedEdit->timestamp;
} else {
}
// Clear caches
- WikiPage::onArticleDelete( $this->mTitle );
+ self::onArticleDelete( $this->mTitle );
ResourceLoaderWikiModule::invalidateModuleCache(
$this->mTitle, $revision, null, wfWikiID()
);
HTMLFileCache::clearFileCache( $title );
$revid = $revision ? $revision->getId() : null;
- DeferredUpdates::addCallableUpdate( function() use ( $title, $revid ) {
+ DeferredUpdates::addCallableUpdate( function () use ( $title, $revid ) {
InfoAction::invalidateCache( $title, $revid );
} );
}