Online status on team page v2demo: memberlist.php?mode=leadersun: test / pw testuserAttachment:
Area51 @ 4seven.de • The team_1321492320376.png [ 47.53 KiB | Viewed 1986 times ]
update: Reduce sql requests from (count of leaders) to (1 sql request + 2 sql updates)
Instructiondownload (rightclick)
copyon.png > images/on.png
off.png > images/off.png
sqlCode:
ALTER TABLE phpbb_users ADD user_online tinyint(1) NOT NULL DEFAULT '0';
set
phpbb_
to your prefix
openmemberlist.php
findCode:
$mod_id_ary = array_unique($mod_id_ary);
after addCode:
$admin_mod_id_ary = array_merge($admin_id_ary, $global_mod_id_ary);
$admin_mod_id_ary = array_unique($admin_mod_id_ary);
$sql = 'UPDATE ' . USERS_TABLE . '
SET user_online = 0
WHERE ' . $db->sql_in_set('user_id', $admin_mod_id_ary);
$db->sql_query($sql);
$sqls = 'SELECT session_user_id
FROM ' . SESSIONS_TABLE . '
WHERE ' . $db->sql_in_set('session_user_id', $admin_mod_id_ary);
$results = $db->sql_query_limit($sqls, sizeof($admin_mod_id_ary));
while ($rows = $db->sql_fetchrow($results))
{
$rows_user_id[] = $rows['session_user_id'];
}
$db->sql_freeresult($results);
if(!empty($rows_user_id))
{
$rows_user_id = array_unique($rows_user_id);
$sql = 'UPDATE ' . USERS_TABLE . '
SET user_online = 1
WHERE ' . $db->sql_in_set('user_id', $rows_user_id);
$db->sql_query($sql);
}
findCode:
u.user_posts, u.user_allow_pm,
replace withCode:
u.user_posts, u.user_allow_pm, u.user_online,
findCode:
$template->assign_block_vars($which_row, array(
'USER_ID' => $row['user_id'],
after addCode:
'S_USER_ON' => ($row['user_online'] == 1) ? true : false,
openstyles/prosilver/template/memberlist_leaders.html
findCode:
<td><!-- IF admin.RANK_IMG -->
replace withCode:
<td><!-- IF admin.S_USER_ON --><img src="images/on.png" style="position:relative;top:4px;" alt="" /><!-- ELSE --><img src="images/off.png" style="position:relative;top:4px;" alt="" /><!-- ENDIF --><!-- IF admin.RANK_IMG -->
findCode:
<td><!-- IF mod.RANK_IMG -->
replace withCode:
<td><!-- IF mod.S_USER_ON --><img src="images/on.png" style="position:relative;top:4px;" alt="" /><!-- ELSE --><img src="images/off.png" style="position:relative;top:4px;" alt="" /><!-- ENDIF --><!-- IF mod.RANK_IMG -->
Clear all Caches