Размер файла: 5.64Kb
<?php
// проверяем корректность запроса
if (!isset($user) || !isset($_GET['user_id']) || mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id` = '". num($_GET['user_id']) ."' LIMIT 1"), 0) == 0)
{
# Перенаправляем на главную
header('Location: /');
}
$to = mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '". num($_GET['user_id']) ."' LIMIT 1"));
// проверка наличия переписки
if (isset($_GET['create']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_chat` WHERE (`user_id` = '$user[id]' OR `to_id` = '$user[id]') AND (`to_id` = '". num($_GET['user_id']) ."' OR `user_id` = '". num($_GET['user_id']) ."')"),0) == 0) {
mysql_query("INSERT INTO `mail_chat` SET `user_id` = '$user[id]', `to_id` = '$to[id]', `time_last_mail` = '". time() ."'");
header('Location: /mail/mail.php?user_id='. $to['id']);
}
# Заголовок модуля
$system['page_title'] = 'Переписка';
# Шапка модуля
require_once(HOME .'/incfiles/header.php');
// проверка наличия переписки
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_chat` WHERE (`user_id` = '$user[id]' OR `to_id` = '$user[id]') AND (`to_id` = '". num($_GET['user_id']) ."' OR `user_id` = '". num($_GET['user_id']) ."')"),0) == 0) {
echo '<div class="title">Переписка c '. $to['nick'] .'</div>
<div class="menu">
У Вас еще нет переписки с пользователем '. $to['nick'] .'.<br />
<a href="/mail/mail.php?user_id='. $to['id'] .'&create">Создать переписку</a>
</div>';
echo '<div class="block">
» <a href="/mail/">Личная почта</a><br />
» <a href="/user/cabinet.php">Личный кабинет</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
}
// определяем чат
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `mail_chat` WHERE `user_id` = '$user[id]' AND `to_id` = '$to[id]'"),0) != 0) $chat_id = mysql_result(mysql_query("SELECT `id` FROM `mail_chat` WHERE `user_id` = '$user[id]' AND `to_id` = '$to[id]'"),0);
else $chat_id = mysql_result(mysql_query("SELECT `id` FROM `mail_chat` WHERE `to_id` = '$user[id]' AND `user_id` = '$to[id]'"),0);
if (isset($_POST['text'])) {
$text = txt($_POST['text']);
if (empty($text)) $err .= 'Не введено сообщение<br />';
if (!empty($text) && (strlen_rus($text) < 3 || strlen_rus($text) > 5000)) $err .= 'Неверная длина сообщения. Допустимо от 3 до 5000 символов<br />';
# Проверка занятости логина
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `mail` WHERE `text` = '". input($text) ."' AND `user_id` = '$user[id]' AND `mail_chat_id` = '$chat_id'"), 0) != 0) $err .= 'Такое сообщение уже существует<br />';
if (!isset($err))
{
# Сохраняем данные
mysql_query("INSERT INTO `mail` SET `mail_chat_id` = '$chat_id', `user_id` = '$user[id]', `to_id` = '$to[id]', `text` = '". input($text) ."', `time` = '". time() ."'");
mysql_query("UPDATE `mail_chat` SET `time_last_mail` = '". time() ."' WHERE `id` = '$chat_id'");
echo '<div class="title">Написание сообщения</div>
<div class="menu">
Ваше сообщение успешно отправленно.
</div>';
echo '<div class="block">
» <a href="/mail/mail.php?user_id='. $to['id'] .'">К переписке</a><br />
» <a href="/mail/">Личная почта</a><br />
» <a href="/user/cabinet.php">Личный кабинет</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
}
}
error($err);
echo '<div class="title">Переписка с '. $to['nick'] .'</div>';
# Кол-во пользователей
$k_chats = mysql_result(mysql_query("SELECT COUNT(*) FROM `mail` WHERE `mail_chat_id` = '$chat_id'"), 0);
# Старт навигации
nav_start($k_chats, 10);
if ($k_chats == 0)
{
echo '<div class="menu">Сообщений нет</div>';
}
else
{
$sql_chats = mysql_query("SELECT * FROM `mail` WHERE `mail_chat_id` = '$chat_id' ORDER BY time DESC LIMIT $start, 10");
while ($chat = mysql_fetch_assoc($sql_chats))
{
if ($user['id'] == $chat['to_id']) mysql_query("UPDATE `mail` SET `read` = '1' WHERE `id` = '$chat[id]'");
echo '<div class="menu">
'. icon($chat['user_id']) .' <a href="/user/user.php?user_id='. $chat['user_id'] .'">'. nick($chat['user_id']) .'</a> '. online($chat['user_id']) .' ('. vtime($chat['time']) .')<br />
'. output($chat['text']) .'
</div>';
}
# Вывод навигации
view_nav('?user_id='. $to['id'] .'&');
}
echo '<form method="post" action="/mail/mail.php?user_id='. $to['id'] .'">
<div class="block">
Сообщение (<a href="/pages/bbcode.php">теги</a>/<a href="/pages/smiles.php">смайлы</a>):<br />
<textarea name="text" rows="4" cols="20"></textarea><br />
<input type="submit" value="Отправить" />
</div>
</form>';
echo '<div class="block">
» <a href="/mail/">Личная почта</a><br />
» <a href="/user/cabinet.php">Личный кабинет</a><br />
» <a href="/">На главную</a>
</div>';
# Ноги модуля
require_once(HOME .'/incfiles/footer.php');
?>