Quote:
Originally Posted by ambrosious
I understand you got the "Who's online in chat" working correctly. Could you please post what you did?
|
Well, here is that part of the code, from my index.php:
PHP Code:
// Get the users in vBChat
$vbchat_users = array();
$chatusers=0;
while ($loggedin = $DB_site->fetch_array($forumusers))
{
$userid = $loggedin['userid'];
if (!$userid)
{ // Guest
$numberguest++;
$inforum["$loggedin[inforum]"]++;
}
else if (empty($userinfos["$userid"]) OR ($userinfos["$userid"]['lastactivity'] < $loggedin['lastactivity']))
{
$userinfos["$userid"] = $loggedin;
}
if(preg_match("/vBChat.php/",$loggedin['location']) && $loggedin['userid']){
$vbchat_users[$loggedin['userid']] = $loggedin;
}
}
// Configure Peeps In vBChat
$invBChat = "";
if(is_array($vbchat_users)){
foreach($vbchat_users as $invbc){
if($invBChat == ""){
$extra = "";
} else {
$extra = ", ";
}
// Get Username Style
$invbc['musername'] = fetch_musername($invbc);
$invBChat .= "{$extra}<a href='member.php?{$session['sessionurl']}&u={$invbc['userid']}'>{$invbc['musername']}</a>";
$chatusers = $chatusers+1;
}
}
if($invBChat == ""){
$invBChat = "<i>No one is currently inside vBChat</i>";
}
foreach($userinfos AS $userid => $loggedin)
{
$numberregistered++;
if ($userid != $bbuserinfo['userid'])
{
$inforum["$loggedin[inforum]"]++;
}
$loggedin['musername'] = fetch_musername($loggedin);
if (fetch_online_status($loggedin))
{
$numbervisible++;
eval('$activeusers .= ", ' . fetch_template('forumhome_loggedinuser') . '";');
}
}
// memory saving
unset($userinfos, $loggedin);
$activeusers = substr($activeusers , 2); // get rid of initial comma
You may use the variable $chatusers in the forum home page, to show you how many users there are in the chat.
rgds