File size: 8.53Kb
<?php
/*
////////////////////////////////////////////////////////////////////////////////
// JohnCMS Content Management System //
// Официальный сайт сайт проекта: http://johncms.com //
// Дополнительный сайт поддержки: http://gazenwagen.com //
////////////////////////////////////////////////////////////////////////////////
// JohnCMS core team: //
// Евгений Рябинин aka john77 john77@gazenwagen.com //
// Олег Касьянов aka AlkatraZ alkatraz@gazenwagen.com //
// //
// Информацию о версиях смотрите в прилагаемом файле version.txt //
////////////////////////////////////////////////////////////////////////////////
*/
defined('_IN_JOHNCMS') or die('Error: restricted access');
$textl = 'Кто в форуме?';
$headmod = $id ? 'forum,' . $id : 'forumwho';
require_once('../incfiles/head.php');
$onltime = $realtime - 300;
if (!$user_id) {
header('Location: index.php');
exit;
}
// Ссылка на Новые темы
forum_new(1);
$do = isset($_GET['do']) ? $_GET['do'] : '';
if ($id) {
////////////////////////////////////////////////////////////
// Показываем общий список тех, кто в вбранной теме //
////////////////////////////////////////////////////////////
$req = mysql_query("SELECT `text` FROM `forum` WHERE `id` = '$id' AND `type` = 't' LIMIT 1");
if (mysql_num_rows($req)) {
$res = mysql_fetch_assoc($req);
echo '<div class="phdr"><b>Кто в теме</b> "' . $res['text'] . '"</div>';
echo '<div class="bmenu">Список ' . ($do == 'guest' ? 'гостей' : 'авторизованных') . '</div>';
$total = mysql_result(mysql_query("SELECT COUNT(*) FROM `" . ($do == 'guest' ? 'cms_guests' : 'users') . "` WHERE `lastdate` > $onltime AND `place` = 'forum,$id'"), 0);
if ($total) {
$req =
mysql_query("SELECT * FROM `" . ($do == 'guest' ? 'cms_guests' : 'users') . "` WHERE `lastdate` > $onltime AND `place` = 'forum,$id' ORDER BY " . ($do == 'guest' ? "`movings` DESC" : "`name` ASC") . " LIMIT $start, $kmess");
while ($res = mysql_fetch_assoc($req)) {
echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';
$set_user['avatar'] = 0;
echo show_user($res, 0, ($act == 'guest' || ($rights >= 1 && $rights >= $res['rights']) ? 1 : 0));
echo '</div>';
++$i;
}
} else {
echo '<div class="menu"><p>Никого нет</p></div>';
}
} else {
header('Location: index.php');
}
echo '<div class="phdr">Всего: ' . $total . '</div>';
echo '<p><a href="index.php?id=' . $id . '&act=who' . ($do == 'guest' ? '">Показать авторизованных' : '&do=guest">Показать гостей') . '</a><br /><a href="index.php?id=' . $id . '">В тему</a></p>';
} else {
////////////////////////////////////////////////////////////
// Показываем общий список тех, кто в форуме //
////////////////////////////////////////////////////////////
echo '<div class="phdr"><b>Кто в форуме</b></div>';
echo '<div class="bmenu">Список ' . ($do == 'guest' ? 'гостей' : 'авторизованных') . '</div>';
$total = mysql_result(mysql_query("SELECT COUNT(*) FROM `" . ($do == 'guest' ? "cms_guests" : "users") . "` WHERE `lastdate` > $onltime AND `place` LIKE 'forum%'"), 0);
if ($total) {
$req = mysql_query("SELECT * FROM `" . ($do == 'guest' ? "cms_guests" : "users") . "` WHERE `lastdate` > $onltime AND `place` LIKE 'forum%' ORDER BY " . ($do == 'guest' ? "`movings` DESC" : "`name` ASC") . " LIMIT $start, $kmess");
while ($res = mysql_fetch_assoc($req)) {
echo ($i % 2) ? '<div class="list2">' : '<div class="list1">';
// Вычисляем местоположение
$place = '';
switch ($res['place']) {
case 'forum':
$place = '<a href="index.php">на главной форума</a>';
break;
case 'forumwho':
$place = 'тут, в списке';
break;
case 'forumfiles':
$place = '<a href="index.php?act=files">смотрит файлы форума</a>';
break;
case 'forumnew':
$place = '<a href="index.php?act=new">смотрит непрочитанное</a>';
break;
case 'forumsearch':
$place = '<a href="search.php">поиск форума</a>';
break;
case 'forumlaw':
$place = '<a href="index.php?act=read">читает правила форума</a>';
break;
case 'forummod':
$place = '<a href="index.php?act=moders">смотрит список модеров</a>';
break;
case 'forumfaq':
$place = '<a href="index.php?act=faq">смотрит FAQ</a>';
break;
default:
$where = explode(",", $res['place']);
if ($where[0] == 'forum' && intval($where[1])) {
$req_t = mysql_query("SELECT `type`, `refid`, `text` FROM `forum` WHERE `id` = '$where[1]' LIMIT 1");
if (mysql_num_rows($req_t)) {
$res_t = mysql_fetch_assoc($req_t);
$link = '<a href="index.php?id=' . $where[1] . '">' . $res_t['text'] . '</a>';
switch ($res_t['type']) {
case 'f':
$place = 'в категории "' . $link . '"';
break;
case 'r':
$place = 'в разделе "' . $link . '"';
break;
case 't':
$place = (isset($where[2]) ? 'пишет в тему "' : 'в теме "') . $link . '"';
break;
case 'm':
$req_m = mysql_query("SELECT `text` FROM `forum` WHERE `id` = '" . $res_t['refid'] . "' AND `type` = 't' LIMIT 1");
if (mysql_num_rows($req_m)) {
$res_m = mysql_fetch_assoc($req_m);
$place = (isset($where[2]) ? 'отвечает в теме' : 'в теме') . ' "<a href="index.php?id=' . $res_t['refid'] . '">' . $res_m['text'] . '</a>"';
}
break;
}
}
}
}
echo show_user($res, 0, ($act == 'guest' || ($rights >= 1 && $rights >= $res['rights']) ? 1 : 0), '<br /><img src="../images/info.png" width="16" height="16" align="middle" /> ' . $place);
echo '</div>';
++$i;
}
} else {
echo '<div class="menu"><p>Никого нет</p></div>';
}
echo '<div class="phdr">Всего: ' . $total . '</div>';
if ($total > 10) {
echo '<p>' . pagenav('index.php?act=who&' . ($do == 'guest' ? 'do=guest&' : ''), $start, $total, $kmess) . '</p>';
echo '<p><form action="index.php?act=who' . ($do == 'guest' ? '&do=guest' : '') . '" method="post"><input type="text" name="page" size="2"/><input type="submit" value="К странице >>"/></form></p>';
}
echo '<p><a href="index.php?act=who' . ($do == 'guest' ? '">Показать авторизованных' : '&do=guest">Показать гостей') . '</a><br /><a href="index.php">В форум</a></p>';
}
require_once('../incfiles/end.php');
?>