<?php
define("IN_MYBB", 1);
define("NO_ONLINE", 1);
require "./global.php";
// Get the online users.
    $timesearch = time() - $mybb->settings['wolcutoffmins']*60;
    $comma = '';
    $query = $db->query("
        SELECT s.sid, s.ip, s.uid, s.time, s.location, u.username, u.invisible, u.usergroup, u.displaygroup
        FROM ".TABLE_PREFIX."sessions s
        LEFT JOIN ".TABLE_PREFIX."users u ON (s.uid=u.uid)
        WHERE s.time>'$timesearch'
        ORDER BY u.username ASC, s.time DESC
    ");
    $membercount = 0;
    $onlinemembers = '';
    $guestcount = 0;
    $anoncount = 0;
    $doneusers = array();
    // Loop through all users.
    while($user = $db->fetch_array($query))
    {
        // Create a key to test if this user is a search bot.
        $botkey = strtolower(str_replace("bot=", '', $user['sid']));
        // Decide what type of user we are dealing with.
        if($user['uid'] > 0)
        {
            // The user is registered.
            if($doneusers[$user['uid']] < $user['time'] || !$doneusers[$user['uid']])
            {
                // If the user is logged in anonymously, update the count for that.
                if($user['invisible'] == "yes")
                {
                    ++$anoncount;
                }
                ++$membercount;
                if($user['invisible'] != "yes" || $mybb->usergroup['canviewwolinvis'] == "yes" || $user['uid'] == $mybb->user['uid'])
                {
                    // If this usergroup can see anonymously logged-in users, mark them.
                    if($user['invisible'] == "yes")
                    {
                        $invisiblemark = "*";
                    }
                    else
                    {
                        $invisiblemark = '';
                    }
                    // Properly format the username and assign the template.
                    $user['username'] = format_name($user['username'], $user['usergroup'], $user['displaygroup']);
                    eval("\$onlinemembers .= \"".$templates->get("index_whosonline_memberbit", 1, 0)."\";");
                    $comma = ", ";
                }
                // This user has been handled.
                $doneusers[$user['uid']] = $user['time'];
            }
        }
        elseif(strstr($user['sid'], "bot=") !== false && $session->bots[$botkey])
        {
            // The user is a search bot.
            $onlinemembers .= $comma.format_name($session->bots[$botkey], $session->botgroup);
            $comma = ", ";
            ++$botcount;
        }
        else
        {
            // The user is a guest.
            ++$guestcount;
        }
    }
echo $onlinemembers;
?>