diff options
-rw-r--r-- | phpBB/memberlist.php | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/phpBB/memberlist.php b/phpBB/memberlist.php index 7340737b2c..ddebf5124c 100644 --- a/phpBB/memberlist.php +++ b/phpBB/memberlist.php @@ -1487,17 +1487,6 @@ switch ($mode) 'WHERE' => $db->sql_in_set('u.user_id', $user_list), ); } - $sql = $db->sql_build_query('SELECT', $sql_array); - $result = $db->sql_query($sql); - - $id_cache = array(); - while ($row = $db->sql_fetchrow($result)) - { - $row['session_time'] = (!empty($session_times[$row['user_id']])) ? $session_times[$row['user_id']] : 0; - $row['last_visit'] = (!empty($row['session_time'])) ? $row['session_time'] : $row['user_lastvisit']; - - $id_cache[$row['user_id']] = $row; - } /** * Modify user data SQL before member row is created @@ -1507,8 +1496,7 @@ switch ($mode) * @var string sql_select Additional select statement * @var string sql_from Additional from statement * @var array sql_array Array containing the main query - * @var array user_list Array containing the user IDs - * @var array id_cache Temp. Array of users data + * @var array user_list Array containing list of users * @since 3.2.6-RC1 */ $vars = array( @@ -1517,10 +1505,21 @@ switch ($mode) 'sql_from', 'sql_array', 'user_list', - 'id_cache', ); extract($phpbb_dispatcher->trigger_event('core.memberlist_modify_memberrow_sql', compact($vars))); + $sql = $db->sql_build_query('SELECT', $sql_array); + $result = $db->sql_query($sql); + + $id_cache = array(); + while ($row = $db->sql_fetchrow($result)) + { + $row['session_time'] = (!empty($session_times[$row['user_id']])) ? $session_times[$row['user_id']] : 0; + $row['last_visit'] = (!empty($row['session_time'])) ? $row['session_time'] : $row['user_lastvisit']; + + $id_cache[$row['user_id']] = $row; + } + $db->sql_freeresult($result); if ($config['load_cpf_memberlist']) |