Teya Salat

' . $lng['guestbook_closed'] . '

'; require('../incfiles/end.php'); exit; } switch ($act) { case 'delpost': /* ----------------------------------------------------------------- Удаление отдельного поста ----------------------------------------------------------------- */ if ($rights >= 6 && $id) { if (isset($_GET['yes'])) { mysql_query("DELETE FROM `guest` WHERE `id`='" . $id . "'"); header("Location: index.php"); } else { echo '
' . $lng['guestbook'] . ' | ' . $lng['delete_message'] . '
' . '

' . $lng['delete_confirmation'] . '?
' . '' . $lng['delete'] . ' | ' . '' . $lng['cancel'] . '

'; } } break; case 'say': /* ----------------------------------------------------------------- Добавление нового поста ----------------------------------------------------------------- */ $admset = isset($_SESSION['ga']) ? 1 : 0; // Задаем куда вставляем, в Админ клуб (1), или в Гастивуху (0) // Принимаем и обрабатываем данные $name = isset($_POST['name']) ? mb_substr(trim($_POST['name']), 0, 20) : ''; $msg = isset($_POST['msg']) ? mb_substr(trim($_POST['msg']), 0, 5000) : ''; $trans = isset($_POST['msgtrans']) ? 1 : 0; $code = isset($_POST['code']) ? trim($_POST['code']) : ''; $from = $user_id ? $login : mysql_real_escape_string($name); // Транслит сообщения if ($trans) $msg = functions::trans($msg); // Проверяем на ошибки $error = array (); $flood = false; if (!$user_id && empty($_POST['name'])) $error[] = $lng['error_empty_name']; if (empty($_POST['msg'])) $error[] = $lng['error_empty_message']; if ($ban['1'] || $ban['13']) $error[] = $lng['access_forbidden']; // CAPTCHA для гостей if (!$user_id && (empty($code) || mb_strlen($code) < 4 || $code != $_SESSION['code'])) $error[] = $lng['error_wrong_captcha']; unset($_SESSION['code']); if ($user_id) { // Антифлуд для зарегистрированных пользователей $flood = functions::antiflood(); } else { // Антифлуд для гостей $req = mysql_query("SELECT `time` FROM `guest` WHERE `ip` = '$ip' AND `browser` = '" . mysql_real_escape_string($agn) . "' AND `time` > '" . ($realtime - 60) . "'"); if (mysql_num_rows($req)) { $res = mysql_fetch_assoc($req); $flood = $realtime - $res['time']; } } if ($flood) $error = $lng['error_flood'] . ' ' . $flood . ' ' . $lng['seconds']; if (!$error) { // Проверка на одинаковые сообщения $req = mysql_query("SELECT * FROM `guest` WHERE `user_id` = '$user_id' ORDER BY `time` DESC"); $res = mysql_fetch_array($req); if ($res['text'] == $msg) { header("location: index.php"); exit; } } if (!$error) { // Вставляем сообщение в базу mysql_query("INSERT INTO `guest` SET `adm` = '$admset', `time` = '$realtime', `user_id` = '$user_id', `name` = '$from', `text` = '" . mysql_real_escape_string($msg) . "', `ip` = '$ip', `browser` = '" . mysql_real_escape_string($agn) . "' "); // Фиксируем время последнего поста (антиспам) if ($user_id) { $postguest = $datauser['postguest'] + 1; mysql_query("UPDATE `users` SET `postguest` = '$postguest', `lastpost` = '$realtime' WHERE `id` = '$user_id'"); } header('location: index.php'); } else { echo functions::display_error($error, '' . $lng['back'] . ''); } break; case 'otvet': /* ----------------------------------------------------------------- Добавление "ответа Админа" ----------------------------------------------------------------- */ if ($rights >= 6 && $id) { if (isset($_POST['submit'])) { mysql_query("UPDATE `guest` SET `admin` = '$login', `otvet` = '" . mysql_real_escape_string(mb_substr($_POST['otv'], 0, 5000)) . "', `otime` = '$realtime' WHERE `id` = '$id' "); header("location: index.php"); } else { echo '
' . $lng['guestbook'] . ' | ' . $lng['reply'] . '
'; $req = mysql_query("SELECT * FROM `guest` WHERE `id` = '$id'"); $res = mysql_fetch_assoc($req); echo '' . '
' . $lng['translit'] . ' | ' . $lng['smileys'] . '
' . '

' . $lng['back'] . '

'; } } break; case 'edit': /* ----------------------------------------------------------------- Редактирование поста ----------------------------------------------------------------- */ if ($rights >= 6 && $id) { if (isset($_POST['submit'])) { $req = mysql_query("SELECT `edit_count` FROM `guest` WHERE `id`='$id'"); $res = mysql_fetch_array($req); $edit_count = $res['edit_count'] + 1; $msg = mb_substr($_POST['msg'], 0, 5000); mysql_query("UPDATE `guest` SET `text` = '" . mysql_real_escape_string($msg) . "', `edit_who` = '$login', `edit_time` = '$realtime', `edit_count` = '$edit_count' WHERE `id` = '$id' "); header("location: index.php"); } else { $req = mysql_query("SELECT * FROM `guest` WHERE `id` = '$id'"); $res = mysql_fetch_assoc($req); $text = htmlentities($res['text'], ENT_QUOTES, 'UTF-8'); echo '
' . $lng['guestbook'] . ' | ' . $lng['edit'] . '
' . '
' . '
' . '

' . $lng['author'] . ': ' . $res['name'] . '

' . '

' . '

' . '
' . '
' . $lng['translit'] . ' | ' . $lng['smileys'] . '
' . '

' . $lng['back'] . '

'; } } break; case 'clean': /* ----------------------------------------------------------------- Очистка Гостевой ----------------------------------------------------------------- */ if ($rights >= 7) { if (isset($_POST['submit'])) { // Проводим очистку Гостевой, согласно заданным параметрам $adm = isset($_SESSION['ga']) ? 1 : 0; $cl = isset($_POST['cl']) ? intval($_POST['cl']) : ''; switch ($cl) { case '1': // Чистим сообщения, старше 1 дня mysql_query("DELETE FROM `guest` WHERE `adm`='$adm' AND `time` < '" . ($realtime - 86400) . "'"); echo '

' . $lng['clear_day_ok'] . '

'; break; case '2': // Проводим полную очистку mysql_query("DELETE FROM `guest` WHERE `adm`='$adm'"); echo '

' . $lng['clear_full_ok'] . '

'; break; default : // Чистим сообщения, старше 1 недели mysql_query("DELETE FROM `guest` WHERE `adm`='$adm' AND `time`<='" . ($realtime - 604800) . "';"); echo '

' . $lng['clear_week_ok'] . '

'; } mysql_query("OPTIMIZE TABLE `guest`"); echo '

' . $lng['guestbook'] . '

'; } else { // Запрос параметров очистки echo '
' . $lng['guestbook'] . ' | ' . $lng['clear'] . '
' . '' . '
' . $lng['cancel'] . '
'; } } break; case 'ga': /* ----------------------------------------------------------------- Переключение режима работы Гостевая / Админ-клуб ----------------------------------------------------------------- */ if ($rights >= 1) { if ($_GET['do'] == 'set') { $_SESSION['ga'] = 1; } else { unset($_SESSION['ga']); } } default: /* ----------------------------------------------------------------- Отображаем Гостевую, или Админ клуб ----------------------------------------------------------------- */ if (!$set['mod_guest']) echo '
' . $lng['guestbook_closed'] . '
'; echo '
' . $lng['guestbook'] . '
'; if ($rights > 0) { $menu = array (); $menu[] = isset($_SESSION['ga']) ? '' . $lng['guestbook'] . '' : '' . $lng['guestbook'] . ''; $menu[] = isset($_SESSION['ga']) ? '' . $lng['admin_club'] . '' : '' . $lng['admin_club'] . ''; if ($rights >= 7) $menu[] = '' . $lng['clear'] . ''; echo '
' . functions::display_menu($menu) . '
'; } // Форма ввода нового сообщения if (($user_id || $set['mod_guest'] == 2) && !$ban['1'] && !$ban['13']) { echo '
'; if (!$user_id) echo $lng['name'] . ' (max 25):

'; echo '' . $lng['message'] . ' (max 5000):
'; if(!$is_mobile) echo functions::auto_bb('form', 'msg'); echo '
'; if ($set_user['translit']) echo ' ' . $lng['translit'] . '
'; if (!$user_id) { // CAPTCHA для гостей echo '' . $lng['captcha'] . '
'; echo ' ' . $lng['captcha'] . '
'; } echo '
'; } else { echo '
' . $lng['access_guest_forbidden'] . '
'; } if (isset($_SESSION['ga']) && ($login == $nickadmina || $login == $nickadmina2 || $rights >= "1")) { $req = mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='1'"); } else { $req = mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='0'"); } $total = mysql_result(mysql_query("SELECT COUNT(*) FROM `guest` WHERE `adm`='" . (isset($_SESSION['ga']) ? 1 : 0) . "'"), 0); if ($total) { if (isset($_SESSION['ga']) && ($login == $nickadmina || $login == $nickadmina2 || $rights >= "1")) { // Запрос для Админ клуба echo '
АДМИН-КЛУБ
'; $req = mysql_query("SELECT `guest`.*, `guest`.`id` AS `gid`, `users`.`rights`, `users`.`lastdate`, `users`.`sex`, `users`.`status`, `users`.`datereg`, `users`.`id` FROM `guest` LEFT JOIN `users` ON `guest`.`user_id` = `users`.`id` WHERE `guest`.`adm`='1' ORDER BY `time` DESC LIMIT $start, $kmess"); } else { // Запрос для обычной Гастивухи $req = mysql_query("SELECT `guest`.*, `guest`.`id` AS `gid`, `users`.`rights`, `users`.`lastdate`, `users`.`sex`, `users`.`status`, `users`.`datereg`, `users`.`id` FROM `guest` LEFT JOIN `users` ON `guest`.`user_id` = `users`.`id` WHERE `guest`.`adm`='0' ORDER BY `time` DESC LIMIT $start, $kmess"); } while ($res = mysql_fetch_assoc($req)) { $text = ''; echo $i % 2 ? '
' : '
'; if (empty($res['id'])) { // Запрос по гостям $req_g = mysql_query("SELECT `lastdate` FROM `cms_guests` WHERE `session_id` = '" . md5($res['ip'] . $res['browser']) . "' LIMIT 1"); $res_g = mysql_fetch_assoc($req_g); $res['lastdate'] = $res_g['lastdate']; } // Время создания поста $text = ' (' . date("d.m.Y / H:i", $res['time'] + $set_user['sdvig'] * 3600) . ')'; if ($res['user_id']) { // Для зарегистрированных показываем ссылки и смайлы $post = functions::checkout($res['text'], 1, 1); if ($set_user['smileys']) $post = functions::smileys($post, $res['rights'] >= 1 ? 1 : 0); } else { // Для гостей обрабатываем имя и фильтруем ссылки $res['name'] = functions::checkout($res['name']); $post = functions::antilink(functions::checkout($res['text'], 0, 2)); } if ($res['edit_count']) { // Если пост редактировался, показываем кем и когда $dizm = date("d.m /H:i", $res['edit_time'] + $set_user['sdvig'] * 3600); $post .= '
Изм. ' . $res['edit_who'] . ' (' . $dizm . ') [' . $res['edit_count'] . ']'; } if (!empty($res['otvet'])) { // Ответ Администрации $otvet = functions::checkout($res['otvet'], 1, 1); $vrp1 = $res['otime'] + $set_user['sdvig'] * 3600; $vr1 = date("d.m.Y / H:i", $vrp1); if ($set_user['smileys']) $otvet = functions::smileys($otvet, 1); $post .= '
' . $res['admin'] . ': (' . $vr1 . ')
' . $otvet . '
'; } if ($rights >= 6) { $subtext = '' . $lng['reply'] . '' . ($rights >= $res['rights'] ? ' | ' . $lng['edit'] . ' | ' . $lng['delete'] . '' : ''); } else { $subtext = ''; } $arg = array ( 'header' => $text, 'body' => $post, 'sub' => $subtext ); echo functions::display_user($res, $arg); echo '
'; ++$i; } } else { echo ''; } echo '
' . $lng['total'] . ': ' . $total . '
'; // Навигация по страницам if ($total > $kmess) { echo '

' . functions::display_pagination('index.php?', $start, $total, $kmess) . '

'; echo '

'; } break; } require('../incfiles/end.php'); ?>