https://www.mediawiki.org/wiki/Special:Code/MediaWiki/114951

Revision: 114951
Author:   bsitu
Date:     2012-04-18 00:37:58 +0000 (Wed, 18 Apr 2012)
Log Message:
-----------
Capture new pages created as a redirect from pageMove

Modified Paths:
--------------
    trunk/extensions/PageTriage/PageTriage.hooks.php

Modified: trunk/extensions/PageTriage/PageTriage.hooks.php
===================================================================
--- trunk/extensions/PageTriage/PageTriage.hooks.php    2012-04-18 00:15:24 UTC 
(rev 114950)
+++ trunk/extensions/PageTriage/PageTriage.hooks.php    2012-04-18 00:37:58 UTC 
(rev 114951)
@@ -12,24 +12,36 @@
         * @param $newTitle: new title object
         * @return bool
         */
-       public static function onSpecialMovepageAfterMove( $movePage, 
&$oldTitle, &$newTitle ) {
-               $pageId = $newTitle->getArticleID();
+       public static function onSpecialMovepageAfterMove( $movePage, 
&$oldTitle, &$newTitle ) {                
+               $pendindId = array();
 
                if ( $newTitle->getNamespace() === NS_MAIN ) {
-                       // New record, compile all data
+                       $pageId = $newTitle->getArticleID();
+                       // New record added to pagetriage queue, compile all 
data
                        if ( self::addToPageTriageQueue( $pageId, $newTitle ) ) 
{
-                               $component = '';
+                               $pendindId[] = $pageId;
                        } else {
-                               $component = 'BasicData';
+                               $acp = ArticleCompileProcessor::newFromPageId( 
array( $pageId ) );
+                               if ( $acp ) {
+                                       $acp->registerComponent( 'BasicData' );
+                                       $acp->compileMetadata();
+                               }
                        }
+               }
 
-                       $acp = ArticleCompileProcessor::newFromPageId( array( 
$pageId ) );
+               // check if there is a new page id for redirect left behind
+               $oldPageId = $oldTitle->getArticleID();
+               if ( $oldPageId ) {
+                       self::addToPageTriageQueue( $oldPageId, $oldTitle );
+                       $pendindId[] = $oldPageId;
+               }
+
+               if ( $pendindId ) {             
+                       $acp = ArticleCompileProcessor::newFromPageId( 
$pendindId );
                        if ( $acp ) {
-                               $acp->registerComponent( $component );
                                $acp->compileMetadata();
                        }
                }
-
                return true;
        }
 


_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to