From a9a27ee5693b45716cb666a225387f5b2c552282 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Sun, 13 Mar 2005 00:34:04 +0000 Subject: [PATCH] Change title move redirect creation to use Revision and Article to save --- includes/Article.php | 2 ++ includes/Title.php | 68 +++++++++++--------------------------------- 2 files changed, 18 insertions(+), 52 deletions(-) diff --git a/includes/Article.php b/includes/Article.php index c885c59982..f45e090687 100644 --- a/includes/Article.php +++ b/includes/Article.php @@ -732,6 +732,8 @@ class Article { ), $fname ); $newid = $dbw->insertId(); + $this->mTitle->resetArticleId( $newid ); + wfProfileOut( $fname ); return $newid; } diff --git a/includes/Title.php b/includes/Title.php index 9ac3be5243..3767b32fea 100644 --- a/includes/Title.php +++ b/includes/Title.php @@ -1487,32 +1487,14 @@ class Title { # Recreate the redirect, this time in the other direction. $redirectText = $wgMwRedir->getSynonym( 0 ) . ' [[' . $nt->getPrefixedText() . "]]\n"; - $dbw->insert( 'revision', array( - 'rev_id' => $dbw->nextSequenceValue('rev_rev_id_seq'), - 'rev_comment' => $comment, - 'rev_user' => $wgUser->getID(), - 'rev_user_text' => $wgUser->getName(), - 'rev_timestamp' => $now - ), $fname - ); - $revid = $dbw->insertId(); - $dbw->insert( 'text', array( - 'old_id' => $revid, - 'old_flags' => '', - 'old_text' => $redirectText, - ), $fname - ); - $dbw->insert( 'page', array( - 'page_id' => $dbw->nextSequenceValue('page_page_id_seq'), - 'page_namespace' => $this->getNamespace(), - 'page_title' => $this->getDBkey(), - 'page_touched' => $now, - 'page_is_redirect' => 1, - 'page_random' => $rand, - 'page_is_new' => 1, - 'page_latest' => $revid), $fname - ); - $newid = $dbw->insertId(); + $redirectArticle = new Article( $this ); + $newid = $redirectArticle->insertOn( $dbw ); + $redirectRevision = new Revision( array( + 'page' => $newid, + 'comment' => $comment, + 'text' => $redirectText ) ); + $revid = $redirectRevision->insertOn( $dbw ); + $redirectArticle->updateRevisionOn( $dbw, $revid, $redirectText, 0 ); $wgLinkCache->clearLink( $this->getPrefixedDBkey() ); # Record in RC @@ -1614,32 +1596,14 @@ class Title { # Insert redirect $redirectText = $wgMwRedir->getSynonym( 0 ) . ' [[' . $nt->getPrefixedText() . "]]\n"; - $dbw->insert( 'revision', array( - 'rev_id' => $dbw->nextSequenceValue('rev_rev_id_seq'), - 'rev_comment' => $comment, - 'rev_user' => $wgUser->getID(), - 'rev_user_text' => $wgUser->getName(), - 'rev_timestamp' => $now - ), $fname - ); - $revid = $dbw->insertId(); - $dbw->insert( 'text', array( - 'old_id' => $revid, - 'old_flags' => '', - 'old_text' => $redirectText - ), $fname - ); - $dbw->insert( 'page', array( - 'page_id' => $dbw->nextSequenceValue('page_page_id_seq'), - 'page_namespace' => $this->getNamespace(), - 'page_title' => $this->getDBkey(), - 'page_touched' => $now, - 'page_is_redirect' => 1, - 'page_random' => $rand, - 'page_is_new' => 1, - 'page_latest' => $revid), $fname - ); - $newid = $dbw->insertId(); + $redirectArticle = new Article( $this ); + $newid = $redirectArticle->insertOn( $dbw ); + $redirectRevision = new Revision( array( + 'page' => $newid, + 'comment' => $comment, + 'text' => $redirectText ) ); + $revid = $redirectRevision->insertOn( $dbw ); + $redirectArticle->updateRevisionOn( $dbw, $revid, $redirectText, 0 ); $wgLinkCache->clearLink( $this->getPrefixedDBkey() ); // attach revision to the new page -- 2.20.1