<?php
require('../incfiles/core.php');
$lng_forum = core::load_lng('forum');
if (isset($_SESSION['ref']))
/*
-----------------------------------------------------------------
Настройки форума
-----------------------------------------------------------------
*/
'farea' => 0,
'upfp' => 0,
'preview' => 1,
'postclip' => 1,
'postcut' => 2
);
/*
-----------------------------------------------------------------
Список расширений файлов, разрешенных к выгрузке
-----------------------------------------------------------------
*/
// Файлы архивов
'zip',
'rar',
'7z',
'tar',
'gz',
'apk'
);
// Звуковые файлы
'mp3',
'amr'
);
// Файлы документов и тексты
'txt',
'pdf',
'doc',
'rtf',
'djvu',
'xls'
);
// Файлы Java
'jar',
'jad'
);
// Файлы картинок
'jpg',
'jpeg',
'gif',
'png',
'bmp'
);
// Файлы SIS
'sis',
'sisx'
);
// Файлы видео
'3gp',
'avi',
'flv',
'mpeg',
'mp4'
);
// Файлы Windows
'exe',
'msi'
);
// Другие типы файлов (что не перечислены выше)
$ext_other = array('wmf');
/*
-----------------------------------------------------------------
Ограничиваем доступ к Форуму
-----------------------------------------------------------------
*/
$error = '';
if (!$set['mod_forum'] && $rights < 7)
$error = $lng_forum['forum_closed'];
elseif ($set['mod_forum'] == 1 && !$user_id)
$error = $lng['access_guest_forbidden'];
if ($error) {
require('../incfiles/head.php');
echo '<div class="rmenu"><p>' . $error . '</p></div>';
require('../incfiles/end.php');
}
$headmod = $id ? 'forum,' . $id : 'forum';
/*
-----------------------------------------------------------------
Заголовки страниц форума
-----------------------------------------------------------------
*/
$textl = '' . $lng['forum'] . '';
} else {
$req = mysql_query("SELECT `text` FROM `forum` WHERE `id`= '" . $id . "'"); '"' => '',
'&' => '',
'<' => '',
'>' => '',
''' => ''
));
$hdr = functions::checkout($hdr);
$textl = mb_strlen($res['text']) > 30 ?
$hdr . '...' : $hdr; }
/*
-----------------------------------------------------------------
Переключаем режимы работы
-----------------------------------------------------------------
*/
'addfile',
'addvote',
'close',
'deltema',
'delvote',
'editpost',
'editvote',
'file',
'files',
'filter',
'loadtem',
'massdel',
'new',
'nt',
'per',
'post',
'ren',
'restore',
'say',
'tema',
'users',
'vip',
'vote',
'who',
'curators',
'rahmat'
);
require('includes/' . $mods[$key] . '.php');
} else {
require('../incfiles/head.php');
/*
-----------------------------------------------------------------
Если форум закрыт, то для Админов выводим напоминание
-----------------------------------------------------------------
*/
if (!$set['mod_forum']) echo '<div class="alarm">' . $lng_forum['forum_closed'] . '</div>';
elseif ($set['mod_forum'] == 3) echo '<div class="rmenu">' . $lng['read_only'] . '</div>';
if (!$user_id) {
if (isset($_GET['newup'])) $_SESSION['uppost'] = 1;
if (isset($_GET['newdown'])) $_SESSION['uppost'] = 0;
}
if ($id) {
/*
-----------------------------------------------------------------
Определяем тип запроса (каталог, или тема)
-----------------------------------------------------------------
*/
$type = mysql_query("SELECT * FROM `forum` WHERE `id`= '$id'"); // Если темы не существует, показываем ошибку
echo functions::display_error($lng_forum['error_topic_deleted'], '<a href="index.php">' . $lng['to_forum'] . '</a>');
require('../incfiles/end.php');
}
/*
-----------------------------------------------------------------
Фиксация факта прочтения Топика
-----------------------------------------------------------------
*/
if ($user_id && $type1['type'] == 't') {
$req_r = mysql_query("SELECT * FROM `cms_forum_rdm` WHERE `topic_id` = '$id' AND `user_id` = '$user_id' LIMIT 1"); if ($type1['time'] > $res_r['time'])
mysql_query("UPDATE `cms_forum_rdm` SET `time` = '" . time() . "' WHERE `topic_id` = '$id' AND `user_id` = '$user_id' LIMIT 1"); } else {
mysql_query("INSERT INTO `cms_forum_rdm` SET `topic_id` = '$id', `user_id` = '$user_id', `time` = '" . time() . "'"); }
}
/*
-----------------------------------------------------------------
Получаем структуру форума
-----------------------------------------------------------------
*/
$res = true;
$parent = $type1['refid'];
while ($parent != '0' && $res != false) {
$req = mysql_query("SELECT * FROM `forum` WHERE `id` = '$parent' LIMIT 1"); if ($res['type'] == 'f' || $res['type'] == 'r')
$tree[] = '<a href="index.php?id=' . $parent . '">' . $res['text'] . '</a>';
$parent = $res['refid'];
}
$tree[] = '<a href="index.php">' . $lng['forum'] . '</a>';
if ($type1['type'] != 't' && $type1['type'] != 'm')
$tree[] = '<b>' . $type1['text'] . '</b>';
/*
-----------------------------------------------------------------
Счетчик файлов и ссылка на них
-----------------------------------------------------------------
*/
$sql = ($rights == 9) ? "" : " AND `del` != '1'";
if ($type1['type'] == 'f') {
if ($count > 0)
$filelink = '<a href="index.php?act=files&c=' . $id . '">' . $lng_forum['files_category'] . '</a>';
} elseif ($type1['type'] == 'r') {
if ($count > 0)
$filelink = '<a href="index.php?act=files&s=' . $id . '">' . $lng_forum['files_section'] . '</a>';
} elseif ($type1['type'] == 't') {
if ($count > 0)
$filelink = '<a href="index.php?act=files&t=' . $id . '">' . $lng_forum['files_topic'] . '</a>';
}
$filelink = isset($filelink) ?
$filelink . ' <span class="red">(' . $count . ')</span>' : false;
/*
-----------------------------------------------------------------
Счетчик "Кто в теме?"
-----------------------------------------------------------------
*/
$wholink = false;
if ($user_id && $type1['type'] == 't') {
$online_u = mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `lastdate` > " . (time() - 1000) . " AND `place` = 'forum,$id'"), 0); $online_g = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_sessions` WHERE `lastdate` > " . (time() - 1000) . " AND `place` = 'forum,$id'"), 0);
$wholink = '<a href="index.php?act=who&id=' . $id . '">' . $lng_forum['who_here'] . '?</a> <span class="red">(' . $online_u . ' / ' . $online_g . ')</span>';
}
/*
-----------------------------------------------------------------
Выводим верхнюю панель навигации
-----------------------------------------------------------------
*/
echo '<p>' . counters::forum_new(1) . '</p>' .
'<div class="phdr">' . functions::display_menu($tree) . '</div>' .
'<div class="topmenu"><a href="search.php?id=' . $id . '">' . $lng['search'] . '</a>' . ($filelink ? ' | ' . $filelink : '') . ($wholink ? ' | ' . $wholink : '') . '</div>';
/*
-----------------------------------------------------------------
Отрбражаем содержимое форума
-----------------------------------------------------------------
*/
switch ($type1['type']) {
case 'f':
/*
-----------------------------------------------------------------
Список разделов форума
-----------------------------------------------------------------
*/
$req = mysql_query("SELECT `id`, `text`, `soft` FROM `forum` WHERE `type`='r' AND `refid`='$id' ORDER BY `realid`"); if ($total) {
$i = 0;
echo $i % 2 ? '<div class="list2">' : '<div class="list1">';
$coltem = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type` = 't' AND `refid` = '" . $res['id'] . "'"), 0); echo '<a href="?id=' . $res['id'] . '">' . $res['text'] . '</a>';
if ($coltem)
echo " [$coltem]";
if (!empty($res['soft'])) echo '<div class="sub"><span class="gray">' . $res['soft'] . '</span></div>';
echo '</div>';
++$i;
}
unset($_SESSION['fsort_id']); unset($_SESSION['fsort_users']); } else {
echo '<div class="menu"><p>' . $lng_forum['section_list_empty'] . '</p></div>';
}
echo '<div class="phdr">' . $lng['total'] . ': ' . $total . '</div>';
break;
case 'r':
/*
-----------------------------------------------------------------
Список топиков
-----------------------------------------------------------------
*/
$total = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='t' AND `refid`='$id'" . ($rights >= 7 ?
'' : " AND `close`!='1'")), 0); if (($user_id && !isset($ban['1']) && !isset($ban['11']) && $set['mod_forum'] != 3) || core
::$user_rights) { // Кнопка создания новой темы
echo '<div class="gmenu"><form action="index.php?act=nt&id=' . $id . '" method="post"><input type="submit" value="' . $lng_forum['new_topic'] . '" /></form></div>';
}
if ($total) {
$req = mysql_query("SELECT * FROM `forum` WHERE `type`='t'" . ($rights >= 7 ?
'' : " AND `close`!='1'") . " AND `refid`='$id' ORDER BY `vip` DESC, `time` DESC LIMIT $start, $kmess"); $i = 0;
if ($res['close'])
echo '<div class="rmenu">';
else
echo $i % 2 ? '<div class="list2">' : '<div class="list1">';
$nikuser = mysql_query("SELECT `from` FROM `forum` WHERE `type` = 'm' AND `close` != '1' AND `refid` = '" . $res['id'] . "' ORDER BY `time` DESC LIMIT 1"); $colmes = mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='m' AND `refid`='" . $res['id'] . "'" . ($rights >= 7 ?
'' : " AND `close` != '1'")); $cpg = ceil($colmes1 / $kmess); $np = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_forum_rdm` WHERE `time` >= '" . $res['time'] . "' AND `topic_id` = '" . $res['id'] . "' AND `user_id`='$user_id'"), 0); // Значки
($np ? (!$res['vip'] ? '<img src="../theme/' . $set_user['skin'] . '/images/op.gif" alt=""/>' : '') : '<img src="../theme/' . $set_user['skin'] . '/images/np.gif" alt=""/>'),
($res['vip'] ? '<img src="../theme/' . $set_user['skin'] . '/images/pt.gif" alt=""/>' : ''),
($res['realid'] ? '<img src="../theme/' . $set_user['skin'] . '/images/rate.gif" alt=""/>' : ''),
($res['edit'] ? '<img src="../theme/' . $set_user['skin'] . '/images/tz.gif" alt=""/>' : '')
);
echo functions::display_menu($icons, ' ', ' ');
echo '<a href="index.php?id=' . $res['id'] . '">' . $res['text'] . '</a> [' . $colmes1 . ']';
if ($cpg > 1) {
echo '<a href="index.php?id=' . $res['id'] . '&page=' . $cpg . '"> >></a>';
}
echo '<div class="sub">';
echo $res['from'];
if (!empty($nam['from'])) { echo ' / ' . $nam['from'];
}
echo ' <span class="gray">(' . functions::display_date($res['time']) . ')</span></div></div>';
++$i;
}
unset($_SESSION['fsort_id']); unset($_SESSION['fsort_users']); } else {
echo '<div class="menu"><p>' . $lng_forum['topic_list_empty'] . '</p></div>';
}
echo '<div class="phdr">' . $lng['total'] . ': ' . $total . '</div>';
if ($total > $kmess) {
echo '<div class="topmenu">' . functions::display_pagination('index.php?id=' . $id . '&', $start, $total, $kmess) . '</div>' .
'<p><form action="index.php?id=' . $id . '" method="post">' .
'<input type="text" name="page" size="2"/>' .
'<input type="submit" value="' . $lng['to_page'] . ' >>"/>' .
'</form></p>';
}
break;
case 't':
/*
-----------------------------------------------------------------
Читаем топик
-----------------------------------------------------------------
*/
$filter = isset($_SESSION['fsort_id']) && $_SESSION['fsort_id'] == $id ?
1 : 0; $sql = '';
if ($filter && !empty($_SESSION['fsort_users'])) { // Подготавливаем запрос на фильтрацию юзеров
$sw = 0;
$sql = ' AND (';
foreach ($fsort_users as $val) {
if ($sw)
$sql .= ' OR ';
$sql .= "`forum`.`user_id` = '$sortid'";
$sw = 1;
}
$sql .= ')';
}
// Если тема помечена для удаления, разрешаем доступ только администрации
if ($rights < 6 && $type1['close'] == 1) {
echo '<div class="rmenu"><p>' . $lng_forum['topic_deleted'] . '<br/><a href="?id=' . $type1['refid'] . '">' . $lng_forum['to_section'] . '</a></p></div>';
require('../incfiles/end.php');
}
// Счетчик постов темы
$colmes = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type`='m'$sql AND `refid`='$id'" . ($rights >= 7 ?
'' : " AND `close` != '1'")), 0); if ($start >= $colmes) {
// Исправляем запрос на несуществующую страницу
$start = max(0, $colmes - (($colmes % $kmess) == 0 ?
$kmess : ($colmes % $kmess))); }
// Выводим название топика
echo '<div class="phdr"><a name="up" id="up"></a><a href="#down"><img src="../theme/' . $set_user['skin'] . '/images/down.png" alt="Вниз" width="20" height="10" border="0"/></a>  <b>' . $type1['text'] . '</b></div>';
if ($colmes > $kmess) {
echo '<div class="topmenu">' . functions::display_pagination('index.php?id=' . $id . '&', $start, $colmes, $kmess) . '</div>';
}
// Метка удаления темы
if ($type1['close']) {
echo '<div class="rmenu">' . $lng_forum['topic_delete_who'] . ': <b>' . $type1['close_who'] . '</b></div>';
} elseif (!empty($type1['close_who']) && $rights >= 7) { echo '<div class="gmenu"><small>' . $lng_forum['topic_delete_whocancel'] . ': <b>' . $type1['close_who'] . '</b></small></div>';
}
// Метка закрытия темы
if ($type1['edit']) {
echo '<div class="rmenu">' . $lng_forum['topic_closed'] . '</div>';
}
/*
-----------------------------------------------------------------
Блок голосований
-----------------------------------------------------------------
*/
if ($type1['realid']) {
$clip_forum = isset($_GET['clip']) ?
'&clip' : ''; $vote_user = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_forum_vote_users` WHERE `user`='$user_id' AND `topic`='$id'"), 0); $topic_vote = mysql_fetch_assoc(mysql_query("SELECT `name`, `time`, `count` FROM `cms_forum_vote` WHERE `type`='1' AND `topic`='$id' LIMIT 1")); echo '<div class="gmenu"><b>' . functions::checkout($topic_vote['name']) . '</b><br />';
$vote_result = mysql_query("SELECT `id`, `name`, `count` FROM `cms_forum_vote` WHERE `type`='2' AND `topic`='" . $id . "' ORDER BY `id` ASC"); if (!$type1['edit'] && !isset($_GET['vote_result']) && $user_id && $vote_user == 0) { // Выводим форму с опросами
echo '<form action="index.php?act=vote&id=' . $id . '" method="post">';
echo '<input type="radio" value="' . $vote['id'] . '" name="vote"/> ' . functions::checkout($vote['name'], 0, 1) . '<br />';
}
echo '<p><input type="submit" name="submit" value="' . $lng['vote'] . '"/><br/><a href="index.php?id=' . $id . '&start=' . $start . '&vote_result' . $clip_forum .
'">' . $lng_forum['results'] . '</a></p></form></div>';
} else {
// Выводим результаты голосования
echo '<small>';
$count_vote = $topic_vote['count'] ?
round(100 / $topic_vote['count'] * $vote['count']) : 0; echo functions::checkout($vote['name'], 0, 1) . ' [' . $vote['count'] . ']<br />';
echo '<img src="vote_img.php?img=' . $count_vote . '" alt="' . $lng_forum['rating'] . ': ' . $count_vote . '%" /><br />';
}
echo '</small><div class="bmenu">' . $lng_forum['total_votes'] . ': ';
if ($user_id && core::$user_data['rights'] > 6)
echo '<a href="index.php?act=users&id=' . $id . '">' . $topic_vote['count'] . '</a>';
else
echo $topic_vote['count'];
echo '</div>';
if ($user_id && $vote_user == 0)
echo '<div class="bmenu"><a href="index.php?id=' . $id . '&start=' . $start . $clip_forum . '">' . $lng['vote'] . '</a></div>';
}
}
$curator = false;
if ($rights < 6 && $rights != 3 && $user_id) {
}
/*
-----------------------------------------------------------------
Фиксация первого поста в теме
-----------------------------------------------------------------
*/
if (($set_forum['postclip'] == 2 && ($set_forum['upfp'] ?
$start < (ceil($colmes - $kmess)) : $start > 0)) || isset($_GET['clip'])) { $postreq = mysql_query("SELECT `forum`.*, `users`.`sex`, `users`.`rights`, `users`.`lastdate`, `users`.`status`, `users`.`datereg` FROM `forum` LEFT JOIN `users` ON `forum`.`user_id` = `users`.`id`
WHERE `forum`.`type` = 'm' AND `forum`.`refid` = '$id'" . ($rights >= 7 ? "" : " AND `forum`.`close` != '1'") . "
ORDER BY `forum`.`id` LIMIT 1");
echo '<div class="topmenu"><p>';
if ($postres['sex'])
echo '<img src="../theme/' . $set_user['skin'] . '/images/' . ($postres['sex'] == 'm' ?
'm' : 'w') . ($postres['datereg'] > time() - 86400 ?
'_new.png" width="14"' : '.png" width="10"') . ' height="10"/> '; else
echo '<img src="../images/del.png" width="10" height="10" alt=""/> ';
if ($user_id && $user_id != $postres['user_id']) {
echo '<a href="../users/profile.php?user=' . $postres['user_id'] . '&fid=' . $postres['id'] . '"><b>' . $postres['from'] . '</b></a> ' .
'<a href="index.php?act=say&id=' . $postres['id'] . '&start=' . $start . '"> ' . $lng_forum['reply_btn'] . '</a> ' .
'<a href="index.php?act=say&id=' . $postres['id'] . '&start=' . $start . '&cyt"> ' . $lng_forum['cytate_btn'] . '</a> ';
} else {
echo '<b>' . $postres['from'] . '</b> ';
}
echo(time() > $postres['lastdate'] + 1000 ?
'<span class="red"> [Off]</span>' : '<span class="green"> [ON]</span>'); echo ' <span class="gray">(' . functions::display_date($postres['time']) . ')</span><br/>';
if ($postres['close']) {
echo '<span class="red">' . $lng_forum['post_deleted'] . '</span><br/>';
}
echo functions
::checkout(mb_substr($postres['text'], 0, 500), 0, 2); echo '...<a href="index.php?act=post&id=' . $postres['id'] . '">' . $lng_forum['read_all'] . '</a>';
echo '</p></div>';
}
if ($filter)
echo '<div class="rmenu">' . $lng_forum['filter_on'] . '</div>';
// Задаем правила сортировки (новые внизу / вверху)
if ($user_id)
$order = $set_forum['upfp'] ? 'DESC' : 'ASC';
else
$order = ((empty($_SESSION['uppost'])) || ($_SESSION['uppost'] == 0)) ?
'ASC' : 'DESC'; // Запрос в базу
$req = mysql_query("SELECT `forum`.*, `users`.`sex`, `users`.`holat`, `users`.`rights`, `users`.`lastdate`, `users`.`status`, `users`.`datereg` FROM `forum` LEFT JOIN `users` ON `forum`.`user_id` = `users`.`id`
WHERE `forum`.`type` = 'm' AND `forum`.`refid` = '$id'"
. ($rights >= 7 ? "" : " AND `forum`.`close` != '1'") . "$sql ORDER BY `forum`.`id` $order LIMIT $start, $kmess");
// Верхнее поле "Написать"
if (($user_id && !$type1['edit'] && $set_forum['upfp'] && $set['mod_forum'] != 3) || ($rights >= 7 && $set_forum['upfp'])) {
echo '<div class="gmenu">111<form name="form1" action="index.php?act=say&id=' . $id . '" method="post">';
if ($set_forum['farea']) {
$_SESSION['token'] = $token;
echo '<p>' .
(!$is_mobile ? bbcode::auto_bb('form1', 'msg') : '') .
'<textarea rows="' . $set_user['field_h'] . '" name="msg"></textarea></p>' .
'<p><input type="checkbox" name="addfiles" value="1" /> ' . $lng_forum['add_file'] .
($set_user['translit'] ? '<br /><input type="checkbox" name="msgtrans" value="1" /> ' . $lng['translit'] : '') .
'</p><p><input type="submit" name="submit" value="' . $lng['write'] . '" style="width: 107px; cursor: pointer;"/> ' .
($set_forum['preview'] ? '<input type="submit" value="' . $lng['preview'] . '" style="width: 107px; cursor: pointer;"/>' : '') .
'<input type="hidden" name="token" value="' . $token . '"/>' .
'</p></form></div>';
} else {
echo '<p><input type="submit" name="submit" value="' . $lng['write'] . '"/></p></form></div>';
}
}
if ($rights == 3 || $rights >= 6)
echo '<form action="index.php?act=massdel" method="post">';
$i = 1;
if ($res['close'])
echo '<div class="rmenu">';
else
echo $i % 2 ? '<div class="list2">' : '<div class="list1">';
if ($set_user['avatar']) {
echo '<table cellpadding="0" cellspacing="0"><tr><td>';
if (file_exists(('../files/users/avatar/' . $res['user_id'] . '.png'))) echo '<img src="../files/users/avatar/' . $res['user_id'] . '.png" width="60" height="63" alt="' . $res['from'] . '" /> ';
else
echo '<img src="../images/empty.png" width="40" height="45" alt="' . $res['from'] . '" /> ';
echo '</td><td>';
}
if ($res['rights'] > '0') {
$modder = 'mod_';
} else {
$modder = '';
}
if (file_exists('../images/holat/' . $res['holat'] . '.ico')) { $holat = '<img src="../images/holat/' . $res['holat'] . '.ico" width="14" height="14" alt="" class="icon" /> ';
} else {
$holat = '';
}
$tartib = $i + $start;
echo '<b>'.$tartib.'. </b>';
if ($res['sex'])
echo '<img src="../theme/' . $set_user['skin'] . '/images/' . $modder . ($res['sex'] == 'm' ?
'm' : 'w') . ($res['lastdate'] > time() - 1000 ?
'_on' : '_off') . '.gif" width="14" height="14" /> ' . $holat; else
echo '<img src="../images/del.png" width="12" height="12" align="middle" alt=""/> ';
// Ник юзера и ссылка на его анкету
if ($user_id && $user_id != $res['user_id']) {
echo '<a href="../users/profile.php?user=' . $res['user_id'] . '"><b>' . $res['from'] . '</b></a> ';
} else {
echo '<b>' . $res['from'] . '</b> ';
}
$user = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '" . $res['user_id'] . "'")); echo '<b> ['.$user['postforum'].']</b>'; // Метка Онлайн / Офлайн
/** echo(time() > $res['lastdate'] + 1000 ? '<span class="red"> [Off]</span> ' : '<span class="green"> [ON]</span> ');***/
$sek = time() - $user['lastdate']; if ($sek == 0) {
echo '<font style="color: green"> [on]</font>';
} elseif ($sek < 60) {
echo '<font style="color: green"> ['.$sek.'s]</font>';
} elseif ($sek > 60 && $sek < 120) {
echo '<font style="color: green"> [1m]</font>';
} elseif ($sek > 120 && $sek < 180) {
echo '<font style="color: green"> [2m]</font>';
} elseif ($sek > 180 && $sek < 240) {
echo '<font style="color: green"> [3m]</font>';
} elseif ($sek > 240 && $sek < 300) {
echo '<font style="color: green"> [4m]</font>';
} elseif($sek > 300 && $sek < 360) {
echo '<font style="color: green"> [5m]</font>';
} elseif ($sek > 360 && $sek < 420) {
echo '<font style="color: green"> [6m]</font>';
} elseif ($sek > 420 && $sek < 480) {
echo '<font style="color: green"> [7m]</font>';
} elseif ($sek > 480 && $sek < 540) {
echo '<font style="color: green"> [8m]</font>';
} elseif ($sek > 540 && $sek < 600) {
echo '<font style="color: green"> [9m]</font>';
} elseif ($sek > 600 && $sek < 780) {
echo '<font style="color: green"> [12m]</font>';
} elseif ($sek > 780 && $sek < 960) {
echo '<font style="color: green"> [15m]</font>';
} elseif ($sek > 960 && $sek < 1260) {
echo '<font style="color: green"> [20m]</font>';
}else{
echo '<font style="color: red"> [off]</font>';
}
if ($user_id && $user_id != $res['user_id'])
echo '<a href="index.php?act=rahmat&id=' . $res['id'] . '" title="Xabarga rahmat bildirish">[Rahmat]</a>';
// Ссылки на ответ и цитирование
if ($user_id && $user_id != $res['user_id']) {
echo '<a href="index.php?act=say&id=' . $res['id'] . '&start=' . $start . '">[javob]</a> ' .
'<a href="index.php?act=say&id=' . $res['id'] . '&start=' . $start . '&cyt">[sit]</a> ';
}
// Время поста
echo ' <br /><span style="color:gray;font-size:12px;">' . functions::display_time($res['time']) . '</span><br />';
// Статус юзера
// if (!empty($res['status']))
// echo '<div class="status"><img src="../theme/' . $set_user['skin'] . '/images/label.png" alt="" align="middle"/> ' . $res['status'] . '</img></div>';
if ($set_user['avatar'])
echo '</td></tr></table>';
/*
-----------------------------------------------------------------
Вывод текста поста
-----------------------------------------------------------------
*/
$text = $res['text'];
if ($set_forum['postcut']) {
// Если текст длинный, обрезаем и даем ссылку на полный вариант
switch ($set_forum['postcut']) {
case 2:
$cut = 1000;
break;
case 3:
$cut = 3000;
break;
default :
$cut = 500;
}
}
if ($set_forum['postcut'] && mb_strlen($text) > $cut) { $text = functions::checkout($text, 1, 1);
$text = preg_replace('#\[c\](.*?)\[/c\]#si', '<div class="quote">\1</div>', $text); if ($set_user['smileys'])
$text = functions::smileys($text, $res['rights'] ? 1 : 0);
echo bbcode::notags($text) . '...<br /><a href="index.php?act=post&id=' . $res['id'] . '">' . $lng_forum['read_all'] . ' >></a>';
} else {
// Или, обрабатываем тэги и выводим весь текст
$text = functions::checkout($text, 1, 1);
if ($set_user['smileys'])
$text = functions::smileys($text, $res['rights'] ? 1 : 0);
echo $text;
//////////Rahmat moduli///////
$rah = mysql_query("SELECT * FROM `forum_rahmat` where `post` = '".$res['id']."'"); if ($son) {
echo '<div style="border-bottom: 1px dashed #3CB371; border-top: 1px dashed #3CB371; padding: 4px;"><b>Rahmat aytdi ('.$son.'): </b>';
echo ' <b><span style="color:blue; font-style: italic; opacity: 0.9; margin-bottom:1px;"><a href="/users/profile.php?user='.$rahmat['user_id'].'">'.$rahmat['rahmat'].'</a></b></span></div>';
if ($son >1 || $son <$son) echo ',';
}
}
}
if ($res['kedit']) {
// Если пост редактировался, показываем кем и когда
// Ссылки на редактирование / удаление постов
'<a href="index.php?act=editpost&id=' . $res['id'] . '">' . $lng['edit'] . '</a>',
($rights >= 7 && $res['close'] == 1 ? '<a href="index.php?act=editpost&do=restore&id=' . $res['id'] . '">' . $lng_forum['restore'] . '</a>' : ''),
($res['close'] == 1 ? '' : '<a href="index.php?act=editpost&do=del&id=' . $res['id'] . '">' . $lng['delete'] . '</a>')
);
}
echo '</div>';
echo '<div class="fmenu">';
if ($rights == 3 || $rights >= 6)
echo '<input type="checkbox" name="delch[]" value="' . $res['id'] . '"/> ';
echo functions::display_menu($menu);
if ($res['close']) {
echo '<div class="red">' . $lng_forum['who_delete_post'] . ': <b>' . $res['close_who'] . '</b></div>';
} elseif (!empty($res['close_who'])) { echo '<div class="green">' . $lng_forum['who_restore_post'] . ': <b>' . $res['close_who'] . '</b></div>';
}
/*
if ($rights == 3 || $rights >= 6) {
if ($res['ip_via_proxy']) {
echo '<div class="gray"><b class="red"><a href="' . $set['homeurl'] . '/' . $set['admp'] . '/index.php?act=search_ip&ip=' . long2ip($res['ip']) . '">' . long2ip($res['ip']) . '</a></b> - ' .
'<a href="' . $set['homeurl'] . '/' . $set['admp'] . '/index.php?act=search_ip&ip=' . long2ip($res['ip_via_proxy']) . '">' . long2ip($res['ip_via_proxy']) . '</a>' .
' - ' . $res['soft'] . '</div>';
} else {
echo '<div class="gray"><a href="' . $set['homeurl'] . '/' . $set['admp'] . '/index.php?act=search_ip&ip=' . long2ip($res['ip']) . '">' . long2ip($res['ip']) . '</a> - ' . $res['soft'] . '</div>';
}
}
*/
echo '</div>';
// }
// echo '</div>';
++$i;
}
if ($rights == 3 || $rights >= 6) {
echo '<div class="rmenu"><input type="submit" value=" ' . $lng['delete'] . ' "/></div>';
echo '</form>';
}
// Нижнее поле "Написать"
if (($user_id && !$type1['edit'] && !$set_forum['upfp'] && $set['mod_forum'] != 3) || ($rights >= 7 && !$set_forum['upfp'])) {
echo '<form name="form2" action="index.php?act=say&id=' . $id . '" method="post">';
// if ($set_forum['farea']) {
$_SESSION['token'] = $token;
echo '<p>';
// if (!$is_mobile)
// echo bbcode::auto_bb('form2', 'msg');
echo '<textarea rows="' . $set_user['field_h'] . '" name="msg"></textarea><br/></p>';
// '<p><input type="checkbox" name="addfiles" value="1" /> ' . $lng_forum['add_file'];
// if ($set_user['translit'])
// echo '<br /><input type="checkbox" name="msgtrans" value="1" /> ' . $lng['translit'];
echo '<input type="submit" name="submit" value="' . $lng['write'] . '" style="width: 107px; cursor: pointer;"/><span style="float: right; cursor: pointer; height: 32px; width: 32px;"><a href="?id='.$id.'"><img src="/images/refresh.png"></img></a></span>' .
// ($set_forum['preview'] ? '<input type="submit" value="' . $lng['preview'] . '" style="width: 107px; cursor: pointer;"/>' : '') .
'<input type="hidden" name="token" value="' . $token . '"/>' .
'</form></div>';
// } else {
// echo '<p><input type="submit" name="submit" value="' . $lng['write'] . '"/></p></form></div>';
// }
}
echo '<div class="phdr"><a name="down" id="down"></a><a href="#up">' .
'<img src="../theme/' . $set_user['skin'] . '/images/up.png" alt="' . $lng['up'] . '" width="20" height="10" border="0"/></a>' .
'  ' . $lng['total'] . ': ' . $colmes . '</div>';
if ($colmes > $kmess) {
echo '<div class="topmenu">' . functions::display_pagination('index.php?id=' . $id . '&', $start, $colmes, $kmess) . '</div>' .
'<p><form action="index.php?id=' . $id . '" method="post">' .
'<input type="text" name="page" size="2"/>' .
'<input type="submit" value="' . $lng['to_page'] . ' >>"/>' .
'</form></p>';
} else {
echo '<br />';
}
/*
-----------------------------------------------------------------
Ссылки на модераторские функции
-----------------------------------------------------------------
*/
if ($curators) {
foreach ($curators as $key => $value)
$array[] = '<a href="../users/profile.php?user=' . $key . '">' . $value . '</a>';
echo '<p><div class="func">' . $lng_forum['curators'] . ': ' . implode(', ', $array) . '</div></p>'; }
if ($rights == 3 || $rights >= 6) {
echo '<p><div class="func">';
if ($rights >= 7)
echo '<a href="index.php?act=curators&id=' . $id . '&start=' . $start . '">' . $lng_forum['curators_of_the_topic'] . '</a><br />';
echo isset($topic_vote) && $topic_vote > 0 ? '<a href="index.php?act=editvote&id=' . $id . '">' . $lng_forum['edit_vote'] . '</a><br/><a href="index.php?act=delvote&id=' . $id . '">' . $lng_forum['delete_vote'] . '</a><br/>'
: '<a href="index.php?act=addvote&id=' . $id . '">' . $lng_forum['add_vote'] . '</a><br/>';
echo '<a href="index.php?act=ren&id=' . $id . '">' . $lng_forum['topic_rename'] . '</a><br/>';
// Закрыть - открыть тему
if ($type1['edit'] == 1)
echo '<a href="index.php?act=close&id=' . $id . '">' . $lng_forum['topic_open'] . '</a><br/>';
else
echo '<a href="index.php?act=close&id=' . $id . '&closed">' . $lng_forum['topic_close'] . '</a><br/>';
// Удалить - восстановить тему
if ($type1['close'] == 1)
echo '<a href="index.php?act=restore&id=' . $id . '">' . $lng_forum['topic_restore'] . '</a><br/>';
echo '<a href="index.php?act=deltema&id=' . $id . '">' . $lng_forum['topic_delete'] . '</a><br/>';
if ($type1['vip'] == 1)
echo '<a href="index.php?act=vip&id=' . $id . '">' . $lng_forum['topic_unfix'] . '</a>';
else
echo '<a href="index.php?act=vip&id=' . $id . '&vip">' . $lng_forum['topic_fix'] . '</a>';
echo '<br/><a href="index.php?act=per&id=' . $id . '">' . $lng_forum['topic_move'] . '</a></div></p>';
}
if ($wholink)
echo '<div>' . $wholink . '</div>';
echo '<a href="index.php?act=tema&id=' . $id . '">' . $lng_forum['download_topic'] . '</a>';
break;
default:
/*
-----------------------------------------------------------------
Если неверные данные, показываем ошибку
-----------------------------------------------------------------
*/
echo functions::display_error($lng['error_wrong_data']);
break;
}
} else {
/*
-----------------------------------------------------------------
Список Категорий форума
-----------------------------------------------------------------
*/
$count = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_forum_files`" . ($rights >= 7 ?
'' : " WHERE `del` != '1'")), 0); echo '<div class="menu">' . counters::forum_new(1) . '</div>';
$reqq = mysql_query("SELECT `id`, `text`, `soft` FROM `forum` WHERE `type`='f' ORDER BY `realid`"); $i = 0;
echo '<div class="phdr" style="text-align: center;"><b>' . $ress['text'] . '</b></div>';
if (!empty($ress['soft'])) echo '<div class="sub"><span class="gray">' . $ress['soft'] . '</span></div>';
$req = mysql_query("SELECT `id`, `text`, `soft` FROM `forum` WHERE `type`='r' AND `refid`='" . $ress['id'] . "' ORDER BY `realid`"); if ($total) {
$i = 0;
echo $i % 2 ? '<div class="list2">' : '<div class="list1">';
$coltem = mysql_result(mysql_query("SELECT COUNT(*) FROM `forum` WHERE `type` = 't' AND `refid` = '" . $res['id'] . "'"), 0); echo '» <a style="vertical-align:middle;" href="?id=' . $res['id'] . '">' . $res['text'] . '</a>';
if ($coltem)
echo '(' . $coltem . ')';
if (!empty($res['soft'])) echo '<div class="sub"><span class="gray">' . $res['soft'] . '</span></div>';
echo '</div>';
++$i;
}
unset($_SESSION['fsort_id']); unset($_SESSION['fsort_users']); }
}
}
$online_u = mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `lastdate` > " . (time() - 1000) . " AND `place` LIKE 'forum%'"), 0); $online_g = mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_sessions` WHERE `lastdate` > " . (time() - 1000) . " AND `place` LIKE 'forum%'"), 0);
echo '<div class="phdr">' . ($user_id ? '<a href="index.php?act=who">' . $lng_forum['who_in_forum'] . '</a>' : $lng_forum['who_in_forum']) . ' (' . $online_u . ' / ' . $online_g . ')</div>';
// Навигация внизу страницы
echo '<p>' . ($id ? '<a href="index.php">' . $lng['to_forum'] . '</a><br />' : '');
if (!$id) {
echo '<a href="../pages/faq.php?act=forum">' . $lng_forum['forum_rules'] . '</a>';
}
echo '</p>';
if (!$user_id) {
if ((empty($_SESSION['uppost'])) || ($_SESSION['uppost'] == 0)) { echo '<a href="index.php?id=' . $id . '&page=' . $page . '&newup">' . $lng_forum['new_on_top'] . '</a>';
} else {
echo '<a href="index.php?id=' . $id . '&page=' . $page . '&newdown">' . $lng_forum['new_on_bottom'] . '</a>';
}
}
}
require_once('../incfiles/end.php');
php?>