Partial revert of r32982; old Title method is fine here
[lhc/web/wiklou.git] / includes / LogEventsList.php
index e8b7b2e..dff59b6 100644 (file)
@@ -51,7 +51,7 @@ class LogEventsList {
        public function showHeader( $out, $type ) {
                if( LogPage::isLogType( $type ) ) {
                        $out->setPageTitle( LogPage::logName( $type ) );
-                       $out->addWikiText( LogPage::logHeader( $type ) );
+                       $out->addHtml( LogPage::logHeader( $type ) );
                }
        }
 
@@ -159,8 +159,8 @@ class LogEventsList {
                if( self::isDeleted($row,LogPage::DELETED_USER) ) {
                        $userLink = '<span class="history-deleted">' . wfMsgHtml( 'rev-deleted-user' ) . '</span>';
                } else {
-                       $userLink = $this->skin->userLink( $row->log_user, $row->user_name );
-                               $this->skin->userToolLinks( $row->log_user, $row->user_name );
+                       $userLink = $this->skin->userLink( $row->log_user, $row->user_name ) .
+                               $this->skin->userToolLinks( $row->log_user, $row->user_name, true, 0, $row->user_editcount );
                }
                // Comment
                if( self::isDeleted($row,LogPage::DELETED_COMMENT) ) {
@@ -386,8 +386,12 @@ class LogPager extends ReverseChronologicalPager {
                $this->limitType( $type );
                $this->limitUser( $user );
                $this->limitTitle( $title, $pattern );
-               # Hack to recognize subpage parameter
-               $_GET['type'] = $type;
+       }
+       
+       function getDefaultQuery() {
+               $query = parent::getDefaultQuery();
+               $query['type'] = $this->type;
+               return $query;
        }
        
        /**
@@ -427,15 +431,15 @@ class LogPager extends ReverseChronologicalPager {
                if( is_null($usertitle) ) {
                        return false;
                }
-               $this->user = $usertitle->getText();
                /* Fetch userid at first, if known, provides awesome query plan afterwards */
-               $userid = User::idFromName( $this->user );
+               $userid = User::idFromName( $name );
                if( !$userid ) {
                        /* It should be nicer to abort query at all, 
                           but for now it won't pass anywhere behind the optimizer */
                        $this->mConds[] = "NULL";
                } else {
                        $this->mConds['log_user'] = $userid;
+                       $this->user = $usertitle->getText();
                }
        }
 
@@ -453,13 +457,13 @@ class LogPager extends ReverseChronologicalPager {
                        return false;
                
                $this->title = $title->getPrefixedText();
-               $this->pattern = $pattern;
                $ns = $title->getNamespace();
                if( $pattern && !$wgMiserMode ) {
                        # use escapeLike to avoid expensive search patterns like 't%st%'
                        $safetitle = $this->mDb->escapeLike( $title->getDBkey() );
                        $this->mConds['log_namespace'] = $ns;
                        $this->mConds[] = "log_title LIKE '$safetitle%'";
+                       $this->pattern = $pattern;
                } else {
                        $this->mConds['log_namespace'] = $ns;
                        $this->mConds['log_title'] = $title->getDBkey();
@@ -481,8 +485,8 @@ class LogPager extends ReverseChronologicalPager {
                }
                return array(
                        'tables' => array( 'logging', 'user' ),
-                       'fields' => array( 'log_type', 'log_action', 'log_user', 'log_namespace', 'log_title', 
-                               'log_params', 'log_comment', $log_id, 'log_deleted', 'log_timestamp', 'user_name' ),
+                       'fields' => array( 'log_type', 'log_action', 'log_user', 'log_namespace', 'log_title', 'log_params', 
+                               'log_comment', $log_id, 'log_deleted', 'log_timestamp', 'user_name', 'user_editcount' ),
                        'conds' => $this->mConds,
                        'options' => $index
                );
@@ -495,14 +499,16 @@ class LogPager extends ReverseChronologicalPager {
        function getStartBody() {
                wfProfileIn( __METHOD__ );
                # Do a link batch query
-               $lb = new LinkBatch;
-               while( $row = $this->mResult->fetchObject() ) {
-                       $lb->add( $row->log_namespace, $row->log_title );
-                       $lb->addObj( Title::makeTitleSafe( NS_USER, $row->user_name ) );
-                       $lb->addObj( Title::makeTitleSafe( NS_USER_TALK, $row->user_name ) );
+               if( $this->getNumRows() > 0 ) {
+                       $lb = new LinkBatch;
+                       while( $row = $this->mResult->fetchObject() ) {
+                               $lb->add( $row->log_namespace, $row->log_title );
+                               $lb->addObj( Title::makeTitleSafe( NS_USER, $row->user_name ) );
+                               $lb->addObj( Title::makeTitleSafe( NS_USER_TALK, $row->user_name ) );
+                       }
+                       $lb->execute();
+                       $this->mResult->seek( 0 );
                }
-               $lb->execute();
-               $this->mResult->seek( 0 );
                wfProfileOut( __METHOD__ );
                return '';
        }