Zeile 233 | Zeile 233 |
---|
}
$timesearch = TIME_NOW - $mybb->settings['wolcutoff'];
|
}
$timesearch = TIME_NOW - $mybb->settings['wolcutoff'];
|
$comma = '';
| |
$guestcount = $membercount = $botcount = $anoncount = 0;
|
$guestcount = $membercount = $botcount = $anoncount = 0;
|
$onlinemembers = ''; $doneusers = array();
| $doneusers = $onlinemembers = $onlinebots = array();
$query = $db->simple_select("sessions", "COUNT(DISTINCT ip) AS guestcount", "uid = 0 AND time > $timesearch"); $guestcount = $db->fetch_field($query, "guestcount");
|
$query = $db->query("
|
$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'
| 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.uid != 0 OR SUBSTR(s.sid,4,1) = '=') AND s.time > $timesearch
|
ORDER BY {$order_by}, {$order_by2} ");
|
ORDER BY {$order_by}, {$order_by2} ");
|
| // Fetch spiders $spiders = $cache->read('spiders');
|
while($user = $db->fetch_array($query)) {
|
while($user = $db->fetch_array($query)) {
|
|
|
// Create a key to test if this user is a search bot. $botkey = my_strtolower(str_replace("bot=", '', $user['sid']));
|
// Create a key to test if this user is a search bot. $botkey = my_strtolower(str_replace("bot=", '', $user['sid']));
|
if($user['uid'] == "0") { ++$guestcount; } elseif(my_strpos($user['sid'], "bot=") !== false && $session->bots[$botkey]) { // The user is a search bot. $onlinemembers .= $comma.format_name($session->bots[$botkey], $session->botgroup); $comma = $lang->comma; ++$botcount; } else
| if($user['uid'] > 0)
|
{ if(empty($doneusers[$user['uid']]) || $doneusers[$user['uid']] < $user['time']) {
| { if(empty($doneusers[$user['uid']]) || $doneusers[$user['uid']] < $user['time']) {
|
Zeile 288 | Zeile 285 |
---|
{ $user['username'] = format_name(htmlspecialchars_uni($user['username']), $user['usergroup'], $user['displaygroup']); $user['profilelink'] = get_profile_link($user['uid']);
|
{ $user['username'] = format_name(htmlspecialchars_uni($user['username']), $user['usergroup'], $user['displaygroup']); $user['profilelink'] = get_profile_link($user['uid']);
|
eval("\$onlinemembers .= \"".$templates->get("portal_whosonline_memberbit", 1, 0)."\";"); $comma = $lang->comma;
| eval("\$onlinemembers[] = \"".$templates->get("portal_whosonline_memberbit", 1, 0)."\";");
|
} } }
|
} } }
|
}
$onlinecount = $membercount + $guestcount + $botcount;
| elseif(my_strpos($user['sid'], 'bot=') !== false && $spiders[$botkey]) { // The user is a search bot. if($mybb->settings['wolorder'] == 'username') { $key = $spiders[$botkey]['name']; } else { $key = $user['time']; }
$onlinebots[$key] = format_name($spiders[$botkey]['name'], $spiders[$botkey]['usergroup']); ++$botcount; } }
if($mybb->settings['wolorder'] == 'activity') { // activity ordering is DESC, username is ASC krsort($onlinebots); } else { ksort($onlinebots); }
$onlinemembers = array_merge($onlinebots, $onlinemembers); if(!empty($onlinemembers)) { $comma = $lang->comma." "; $onlinemembers = implode($comma, $onlinemembers); } else { $onlinemembers = ""; }
$onlinecount = $membercount + $guestcount + $botcount;
|
// If we can see invisible users add them to the count if($mybb->usergroup['canviewwolinvis'] == 1)
|
// If we can see invisible users add them to the count if($mybb->usergroup['canviewwolinvis'] == 1)
|
{
| {
|
$onlinecount += $anoncount;
|
$onlinecount += $anoncount;
|
}
| }
|
// If we can't see invisible users but the user is an invisible user incriment the count by one if($mybb->usergroup['canviewwolinvis'] != 1 && isset($mybb->user['invisible']) && $mybb->user['invisible'] == 1)
|
// If we can't see invisible users but the user is an invisible user incriment the count by one if($mybb->usergroup['canviewwolinvis'] != 1 && isset($mybb->user['invisible']) && $mybb->user['invisible'] == 1)
|
{
| {
|
++$onlinecount; }
| ++$onlinecount; }
|
Zeile 317 | Zeile 349 |
---|
$mostonline['numusers'] = $onlinecount; $mostonline['time'] = $time; $cache->update("mostonline", $mostonline);
|
$mostonline['numusers'] = $onlinecount; $mostonline['time'] = $time; $cache->update("mostonline", $mostonline);
|
}
| }
|
$recordcount = $mostonline['numusers']; $recorddate = my_date('relative', $mostonline['time']);
if($onlinecount == 1)
|
$recordcount = $mostonline['numusers']; $recorddate = my_date('relative', $mostonline['time']);
if($onlinecount == 1)
|
{
| {
|
$lang->online_users = $lang->online_user; } else
|
$lang->online_users = $lang->online_user; } else
|
{
| {
|
$lang->online_users = $lang->sprintf($lang->online_users, $onlinecount); } $lang->online_counts = $lang->sprintf($lang->online_counts, $membercount, $guestcount);
| $lang->online_users = $lang->sprintf($lang->online_users, $onlinecount); } $lang->online_counts = $lang->sprintf($lang->online_counts, $membercount, $guestcount);
|
Zeile 353 | Zeile 385 |
---|
WHERE 1=1 {$excludeforums}{$tunviewwhere} AND t.visible='1' AND t.closed NOT LIKE 'moved|%' ORDER BY t.lastpost DESC LIMIT 0, ".$mybb->settings['portal_showdiscussionsnum']
|
WHERE 1=1 {$excludeforums}{$tunviewwhere} AND t.visible='1' AND t.closed NOT LIKE 'moved|%' ORDER BY t.lastpost DESC LIMIT 0, ".$mybb->settings['portal_showdiscussionsnum']
|
);
| );
|
while($thread = $db->fetch_array($query)) { $forumpermissions[$thread['fid']] = forum_permissions($thread['fid']);
| while($thread = $db->fetch_array($query)) { $forumpermissions[$thread['fid']] = forum_permissions($thread['fid']);
|
Zeile 362 | Zeile 394 |
---|
if(isset($forumpermissions[$thread['fid']]['canonlyviewownthreads']) && $forumpermissions[$thread['fid']]['canonlyviewownthreads'] == 1 && $thread['uid'] != $mybb->user['uid']) { continue;
|
if(isset($forumpermissions[$thread['fid']]['canonlyviewownthreads']) && $forumpermissions[$thread['fid']]['canonlyviewownthreads'] == 1 && $thread['uid'] != $mybb->user['uid']) { continue;
|
}
| }
|
$lastpostdate = my_date('relative', $thread['lastpost']);
|
$lastpostdate = my_date('relative', $thread['lastpost']);
|
$lastposter = htmlspecialchars_uni($thread['lastposter']);
| if(!$thread['lastposteruid'] && !$thread['lastposter']) { $lastposter = htmlspecialchars_uni($lang->guest); } else { $lastposter = htmlspecialchars_uni($thread['lastposter']); }
|
$thread['replies'] = my_number_format($thread['replies']); $thread['views'] = my_number_format($thread['views']);
|
$thread['replies'] = my_number_format($thread['replies']); $thread['views'] = my_number_format($thread['views']);
|
|
|
// Don't link to guest's profiles (they have no profile). if($thread['lastposteruid'] == 0) {
| // Don't link to guest's profiles (they have no profile). if($thread['lastposteruid'] == 0) {
|
Zeile 377 | Zeile 416 |
---|
else { $lastposterlink = build_profile_link($lastposter, $thread['lastposteruid']);
|
else { $lastposterlink = build_profile_link($lastposter, $thread['lastposteruid']);
|
}
| }
$thread['subject'] = $thread['fullsubject'] = $parser->parse_badwords($thread['subject']);
|
if(my_strlen($thread['subject']) > 25) { $thread['subject'] = my_substr($thread['subject'], 0, 25) . "..."; }
|
if(my_strlen($thread['subject']) > 25) { $thread['subject'] = my_substr($thread['subject'], 0, 25) . "..."; }
|
$thread['subject'] = htmlspecialchars_uni($parser->parse_badwords($thread['subject']));
| $thread['subject'] = htmlspecialchars_uni($thread['subject']); $thread['fullsubject'] = htmlspecialchars_uni($thread['fullsubject']);
|
$thread['threadlink'] = get_thread_link($thread['tid']); $thread['lastpostlink'] = get_thread_link($thread['tid'], 0, "lastpost"); $thread['forumlink'] = get_forum_link($thread['fid']);
| $thread['threadlink'] = get_thread_link($thread['tid']); $thread['lastpostlink'] = get_thread_link($thread['tid'], 0, "lastpost"); $thread['forumlink'] = get_forum_link($thread['fid']);
|
Zeile 391 | Zeile 434 |
---|
$altbg = alt_trow(); } if($threadlist)
|
$altbg = alt_trow(); } if($threadlist)
|
{
| {
|
// Show the table only if there are threads eval("\$latestthreads = \"".$templates->get("portal_latestthreads")."\";"); }
| // Show the table only if there are threads eval("\$latestthreads = \"".$templates->get("portal_latestthreads")."\";"); }
|
Zeile 430 | Zeile 473 |
---|
$forum[$fid] = $f; } }
|
$forum[$fid] = $f; } }
|
|
|
$query = $db->simple_select("threads t", "COUNT(t.tid) AS threads", "t.visible='1'{$annfidswhere}{$tunviewwhere} AND t.closed NOT LIKE 'moved|%'", array('limit' => 1)); $announcementcount = $db->fetch_field($query, "threads");
| $query = $db->simple_select("threads t", "COUNT(t.tid) AS threads", "t.visible='1'{$annfidswhere}{$tunviewwhere} AND t.closed NOT LIKE 'moved|%'", array('limit' => 1)); $announcementcount = $db->fetch_field($query, "threads");
|
Zeile 499 | Zeile 542 |
---|
while($attachment = $db->fetch_array($query)) { $attachcache[$attachment['pid']][$attachment['aid']] = $attachment;
|
while($attachment = $db->fetch_array($query)) { $attachcache[$attachment['pid']][$attachment['aid']] = $attachment;
|
} }
| } }
|
if(is_array($forum)) { foreach($forum as $fid => $forumrow)
|
if(is_array($forum)) { foreach($forum as $fid => $forumrow)
|
{
| {
|
$forumpermissions[$fid] = forum_permissions($fid); } }
|
$forumpermissions[$fid] = forum_permissions($fid); } }
|
|
|
$icon_cache = $cache->read("posticons");
$query = $db->query("
| $icon_cache = $cache->read("posticons");
$query = $db->query("
|
Zeile 534 | Zeile 577 |
---|
$announcement['threadlink'] = get_thread_link($announcement['tid']); $announcement['forumlink'] = get_forum_link($announcement['fid']); $announcement['forumname'] = $forum_cache[$announcement['fid']]['name'];
|
$announcement['threadlink'] = get_thread_link($announcement['tid']); $announcement['forumlink'] = get_forum_link($announcement['fid']); $announcement['forumname'] = $forum_cache[$announcement['fid']]['name'];
|
| |
$announcement['username'] = htmlspecialchars_uni($announcement['username']);
|
$announcement['username'] = htmlspecialchars_uni($announcement['username']);
|
$announcement['threadusername'] = htmlspecialchars_uni($announcement['threadusername']);
| if(!$announcement['uid'] && !$announcement['threadusername']) { $announcement['threadusername'] = htmlspecialchars_uni($lang->guest); } else { $announcement['threadusername'] = htmlspecialchars_uni($announcement['threadusername']); }
|
if($announcement['uid'] == 0) {
| if($announcement['uid'] == 0) {
|
Zeile 589 | Zeile 638 |
---|
$plugins->run_hooks("portal_announcement");
$parser_options = array(
|
$plugins->run_hooks("portal_announcement");
$parser_options = array(
|
"allow_html" => $forum[$announcement['fid']]['allowhtml'],
| "allow_html" => $mybb->settings['announcementshtml'] && $forum[$announcement['fid']]['allowhtml'],
|
"allow_mycode" => $forum[$announcement['fid']]['allowmycode'], "allow_smilies" => $forum[$announcement['fid']]['allowsmilies'], "allow_imgcode" => $forum[$announcement['fid']]['allowimgcode'],
| "allow_mycode" => $forum[$announcement['fid']]['allowmycode'], "allow_smilies" => $forum[$announcement['fid']]['allowsmilies'], "allow_imgcode" => $forum[$announcement['fid']]['allowimgcode'],
|