Utf8 convert
This commit is contained in:
@@ -6,7 +6,7 @@ if (!defined('GAME')) {
|
||||
//Forum class
|
||||
class forum
|
||||
{
|
||||
public $mod = 0, $see = [], $lst = [], $gd = [], $menu = '', $pages = '', $r, $user = false, $fm = false, $error, $acs = [0 => 'Äîñòóï çàêðûò', 1 => 'Òîëüêî ÷òåíèå', 2 => 'Ðàçðåøåíî äîáàâëÿòü îòâåòû', 3 => 'Ðàçðåøåíî ñîçäîâàòü òîïèêè', 4 => 'Ðàçðåøåíî äîáàâëÿòü îòâåòû è ñîçäàâàòü òîïèêè'];
|
||||
public $mod = 0, $see = [], $lst = [], $gd = [], $menu = '', $pages = '', $r, $user = false, $fm = false, $error, $acs = [0 => 'Доступ закрыт', 1 => 'Только чтение', 2 => 'Разрешено добавлять ответы', 3 => 'Разрешено создовать топики', 4 => 'Разрешено добавлять ответы и создавать топики'];
|
||||
|
||||
|
||||
public function paginator($t, $pagers = 0)
|
||||
@@ -101,12 +101,12 @@ class forum
|
||||
if (isset($this->user['id'])) {
|
||||
if (isset($yg['id'])) {
|
||||
if ($yg['answer'] == $j) {
|
||||
$zm = '<tr class="answ1h"><td>• <b>' . $ra[$j] . '</b></td><td> - ' . $prc . '% <small style="color:red">(Âàø ãîëîñ)</small></td></tr>';
|
||||
$zm = '<tr class="answ1h"><td>• <b>' . $ra[$j] . '</b></td><td> - ' . $prc . '% <small style="color:red">(Ваш голос)</small></td></tr>';
|
||||
} else {
|
||||
$zm = '<tr><td>• ' . $ra[$j] . '</td><td> - ' . $prc . '%</td></tr>';
|
||||
}
|
||||
} else {
|
||||
$zm = '<tr onclick="location.href=\'?read=' . round((int)$_GET['read']) . '&page=' . round((int)$_GET['page']) . '&q_now=' . $i . '&answer_now=' . $j . '\'" class="answ1" title="Ãîëîñîâàòü çà ýòîò âàðèàíò"><td>• ' . $ra[$j] . '</td><td> - ' . $prc . '%</td></tr>';
|
||||
$zm = '<tr onclick="location.href=\'?read=' . round((int)$_GET['read']) . '&page=' . round((int)$_GET['page']) . '&q_now=' . $i . '&answer_now=' . $j . '\'" class="answ1" title="Голосовать за этот вариант"><td>• ' . $ra[$j] . '</td><td> - ' . $prc . '%</td></tr>';
|
||||
}
|
||||
} else {
|
||||
$zm = '<tr><td>• ' . $ra[$j] . '</td><td> - ' . $prc . '%</td></tr>';
|
||||
@@ -128,13 +128,13 @@ class forum
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
$text = str_replace('[/?]', '</table><br><br>Âñåãî ïðîãîëîñîâàëî ëþäåé ' . $pr_us_all . '<div class="line2"></div>', $text);
|
||||
$text = str_replace('[/?]', '</table><br><br>Всего проголосовало людей ' . $pr_us_all . '<div class="line2"></div>', $text);
|
||||
return $text;
|
||||
}
|
||||
|
||||
public function startForum()
|
||||
{
|
||||
//Âûäåëÿåì ïîëüçîâàòåëÿ
|
||||
//Выделяем пользователя
|
||||
$ufr = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `login` = "' . mysql_real_escape_string($_COOKIE['login']) . '" AND `banned` = 0'));
|
||||
if (!isset($ufr['id']) || $ufr['banned'] > 0) {
|
||||
unset($u);
|
||||
@@ -143,13 +143,13 @@ class forum
|
||||
$this->user = $ufr;
|
||||
}
|
||||
|
||||
//Âûäåëÿåì ðàçäåë êîòîðûé ïðîñìàòðèâàåò ïîëüçîâàòåëü
|
||||
//Выделяем раздел который просматривает пользователь
|
||||
if (isset($_GET['read'])) {
|
||||
//÷èòàåì ñîîáùåíèå
|
||||
//читаем сообщение
|
||||
$see = mysql_fetch_array(mysql_query('SELECT * FROM `forum_msg` WHERE `id` = "' . mysql_real_escape_string($_GET['read']) . '" AND `delete` = "0" LIMIT 1'));
|
||||
if (!isset($see['id']) || ($see['fid'] == 65 && $this->user['admin'] == 0 && ($this->user['align'] <= 1 || $this->user['align'] >= 2)) || ($see['fid'] == 75 && $this->user['admin'] == 0 && ($this->user['align'] <= 3 || $this->user['align'] >= 4))) {
|
||||
$this->r = -2;
|
||||
$this->error = 'Òîïèê ôîðóìà íå íàéäåí.';
|
||||
$this->error = 'Топик форума не найден.';
|
||||
} else {
|
||||
$this->r = -1;
|
||||
$see['goodAdd'] = 1;
|
||||
@@ -182,7 +182,7 @@ class forum
|
||||
if (!isset($fm['id']) || ($fm['id'] == 65 && $this->user['admin'] == 0 && ($this->user['align'] <= 1 || $this->user['align'] >= 2)) || ($fm['id'] == 75 && $this->user['admin'] == 0 && ($this->user['align'] <= 3 || $this->user['align'] >= 4))) {
|
||||
$this->r = -2;
|
||||
$this->fm = false;
|
||||
$this->error = 'Ðàçäåë ôîðóìà íå íàéäåí.';
|
||||
$this->error = 'Раздел форума не найден.';
|
||||
} else {
|
||||
$this->fm = $fm;
|
||||
}
|
||||
@@ -192,15 +192,15 @@ class forum
|
||||
|
||||
$this->lst = mysql_fetch_array(mysql_query('SELECT `id`,`time` FROM `forum_msg` WHERE `uid` = "' . $this->user['id'] . '" AND `delete` = "0" ORDER BY `time` DESC LIMIT 1'));
|
||||
|
||||
//Ïðîâåðÿåì ôîðóì íà äîñòóïíîñòü
|
||||
//Проверяем форум на доступность
|
||||
if ($this->gd[$this->fm['id']] == 0 && $ufr['admin'] == 0) {
|
||||
//ïðîñìîòð çàêðûò
|
||||
//просмотр закрыт
|
||||
$this->r = -2;
|
||||
$this->error = 'Âû íå ìîæåòå ÷èòàòü äàííóþ êîíôåðåíöèþ.';
|
||||
$this->error = 'Вы не можете читать данную конференцию.';
|
||||
} elseif ($this->fm['only_admin'] == 1 && $this->user['admin'] == 0) {
|
||||
//ïðîñìîòð çàêðûò
|
||||
//просмотр закрыт
|
||||
$this->r = -2;
|
||||
$this->error = 'Âû íå ìîæåòå ÷èòàòü äàííóþ êîíôåðåíöèþ.';
|
||||
$this->error = 'Вы не можете читать данную конференцию.';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -219,15 +219,15 @@ class forum
|
||||
} elseif ($this->see['fid'] == 75 && $this->user['admin'] == 0 && ($this->user['align'] <= 3 || $this->user['align'] >= 4)) {
|
||||
|
||||
} elseif (isset($this->see['id'])) {
|
||||
//Âûâîäèì çàãîëîâîê
|
||||
//Выводим заголовок
|
||||
echo $this->genuser($this->see['uid'], $this->see['login'], $this->see['level'], $this->see['align'], $this->see['clan'], $this->see['invis'], $this->see['city'], $this->see['cityreg']);
|
||||
if ($this->user['admin'] > 0 || ($this->user['align'] > 1 && $this->user['align'] < 2) || ($this->user['align'] > 3 && $this->user['align'] < 4)) {
|
||||
echo ' <div class="btnAdm">';
|
||||
if ($this->user['admin'] > 0) {
|
||||
echo '<a href="?aem=' . $this->see['id'] . '"><img title="Ðåäàêòèðîâàòü" src="https://new-combats.com/forum_script/img/ic_acc3.gif" width="10" height="10"></a>';
|
||||
echo '<a href="?aem=' . $this->see['id'] . '"><img title="Редактировать" src="https://new-combats.com/forum_script/img/ic_acc3.gif" width="10" height="10"></a>';
|
||||
}
|
||||
echo '<a href="?delete_msg=' . $this->see['id'] . '&read=' . $this->see['id'] . '"><img title="Ñòåðåòü çàïèñü" src="https://new-combats.com/forum_script/img/ic_acc0.gif" width="10" height="10"></a>';
|
||||
echo '<img onclick="acma(' . $this->see['id'] . ');" title="Êîììåíòèðîâàòü" src="https://new-combats.com/forum_script/img/ic_acc2.gif" width="10" height="10" style="cursor:pointer">';
|
||||
echo '<a href="?delete_msg=' . $this->see['id'] . '&read=' . $this->see['id'] . '"><img title="Стереть запись" src="https://new-combats.com/forum_script/img/ic_acc0.gif" width="10" height="10"></a>';
|
||||
echo '<img onclick="acma(' . $this->see['id'] . ');" title="Комментировать" src="https://new-combats.com/forum_script/img/ic_acc2.gif" width="10" height="10" style="cursor:pointer">';
|
||||
echo '</div>';
|
||||
}
|
||||
echo ' (<span class="date">' . date('d.m.Y H:i', $this->see['time']) . '</span>)<br>';
|
||||
@@ -249,19 +249,19 @@ class forum
|
||||
if ($this->user['admin'] > 0) {
|
||||
$rtrn .= '<div style="margin-left:31px;color:#9d9472;padding:10px;border:1px solid #ebdca0;">' . $this->see['text'] . '</div>';
|
||||
}
|
||||
$rtrn .= '<div style="margin-left:31px;"><font color=red>Çàïèñü áûëà óäàëåíà';
|
||||
$rtrn .= '<div style="margin-left:31px;"><font color=red>Запись была удалена';
|
||||
if ($this->user['del_admin'] == 0) {
|
||||
$rtrn .= ', <img src="https://' . $c['img'] . '/i/align/align' . $this->see['del_align'] . '.gif"><b>' . $this->see['del_login'] . '</b>';
|
||||
}
|
||||
$rtrn .= '</font></div>';
|
||||
}
|
||||
|
||||
//Çàïèñè ìîäåðàòîðîâ è àíãåëîâ
|
||||
//Записи модераторов и ангелов
|
||||
$sp1 = mysql_query('SELECT * FROM `forum_msg_mod` WHERE `msg_id` = "' . $this->see['id'] . '"');
|
||||
while ($pl1 = mysql_fetch_array($sp1)) {
|
||||
$rtrn .= '<div style="margin-left:31px;color:' . $pl1['color'] . ';">';
|
||||
if ($pl1['from_admin'] == 1) {
|
||||
$pl1['login'] = '<Àäìèíèñòðàöèÿ>';
|
||||
$pl1['login'] = '<Администрация>';
|
||||
$pl1['city'] = '';
|
||||
$pl1['cityreg'] = '';
|
||||
$pl1['clan'] = '';
|
||||
@@ -275,7 +275,7 @@ class forum
|
||||
}
|
||||
|
||||
$rtrn .= '</div><div class="line2"></div>';
|
||||
//Âûâîäèì êîììåíòàðèè
|
||||
//Выводим комментарии
|
||||
$sp = mysql_query('SELECT * FROM `forum_msg` WHERE `topic` = "' . $this->see['id'] . '" AND `delete` = "0" ORDER BY `time` ASC LIMIT ' . $start . ',' . $fd_limit);
|
||||
while ($pl = mysql_fetch_array($sp)) {
|
||||
|
||||
@@ -283,10 +283,10 @@ class forum
|
||||
if ($this->user['admin'] > 0 || ($this->user['align'] > 1 && $this->user['align'] < 2) || ($this->user['align'] > 3 && $this->user['align'] < 4)) {
|
||||
$rtrn .= ' <div class="btnAdm">';
|
||||
if ($this->user['admin'] > 0) {
|
||||
$rtrn .= '<a href="?aem=' . $pl['id'] . '"><img title="Ðåäàêòèðîâàòü" src="https://new-combats.com/forum_script/img/ic_acc3.gif" width="10" height="10"></a>';
|
||||
$rtrn .= '<a href="?aem=' . $pl['id'] . '"><img title="Редактировать" src="https://new-combats.com/forum_script/img/ic_acc3.gif" width="10" height="10"></a>';
|
||||
}
|
||||
$rtrn .= '<a href="?delete_msg=' . $pl['id'] . '&read=' . $pl['topic'] . '"><img title="Ñòåðåòü êîììåíòàðèé" src="https://new-combats.com/forum_script/img/ic_acc0.gif" width="10" height="10"></a>';
|
||||
$rtrn .= '<img onclick="acma(' . $pl['id'] . ');" title="Êîììåíòèðîâàòü" src="https://new-combats.com/forum_script/img/ic_acc2.gif" width="10" height="10" style="cursor:pointer">';
|
||||
$rtrn .= '<a href="?delete_msg=' . $pl['id'] . '&read=' . $pl['topic'] . '"><img title="Стереть комментарий" src="https://new-combats.com/forum_script/img/ic_acc0.gif" width="10" height="10"></a>';
|
||||
$rtrn .= '<img onclick="acma(' . $pl['id'] . ');" title="Комментировать" src="https://new-combats.com/forum_script/img/ic_acc2.gif" width="10" height="10" style="cursor:pointer">';
|
||||
$rtrn .= '</div>';
|
||||
}
|
||||
$rtrn .= ' (<span class="date">' . date('d.m.Y H:i', $pl['time']) . '</span>)<br>';
|
||||
@@ -298,19 +298,19 @@ class forum
|
||||
if ($this->user['admin'] > 0) {
|
||||
$rtrn .= '<div style="margin-left:31px;color:#9d9472;padding:10px;border:1px solid #ebdca0;">' . $pl['text'] . '</div>';
|
||||
}
|
||||
$rtrn .= '<div style="margin-left:31px;"><font color=red>Êîììåíòàðèé óäàëåí';
|
||||
$rtrn .= '<div style="margin-left:31px;"><font color=red>Комментарий удален';
|
||||
if ($this->user['del_admin'] == 0) {
|
||||
$rtrn .= ', <img src="https://' . $c['img'] . '/i/align/align' . $pl['del_align'] . '.gif"><b>' . $pl['del_login'] . '</b>';
|
||||
}
|
||||
$rtrn .= '</font></div>';
|
||||
}
|
||||
|
||||
//Çàïèñè ìîäåðàòîðîâ è àíãåëîâ
|
||||
//Записи модераторов и ангелов
|
||||
$sp1 = mysql_query('SELECT * FROM `forum_msg_mod` WHERE `msg_id` = "' . $pl['id'] . '"');
|
||||
while ($pl1 = mysql_fetch_array($sp1)) {
|
||||
$rtrn .= '<div style="margin-left:31px;color:' . $pl1['color'] . ';">';
|
||||
if ($pl1['from_admin'] == 1) {
|
||||
$pl1['login'] = '<Àäìèíèñòðàöèÿ>';
|
||||
$pl1['login'] = '<Администрация>';
|
||||
$pl1['city'] = '';
|
||||
$pl1['cityreg'] = '';
|
||||
$pl1['clan'] = '';
|
||||
@@ -353,11 +353,11 @@ class forum
|
||||
}
|
||||
}
|
||||
|
||||
if ($login == '<Àäìèíèñòðàöèÿ>') {
|
||||
$login = 'Àäìèíèñòðàöèÿ';
|
||||
if ($login == '<Администрация>') {
|
||||
$login = 'Администрация';
|
||||
}
|
||||
|
||||
$u .= '<b>' . $login . '</b> [' . $level . ']<a href="https://' . $c['host'] . '/info/' . $id . '" target="_blank" title="Èíô. î ' . $login . '"><img src="https://' . $c['img'] . '/i/inf_capitalcity.gif"></a>';
|
||||
$u .= '<b>' . $login . '</b> [' . $level . ']<a href="https://' . $c['host'] . '/info/' . $id . '" target="_blank" title="Инф. о ' . $login . '"><img src="https://' . $c['img'] . '/i/inf_capitalcity.gif"></a>';
|
||||
|
||||
if ($city != '') {
|
||||
$ufr = '<img title="' . $city . '" src="https://new-combats.com/forum_script/img/city/' . $city . '.gif" width="17" height="15"> ' . $u;
|
||||
@@ -376,7 +376,7 @@ class forum
|
||||
|
||||
public function pravasee()
|
||||
{
|
||||
//ìîæíî äîáàâëÿòü è ïðîñìàòðèâàòü
|
||||
//можно добавлять и просматривать
|
||||
return ($this->see['fid'] != 65 || $this->user['admin'] != 0 || $this->isAlign1()) && ($this->see['fid'] != 75 || $this->user['admin'] != 0 || $this->isAlign3()) && (!isset($this->see['id']) || $this->see['nocom'] != 3 || $this->user['admin'] != 0 || $this->isAlign3()) && (!isset($this->see['id']) || $this->see['nocom'] != 2 || $this->user['admin'] != 0 || $this->isAlign1()) && (!isset($this->see['id']) || $this->see['nocom'] != 1 || $this->user['admin'] != 0) && $this->user['level'] >= 1 && $this->lst['time'] <= time() - 60;
|
||||
}
|
||||
|
||||
@@ -385,19 +385,19 @@ class forum
|
||||
|
||||
$msg = mysql_fetch_array(mysql_query('SELECT `id` FROM `forum_msg` WHERE `id` = "' . mysql_real_escape_string($id) . '" LIMIT 1'));
|
||||
if (!isset($msg['id'])) {
|
||||
$this->error = 'Ñîîáùåíèå íå íàéäåíî';
|
||||
$this->error = 'Сообщение не найдено';
|
||||
} elseif (trim($text, ' ') == '' || iconv_strlen(trim($text, ' ')) < 2) {
|
||||
$this->error = 'Ìèíèìàëüíàÿ äëèíà ñîîáùåíèÿ äîëæíà áûòü íå ìåíåå 2-õ ñèìâîëîâ';
|
||||
$this->error = 'Минимальная длина сообщения должна быть не менее 2-х символов';
|
||||
} elseif ($this->user['molch2'] > time()) {
|
||||
$this->error = 'Âû íå ìîæåòå ïèñàòü ñîîáùåíèÿ è ñîçäàâàòü òîïèêè íà ôîðóìå, íà âàñ íàëîæåíî çàêëÿòèå ìîë÷àíèÿ';
|
||||
$this->error = 'Вы не можете писать сообщения и создавать топики на форуме, на вас наложено заклятие молчания';
|
||||
} elseif (isset($this->see['id']) && $this->see['nocom'] == 3 && $this->user['admin'] == 0 && ($this->user['align'] <= 3 || $this->user['align'] >= 4)) {
|
||||
$this->error = 'Â ýòîì òîïèêå çàïðåùåíî îñòàâëÿòü îòâåòû';
|
||||
$this->error = 'В этом топике запрещено оставлять ответы';
|
||||
} elseif (isset($this->see['id']) && $this->see['nocom'] == 2 && $this->user['admin'] == 0 && ($this->user['align'] <= 1 || $this->user['align'] >= 2)) {
|
||||
$this->error = 'Â ýòîì òîïèêå çàïðåùåíî îñòàâëÿòü îòâåòû';
|
||||
$this->error = 'В этом топике запрещено оставлять ответы';
|
||||
} elseif (isset($this->see['id']) && $this->see['nocom'] == 1 && $this->user['admin'] == 0) {
|
||||
$this->error = 'Â ýòîì òîïèêå çàïðåùåíî îñòàâëÿòü îòâåòû';
|
||||
$this->error = 'В этом топике запрещено оставлять ответы';
|
||||
} elseif ($this->user['level'] < 8) {
|
||||
$this->error = 'Âû íå ìîæåòå ïèñàòü ñîîáùåíèÿ è ñîçäàâàòü òîïèêè íà ôîðóìå, ýòî âîçìîæíî ñ 8-ãî óðîâíÿ';
|
||||
$this->error = 'Вы не можете писать сообщения и создавать топики на форуме, это возможно с 8-го уровня';
|
||||
} else {
|
||||
mysql_query('INSERT INTO `forum_msg_mod` (`uid`,`login`,`align`,`level`,`admin`,`clan`,`time`,`text`,`msg_id`,`delete`,`color`,`city`,`cityreg`,`from_admin`) VALUES
|
||||
("' . $this->user['id'] . '","' . $this->user['login'] . '","' . $this->user['align'] . '","' . $this->user['level'] . '","' . $this->user['admin'] . '","' . $this->user['clan'] . '",
|
||||
@@ -420,7 +420,7 @@ class forum
|
||||
$text = preg_replace('/\[\/code\]/', '</code></pre>', $text);
|
||||
|
||||
$text = preg_replace('/\[(\/?)quote\]/', "<$1blockquote>", $text);
|
||||
$text = preg_replace('/\[(\/?)quote(\s*=\s*([\'"]?)([^\'"]+)\3\s*)?\]/', "<$1blockquote>Öèòàòà $4:<br>", $text);
|
||||
$text = preg_replace('/\[(\/?)quote(\s*=\s*([\'"]?)([^\'"]+)\3\s*)?\]/', "<$1blockquote>Цитата $4:<br>", $text);
|
||||
|
||||
//$text = preg_replace('/\[url\](?:https:\/\/)?([a-z0-9-.]+\.\w{2,4})\[\/url\]/', "<a href=\"https://$1\">$1</a>", $text);
|
||||
$text = preg_replace('/\[url=(.+?)\](.+?)\[\/url\]/', "<a target=\"_blank\" href=\"$1\">$2</a>", $text);
|
||||
@@ -435,8 +435,8 @@ class forum
|
||||
return $text;
|
||||
}
|
||||
|
||||
// $s - ñòðîêà, â êîòîðîé íåîáõîäèìî çàêðûòü òåãè
|
||||
// $tags - ñïèñîê òåãîâ äëÿ çàêðûòèÿ ÷åðåç ñèìâîë | (b|u|i)
|
||||
// $s - строка, в которой необходимо закрыть теги
|
||||
// $tags - список тегов для закрытия через символ | (b|u|i)
|
||||
public function close_dangling_tags($html)
|
||||
{
|
||||
#put all opened tags into an array
|
||||
@@ -469,19 +469,19 @@ class forum
|
||||
public function addnewtop($title, $text, $ico, $time, $login, $uid, $fid, $topic)
|
||||
{
|
||||
if (trim($text, ' ') == '' || iconv_strlen(trim($text, ' ')) < 5) {
|
||||
$this->error = 'Ìèíèìàëüíàÿ äëèíà ñîîáùåíèÿ äîëæíà áûòü íå ìåíåå 5-òè ñèìâîëîâ';
|
||||
$this->error = 'Минимальная длина сообщения должна быть не менее 5-ти символов';
|
||||
} elseif ($this->user['molch2'] > time()) {
|
||||
$this->error = 'Âû íå ìîæåòå ïèñàòü ñîîáùåíèÿ è ñîçäàâàòü òîïèêè íà ôîðóìå, íà âàñ íàëîæåíî çàêëÿòèå ìîë÷àíèÿ';
|
||||
$this->error = 'Вы не можете писать сообщения и создавать топики на форуме, на вас наложено заклятие молчания';
|
||||
} elseif ((trim($title, ' ') == '' || iconv_strlen(trim($title, ' ')) < 5) && $topic == -1) {
|
||||
$this->error = 'Ìèíèìàëüíàÿ äëèíà çàãîëîâêà äîëæíà áûòü íå ìåíåå 5-òè ñèìâîëîâ';
|
||||
$this->error = 'Минимальная длина заголовка должна быть не менее 5-ти символов';
|
||||
} elseif (isset($this->see['id']) && $this->see['nocom'] == 3 && $this->user['admin'] == 0 && ($this->user['align'] <= 3 || $this->user['align'] >= 4)) {
|
||||
$this->error = 'Â ýòîì òîïèêå çàïðåùåíî îñòàâëÿòü îòâåòû';
|
||||
$this->error = 'В этом топике запрещено оставлять ответы';
|
||||
} elseif (isset($this->see['id']) && $this->see['nocom'] == 2 && $this->user['admin'] == 0 && ($this->user['align'] <= 1 || $this->user['align'] >= 2)) {
|
||||
$this->error = 'Â ýòîì òîïèêå çàïðåùåíî îñòàâëÿòü îòâåòû';
|
||||
$this->error = 'В этом топике запрещено оставлять ответы';
|
||||
} elseif (isset($this->see['id']) && $this->see['nocom'] == 1 && $this->user['admin'] == 0) {
|
||||
$this->error = 'Â ýòîì òîïèêå çàïðåùåíî îñòàâëÿòü îòâåòû';
|
||||
$this->error = 'В этом топике запрещено оставлять ответы';
|
||||
} elseif ($this->user['level'] < 2) {
|
||||
$this->error = 'Îáùåíèå íà ôîðóìå äîñòóïíî ñ 2-ãî óðîâíÿ';
|
||||
$this->error = 'Общение на форуме доступно с 2-го уровня';
|
||||
} elseif ($this->gd[$fid] > 0 && $this->lst['time'] < time() - 60) {
|
||||
$ico = (int)$ico;
|
||||
if ($ico < 1 || $ico > 14) {
|
||||
@@ -489,7 +489,7 @@ class forum
|
||||
}
|
||||
$tl = [];
|
||||
if (isset($_POST['adminname']) && $this->user['admin'] > 0) {
|
||||
$tl['login'] = '<Àäìèíèñòðàöèÿ>';
|
||||
$tl['login'] = '<Администрация>';
|
||||
$tl['level'] = '??';
|
||||
$tl['align'] = '0';
|
||||
$tl['clan'] = '0';
|
||||
@@ -508,13 +508,13 @@ class forum
|
||||
$lst = mysql_fetch_array(mysql_query('SELECT * FROM `forum_msg` WHERE `topic` = "' . mysql_real_escape_string($topic) . '" OR (`topic` = "-1" AND `id` = "' . mysql_real_escape_string($topic) . '") ORDER BY `time` DESC LIMIT 1'));
|
||||
$ins = mysql_query('INSERT INTO `forum_msg` (`cityreg`,`city`,`align`,`clan`,`level`,`login`,`fid`,`title`,`topic`,`ico`,`text`,`time`,`ip`,`uid`) VALUES ("' . mysql_real_escape_string($tl['cityreg']) . '","' . mysql_real_escape_string($tl['city']) . '","' . mysql_real_escape_string($tl['align']) . '","' . mysql_real_escape_string($tl['clan']) . '","' . mysql_real_escape_string($tl['level']) . '","' . mysql_real_escape_string($tl['login']) . '","' . mysql_real_escape_string($fid) . '","' . mysql_real_escape_string(htmlspecialchars($title, null, 'cp1251')) . '","' . mysql_real_escape_string($topic) . '","' . mysql_real_escape_string($ico) . '","' . mysql_real_escape_string(htmlspecialchars($text, null, 'cp1251')) . '","' . mysql_real_escape_string($time) . '","' . $_SERVER['HTTP_X_REAL_IP'] . '","' . $tl['id'] . '")');
|
||||
if (!$ins) {
|
||||
$this->error = 'Îøèáêà ñîçäàíèÿ òîïèêà';
|
||||
$this->error = 'Ошибка создания топика';
|
||||
return false;
|
||||
} else {
|
||||
if ($topic != -1) {
|
||||
//Åñëè àâòîð ïðåäûäóùåãî ñîîáùåíèÿ íå òåêóùèé þçåð - îòïðàâëÿåì â ÷àò ñîîáùåíèå î íîâîì îòâåòå
|
||||
//Если автор предыдущего сообщения не текущий юзер - отправляем в чат сообщение о новом ответе
|
||||
if ($lst['uid'] + 1 != $this->user['id']) {
|
||||
$fnt = '<b>' . date('d.m.Y H:i') . '</b> Íà ôîðóìå îïóáëèêîâàí íîâûé îòâåò â îáñóæäåíèè, â êîòîðîì âû ïðèíèìàëè ó÷àñòèå. <a href=https://new-combats.com/forum?read=' . $topic . ' target=_blank \>×èòàòü äàëåå</a>';
|
||||
$fnt = '<b>' . date('d.m.Y H:i') . '</b> На форуме опубликован новый ответ в обсуждении, в котором вы принимали участие. <a href=https://new-combats.com/forum?read=' . $topic . ' target=_blank \>Читать далее</a>';
|
||||
$ins = '';
|
||||
$ll = [];
|
||||
$sp = mysql_query('SELECT `u`.`city`,`u`.`id`,`u`.`login`,`f`.`uid`,`f`.`login` FROM `forum_msg` AS `f` LEFT JOIN `users` AS `u` ON `f`.`uid` = `u`.`id` WHERE `f`.`delete` = "0" AND (`f`.`topic` = "' . mysql_real_escape_string($topic) . '" OR (`f`.`topic` = "-1" AND `f`.`id` = "' . mysql_real_escape_string($topic) . '")) LIMIT 1');
|
||||
@@ -541,9 +541,9 @@ class forum
|
||||
return $fid;
|
||||
}
|
||||
} elseif ($this->lst['time'] > time() - 60) {
|
||||
$this->error = 'Âû íå ìîæåòå îñòàâëÿòü îòâåòû è ñîçäàâàòü òîïèêè òàê áûñòðî';
|
||||
$this->error = 'Вы не можете оставлять ответы и создавать топики так быстро';
|
||||
} else {
|
||||
$this->error = 'Âû íå ìîæåòå îñòàâëÿòü îòâåòû è ñîçäàâàòü òîïèêè â ýòîé êîíôåðåíöèè';
|
||||
$this->error = 'Вы не можете оставлять ответы и создавать топики в этой конференции';
|
||||
}
|
||||
}
|
||||
|
||||
@@ -553,7 +553,7 @@ class forum
|
||||
$start = isset($_GET['page']) ? $_GET['page'] * $fd_limit - $fd_limit : 0;
|
||||
global $code;
|
||||
$filter = new Filter();
|
||||
//îòîáðàæàåì òîïèêè äàííîé êîíôåðåíöèè
|
||||
//отображаем топики данной конференции
|
||||
$re = '';
|
||||
if (isset($_GET['search'])) {
|
||||
$sp = mysql_query('SELECT * FROM `forum_msg` WHERE ( `text` LIKE "%' . mysql_real_escape_string($_GET['search']) . '%" OR `title` LIKE "%' . mysql_real_escape_string($_GET['search']) . '%" OR `login` LIKE "%' . mysql_real_escape_string($_GET['search']) . '%" ) AND `topic` < "0" AND `delete` = "0" ORDER BY `id` DESC LIMIT ' . $start . ',' . $fd_limit);
|
||||
@@ -578,12 +578,12 @@ class forum
|
||||
$re .= '<div>' . $fxd . '<img style="border:0px;" src="https://new-combats.com/forum_script/img/icon' . $pl['ico'] . '.gif"> <a href="?read=' . $pl['id'] . '&rnd=' . $code . '"><b>' . $pl['title'] . '</b></a> ' . $plist . ' ' . $this->genuser($pl['uid'], $pl['login'], $pl['level'], $pl['align'], $pl['clan'], $pl['invis'], $pl['city'], $pl['cityreg']) . '</div>';
|
||||
$re .= '<div style="margin-left:21px;"><small class="date">' . date('d.m.Y H:i', $pl['time']) . '</small> » <small style="color:#606060;">';
|
||||
if ($pl['fid'] == 24) {
|
||||
$re .= $filter->str_count(str_replace('[?]', 'Âîïðîñ: ', str_replace('[/?]', '', str_replace('[:]', ', ', $pl['text']))), 250);
|
||||
$re .= $filter->str_count(str_replace('[?]', 'Вопрос: ', str_replace('[/?]', '', str_replace('[:]', ', ', $pl['text']))), 250);
|
||||
} else {
|
||||
$re .= $filter->str_count(str_replace('[?]', 'Âîïðîñ: ', str_replace('[/?]', '', str_replace('[:]', ', ', $pl['text']))), 250);
|
||||
$re .= $filter->str_count(str_replace('[?]', 'Вопрос: ', str_replace('[/?]', '', str_replace('[:]', ', ', $pl['text']))), 250);
|
||||
}
|
||||
$re .= '</small></div>';
|
||||
$re .= '<div style="margin-left:21px;"><small>Îòâåòîâ: <b>' . $row . '</b> ... ';
|
||||
$re .= '<div style="margin-left:21px;"><small>Ответов: <b>' . $row . '</b> ... ';
|
||||
|
||||
$pku = mysql_query('SELECT `login`,`invis`,`time` FROM `forum_msg` WHERE `topic` = "' . $pl['id'] . '" AND `delete` = 0 ORDER BY `id` DESC LIMIT 10');
|
||||
$pkusr = '';
|
||||
@@ -612,37 +612,37 @@ class forum
|
||||
public function actionSee($id)
|
||||
{
|
||||
if ($id == 1) {
|
||||
//óäàëèòü òîïèê \ êîììåíò
|
||||
//удалить топик \ коммент
|
||||
$up = mysql_query('UPDATE `forum_msg` SET `delete` = "' . time() . '",`del_login`="' . $this->user['login'] . '" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
$this->see['delete'] = time();
|
||||
} elseif ($id == 2) {
|
||||
//çàïðåòèòü êîììåíòèðîâàòü
|
||||
//запретить комментировать
|
||||
mysql_query('UPDATE `forum_msg` SET `nocom` = "1" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
$this->see['nocom'] = 1;
|
||||
} elseif ($id == 3) {
|
||||
//ðàçðåøèòü êîììåíòèðîâàòü òîëüêî Àíãåëàì
|
||||
//разрешить комментировать только Ангелам
|
||||
mysql_query('UPDATE `forum_msg` SET `nocom` = "2" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
$this->see['nocom'] = 2;
|
||||
} elseif ($id == 4) {
|
||||
//ðàçðåøèòü êîììåíòèðîâàòü òîëüêî ïàëàäèíàì
|
||||
//разрешить комментировать только паладинам
|
||||
mysql_query('UPDATE `forum_msg` SET `nocom` = "3" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
$this->see['nocom'] = 3;
|
||||
} elseif ($id == 5) {
|
||||
//ðàçðåøèòü êîììåíòèðîâàòü òîëüêî òàðìàíàì
|
||||
//разрешить комментировать только тарманам
|
||||
mysql_query('UPDATE `forum_msg` SET `nocom` = "4" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
$this->see['nocom'] = 4;
|
||||
} elseif ($id == 6) {
|
||||
//ðàçðåøèòü êîììåíòèðîâàòü âñåì
|
||||
//разрешить комментировать всем
|
||||
mysql_query('UPDATE `forum_msg` SET `nocom` = "0" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
$this->see['nocom'] = 0;
|
||||
} elseif ($id == 9) {
|
||||
//ðàçðåøèòü êîììåíòèðîâàòü âñåì
|
||||
//разрешить комментировать всем
|
||||
$rzn = mysql_fetch_array(mysql_query('SELECT * FROM `forum_menu` WHERE `id` = "' . mysql_real_escape_string($_GET['trm']) . '" LIMIT 1'));
|
||||
if (isset($rzn['id'])) {
|
||||
mysql_query('UPDATE `forum_msg` SET `fid` = "' . mysql_real_escape_string($rzn['id']) . '" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
}
|
||||
} elseif ($id == 7) {
|
||||
//ôèêñàöèÿ òîïèêà èëè ñîîáùåíèÿ
|
||||
//фиксация топика или сообщения
|
||||
if ($this->see['fixed'] == 0) {
|
||||
$this->see['fixed'] = time();
|
||||
} else {
|
||||
@@ -650,7 +650,7 @@ class forum
|
||||
}
|
||||
mysql_query('UPDATE `forum_msg` SET `fixed` = "' . $this->see['fixed'] . '" WHERE `id` = "' . $this->see['id'] . '" LIMIT 1');
|
||||
} elseif ($id == 8) {
|
||||
//óäàëåíèå ñîîáùåíèÿ
|
||||
//удаление сообщения
|
||||
$tpdms = mysql_fetch_array(mysql_query('SELECT `id`,`clear`,`delete` FROM `forum_msg` WHERE `id` = "' . mysql_real_escape_string(round((int)$_GET['delete_msg'])) . '" LIMIT 1'));
|
||||
if (isset($tpdms['id'])) {
|
||||
// if(isset($this->see['id'])) {
|
||||
@@ -675,17 +675,17 @@ class forum
|
||||
global $code;
|
||||
$rt = '';
|
||||
if (isset($pl['id'])) {
|
||||
//0 - äîñòóï çàêðûò, íåëüÿ äàæå ÷èòàòü, 1 - òîëüêî ÷òåíèå, 2 - ðàçðåøåíî äîáàâëÿòü îòâåòû, 3 - ðàçðåøåíî ñîçäàâàòü òîïèêè, 4 - ðàçðåøåíî ñîçäàâàòü òîïèêè è äîáàâëÿòü îòâåòû
|
||||
//0 - доступ закрыт, нелья даже читать, 1 - только чтение, 2 - разрешено добавлять ответы, 3 - разрешено создавать топики, 4 - разрешено создавать топики и добавлять ответы
|
||||
$ico = 4;
|
||||
if ($pl['level'] > $this->user['level']) {
|
||||
$ico = 1;
|
||||
}
|
||||
//ïðîâåðÿåì óðîâåíü äîñòóïà
|
||||
//проверяем уровень доступа
|
||||
$this->gd[$pl['id']] = $ico;
|
||||
$ico = '<img width="10" height="10" title="' . $this->acs[$ico] . '" src="https://new-combats.com/forum_script/img/ic_acc' . $ico . '.gif">';
|
||||
$rt = '' . $ico . ' <a href="?r=' . $pl['id'] . '&rnd=' . $code . '"><b>' . $pl['name'] . '</b></a>';
|
||||
} else {
|
||||
$rt = 'Ðàçäåë íå íàéäåí';
|
||||
$rt = 'Раздел не найден';
|
||||
}
|
||||
return $rt;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user