revert r106095, fix apparently not this simple
[lhc/web/wiklou.git] / includes / specials / SpecialListusers.php
index 44c0a07..b1ff6ea 100644 (file)
@@ -3,7 +3,7 @@
  * Implements Special:Listusers
  *
  * Copyright © 2004 Brion Vibber, lcrocker, Tim Starling,
- * Domas Mituzas, Ashar Voultoiz, Jens Frank, Zhengzhu,
+ * Domas Mituzas, Antoine Musso, Jens Frank, Zhengzhu,
  * 2006 Rob Church <robchur@gmail.com>
  *
  * This program is free software; you can redistribute it and/or modify
@@ -131,24 +131,26 @@ class UsersPager extends AlphabeticPager {
                $userPage = Title::makeTitle( NS_USER, $row->user_name );
                $name = Linker::link( $userPage, htmlspecialchars( $userPage->getText() ) );
 
+               $lang = $this->getLanguage();
+
                $groups_list = self::getGroups( $row->user_id );
                if( count( $groups_list ) > 0 ) {
                        $list = array();
                        foreach( $groups_list as $group )
-                               $list[] = self::buildGroupLink( $group );
-                       $groups = $this->getLang()->commaList( $list );
+                               $list[] = self::buildGroupLink( $group, $userPage->getText() );
+                       $groups = $lang->commaList( $list );
                } else {
                        $groups = '';
                }
 
-               $item = wfSpecialList( $name, $groups );
+               $item = $lang->specialList( $name, $groups );
                if( $row->ipb_deleted ) {
                        $item = "<span class=\"deleted\">$item</span>";
                }
 
                global $wgEdititis;
                if ( $wgEdititis ) {
-                       $editCount = $this->getLang()->formatNum( $row->edits );
+                       $editCount = $lang->formatNum( $row->edits );
                        $edits = ' [' . wfMsgExt( 'usereditcount', array( 'parsemag', 'escape' ), $editCount ) . ']';
                } else {
                        $edits = '';
@@ -157,10 +159,9 @@ class UsersPager extends AlphabeticPager {
                $created = '';
                # Some rows may be NULL
                if( $row->creation ) {
-                       $d = $this->getLang()->date( wfTimestamp( TS_MW, $row->creation ), true );
-                       $t = $this->getLang()->time( wfTimestamp( TS_MW, $row->creation ), true );
-                       $created = ' (' . wfMsg( 'usercreated', $d, $t ) . ')';
-                       $created = htmlspecialchars( $created );
+                       $d = $lang->date( wfTimestamp( TS_MW, $row->creation ), true );
+                       $t = $lang->time( wfTimestamp( TS_MW, $row->creation ), true );
+                       $created = ' (' . wfMsgExt( 'usercreated', array( 'parsemag', 'escape' ), $d, $t, $row->user_name ) . ')';
                }
 
                wfRunHooks( 'SpecialListusersFormatRow', array( &$item, $row ) );
@@ -263,11 +264,8 @@ class UsersPager extends AlphabeticPager {
         * @param $group String: group name
         * @return string
         */
-       protected static function buildGroupLink( $group ) {
-               static $cache = array();
-               if( !isset( $cache[$group] ) )
-                       $cache[$group] = User::makeGroupLinkHtml( $group, htmlspecialchars( User::getGroupMember( $group ) ) );
-               return $cache[$group];
+       protected static function buildGroupLink( $group, $username ) {
+               return User::makeGroupLinkHtml( $group, htmlspecialchars( User::getGroupMember( $group, $username ) ) );
        }
 }