Use quickUserCan() at some possible performance hotspots (rollback links). Unlikely...
authorAaron Schulz <aaron@users.mediawiki.org>
Wed, 28 Jan 2009 23:55:17 +0000 (23:55 +0000)
committerAaron Schulz <aaron@users.mediawiki.org>
Wed, 28 Jan 2009 23:55:17 +0000 (23:55 +0000)
includes/ChangesList.php
includes/specials/SpecialContributions.php

index cc9c358..629211e 100644 (file)
@@ -326,8 +326,8 @@ class ChangesList {
                        $page = $rc->getTitle();
                        /** Check for rollback and edit permissions, disallow special pages, and only
                          * show a link on the top-most revision */
-                       if( $rc->mAttribs['rc_cur_id'] > 0 && $page->userCan('rollback') && $page->userCan('edit')
-                               && $page->getLatestRevID() == $rc->mAttribs['rc_this_oldid'] )
+                       if( $rc->mAttribs['rc_cur_id'] && $page->getLatestRevID() == $rc->mAttribs['rc_this_oldid'] 
+                               && $page->quickUserCan('rollback') && $page->quickUserCan('edit') )
                        {
                                $rev = new Revision( array(
                                        'id'        => $rc->mAttribs['rc_this_oldid'],
index 5723daf..b96a9d7 100644 (file)
@@ -485,7 +485,7 @@ class ContribsPager extends ReverseChronologicalPager {
                        if( !$row->page_is_new ) {
                                $difftext .= '(' . $sk->makeKnownLinkObj( $page, $this->messages['diff'], 'diff=0' ) . ')';
                                # Add rollback link
-                               if( $page->userCan( 'rollback') && $page->userCan( 'edit' ) ) {
+                               if( $page->quickUserCan( 'rollback') && $page->quickUserCan( 'edit' ) ) {
                                        $topmarktext .= ' '.$sk->generateRollback( $rev );
                                }
                        } else {