* (bug 3270) show put rc_id in the IRC RC url for wikis that have $wgUseRCPatrol...
authorÆvar Arnfjörð Bjarmason <avar@users.mediawiki.org>
Thu, 3 Nov 2005 11:27:10 +0000 (11:27 +0000)
committerÆvar Arnfjörð Bjarmason <avar@users.mediawiki.org>
Thu, 3 Nov 2005 11:27:10 +0000 (11:27 +0000)
includes/RecentChange.php

index 4df26d0..bc3d250 100644 (file)
@@ -104,7 +104,7 @@ class RecentChange
        # Writes the data in this object to the database
        function save()
        {
-               global $wgLocalInterwiki, $wgPutIPinRC, $wgRC2UDPAddress, $wgRC2UDPPort, $wgRC2UDPPrefix;
+               global $wgLocalInterwiki, $wgPutIPinRC, $wgRC2UDPAddress, $wgRC2UDPPort, $wgRC2UDPPrefix, $wgUseRCPatrol;
                $fname = 'RecentChange::save';
 
                $dbw =& wfGetDB( DB_MASTER );
@@ -125,6 +125,11 @@ class RecentChange
                # Insert new row
                $dbw->insert( 'recentchanges', $this->mAttribs, $fname );
 
+               if ( $wgUseRCPatrol ) {
+                       # Retrieve the id assigned by the db, but only if we'll use it later
+                       $this->mAttribs['rc_id'] = $dbw->insertId();
+               }
+
                # Update old rows, if necessary
                if ( $this->mAttribs['rc_type'] == RC_EDIT ) {
                        $oldid = $this->mAttribs['rc_last_oldid'];
@@ -422,6 +427,8 @@ class RecentChange
        }
 
        function getIRCLine() {
+               global $wgUseRCPatrol;
+
                extract($this->mAttribs);
                extract($this->mExtra);
 
@@ -434,6 +441,8 @@ class RecentChange
 
                if ( $rc_new ) {
                        $url = $titleObj->getFullURL();
+               } else if ( $wgUseRCPatrol ) {
+                       $url = $titleObj->getFullURL("diff=0&oldid=$rc_last_oldid&rcid=$rc_id");
                } else {
                        $url = $titleObj->getFullURL("diff=0&oldid=$rc_last_oldid");
                }