* (bug 153) Adjust thumbnail size calculations to match consistently;
[lhc/web/wiklou.git] / includes / RecentChange.php
index 4df26d0..2f03675 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);
 
@@ -432,8 +439,12 @@ class RecentChange
                $title = $titleObj->getPrefixedText();
                $title = str_replace($bad, $empty, $title);
 
-               if ( $rc_new ) {
+               if ( $rc_new && $wgUseRCPatrol ) {
+                       $url = $titleObj->getFullURL("rcid=$rc_id");
+               } else 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");
                }