From 4860e1d5ac5ae7aca2726f1261a9f5c9820071cf Mon Sep 17 00:00:00 2001 From: Aaron Schulz Date: Sun, 13 Dec 2015 04:39:24 -0800 Subject: [PATCH] Move ArticleSaveComplete hook to doCreate()/doModify() methods This makes it easier to migrate the methods to using atomic sections without having the PageContentInsertComplete hook change to ending up in separate transaction than ArticleSaveComplete. Bug: T120718 Change-Id: I492514413ec9c37c2f9343bb207798fc8e24a5a9 --- includes/page/WikiPage.php | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/includes/page/WikiPage.php b/includes/page/WikiPage.php index f290db88ff..8fb760d923 100644 --- a/includes/page/WikiPage.php +++ b/includes/page/WikiPage.php @@ -1737,13 +1737,6 @@ class WikiPage implements Page, IDBAccessObject { $status = $this->doCreate( $pstContent, $flags, $user, $summary, $meta ); } - // Trigger post-save hook - $revision = $status->value['revision']; // new revision - $hook_args = array( &$this, &$user, $pstContent, $summary, - $flags & EDIT_MINOR, null, null, &$flags, $revision, &$status, $baseRevId ); - ContentHandler::runLegacyHooks( 'ArticleSaveComplete', $hook_args ); - Hooks::run( 'PageContentSaveComplete', $hook_args ); - // Promote user to any groups they meet the criteria for DeferredUpdates::addCallableUpdate( function () use ( $user ) { $user->addAutopromoteOnceGroups( 'onEdit' ); @@ -1899,6 +1892,12 @@ class WikiPage implements Page, IDBAccessObject { $this->mTitle->invalidateCache( $now ); } + // Trigger post-save hook + $hook_args = array( &$this, &$user, $content, $summary, + $flags & EDIT_MINOR, null, null, &$flags, $revision, &$status, $meta['baseRevId'] ); + ContentHandler::runLegacyHooks( 'ArticleSaveComplete', $hook_args ); + Hooks::run( 'PageContentSaveComplete', $hook_args ); + return $status; } @@ -2007,6 +2006,12 @@ class WikiPage implements Page, IDBAccessObject { // Return the new revision to the caller $status->value['revision'] = $revision; + // Trigger post-save hook + $hook_args = array( &$this, &$user, $content, $summary, + $flags & EDIT_MINOR, null, null, &$flags, $revision, &$status, $meta['baseRevId'] ); + ContentHandler::runLegacyHooks( 'ArticleSaveComplete', $hook_args ); + Hooks::run( 'PageContentSaveComplete', $hook_args ); + return $status; } -- 2.20.1