Файл: 3/mail.php
Строк: 135
<?php
require_once ('system/func.php');
auth(); // Закроем от не авторизованных
# Настройки #
$id = num($_GET['id']);
if($id){
$prof = $db->query("SELECT * FROM `users` WHERE `id` = '".$id."'")->fetch_assoc();
# Ошибки #
if(!$prof){
$_SESSION['msg'] = 'Такой игрок не существует';
header('Location: /mail/');
exit();
}
if(isset($_GET['text'])){
if(isset($_POST['text'])){
$text = text($_POST['text']);
$ban = $db->query('SELECT * FROM `ban` WHERE `id_user` = "'.$myID.'" AND `last` > "'.time().'" ORDER BY `id` DESC LIMIT 1')->fetch_assoc();
if(strlen($text) < 3 or strlen($text) > 1000)$err = 'Длина сообщения должна быть в пределах 3 - 1000 символов';
if($ban)$err = "На вас наложен, бан осталось ".tl($ban[last]-time());
if($prof['id']==1)$err = "По вопросам игры пишите Модераторам. По ошибкам и предложениям пишите на форуме или в поддержку.</a>";
if(!$err){
$db->query("INSERT INTO `mail` SET `in` = '$myID', `out` = '".$prof['id']."', `text` = '$text' , `time` = '".time()."'");
$kont = $db->query("SELECT * FROM `kont` WHERE `id_user` = '".$myID."' && `id_kont` = '".$prof['id']."' LIMIT 1")->fetch_assoc();
if($kont['id_kont'] != $prof['id']){
$db->query("INSERT INTO `kont` SET `id_user` = '".$prof['id']."', `id_kont` = '".$myID."', `time` = '".time()."'");
$db->query("INSERT INTO `kont` SET `id_user` = '$myID', `id_kont` = '".$prof['id']."', `time` = '".time()."'");
}else{
$db->query("update `kont` set `time` = '".time()."' WHERE `id_user` = '".$myID."' && `id_kont` = '".$prof['id']."'");
$db->query("update `kont` set `time` = '".time()."' WHERE `id_user` = '".$prof['id']."' && `id_kont` = '".$myID."'");
}
$_SESSION['msg'] = 'Сообщение успешно отправлено';
header("Location: /mail/$prof[id]");
exit();
}else{
$_SESSION['msg'] = $err;
header("Location: /mail/$prof[id]");
exit();
}
}else{
$_SESSION['msg'] = 'Введите сообщение';
header("Location: /mail/$prof[id]");
exit();
}
}
$title = 'Диалог с '.$prof['login'];
require_once ('system/header.php');
$tm=time()-259200;
$db->query("DELETE FROM `mail` WHERE `time`<='".$tm."' ");
$db->query("DELETE FROM `kont` WHERE `time`<='".$tm."' ");
echo'<div class="lent mlra w80">
<div class="bl-ttl"><div class="te"><div class="ttl">
Почта
</div></div></div>';
echo "<div class='block center'>";
echo '<form name="text" method="post" action="?text">';
echo '<textarea name="text" placeholder="Введите сообщение..." maxlength="1000"></textarea><br>';
echo '<input class="btn" type="submit" value="Отправить">';
echo "<a href='/mail/$prof[id]' class='btn'>Обновить</a>";
echo "</form>";
echo "</div><div class='stone'></div>";
echo "<div class='block'>";
$set['p_str'] = 10;
$k_post = $db->query("SELECT * FROM `mail` WHERE (`in` = '$prof[id]' && `out` = '$user[id]') or (`in` = '$user[id]' && `out` = '$prof[id]')")->num_rows;
$k_page = k_page($k_post,$set['p_str']);
$page = page($k_page);
$start = $set['p_str']*$page-$set['p_str'];
$q = $db->query("SELECT * FROM `mail` WHERE (`in` = '$prof[id]' && `out` = '$user[id]') or (`in` = '$user[id]' && `out` = '$prof[id]') ORDER BY `id` DESC LIMIT $start, $set[p_str]");
if($k_post == 0) echo "Сообщений не найдено...";
$db->query("update `mail` set `online` = '0' WHERE `in` = '".$prof['id']."' && `out` = '".$myID."'");
//$db->query("UPDATE `kont` SET `new_msg` = '0' WHERE `id_kont` = '$ank[id]' AND `id_user` = '$myID' LIMIT 1");
while($post = $q->fetch_assoc()) {
if($post['online'] == 1)$color = 'green';
else $color = '#A8A8A8';
$ank = $db->query("SELECT * FROM `users` WHERE `id` = $post[in] LIMIT 1")->fetch_assoc();
$nik='<span style="text-shadow: 1px 0 10px #'.$ank[gradient2].';">'.gradient(''.$ank[login].'',''.$ank[gradient1].'', ''.$ank[gradient2].'').'</span>';
echo icons_user($ank[id])." <a href='/profile/$ank[id]'>$nik</a>, <font color='$color'>".vremja($post['time'])."</font><br>".text_msg($post['text'])."<br>";
}
if($k_post>10){
str('?',$k_page,$page); // Вывод страниц
}
echo "</div></div>";
echo "<a href='/mail/' class='link'>".ico('icons','arrow.png')." Все контакты ";
if($new_msg >= 1)echo "<font color='green'>(+)</font>";
echo "</a>";
}else{
$title = 'Почта';
require_once ('system/header.php');
echo'<div class="lent mlra w80">
<div class="bl-ttl"><div class="te"><div class="ttl">
Почта
</div></div></div>';
$set['p_str'] = 10;
$k_post = $db->query("SELECT * FROM `kont` WHERE `id_user` = '".$myID."'")->num_rows;
$k_page = k_page($k_post,$set['p_str']);
$page = page($k_page);
$start = $set['p_str']*$page-$set['p_str'];
$q = $db->query("SELECT * FROM `kont` WHERE `id_user` = '".$myID."' ORDER BY `time` DESC LIMIT $start, $set[p_str]");
echo "<div class='block2'>";
if($k_post == 0)echo "<h1>Нет контактов...</h1>";
while ($post = $q->fetch_assoc()){
$ank = $db->query("SELECT * FROM `users` WHERE `id` = '".$post['id_kont']."' LIMIT 1")->fetch_assoc();
$mess = $db->query("SELECT * FROM `mail` WHERE `in` = '$user[id]' && `out` = '$ank[id]' OR `in` = '$ank[id]' AND `out` = '$user[id]' ORDER BY `id` DESC LIMIT 1");
$msg = $mess->fetch_assoc();
$new_msg = $db->query("SELECT * FROM `mail` WHERE `out` = '".$user['id']."' && `in` = '".$ank['id']."' AND `online` = '1'")->num_rows;
$online = $db->query("SELECT * FROM `mail` WHERE `out` = '".$ank['id']."' && `in` = '".$user['id']."' AND `online` = '1'")->num_rows;
echo "<li><a href='/mail/$ank[id]'>";
$nik='<span style="text-shadow: 1px 0 10px #'.$ank[gradient2].';">'.gradient(''.$ank[login].'',''.$ank[gradient1].'', ''.$ank[gradient2].'').'</span>';
echo icons_user($ank[id])."".$nik.", ".vremja($msg['time'])." ";
if($new_msg > 0)echo "<font color='red'>($new_msg)</font>";
if($online > 0)echo "<font color='gren'>($online)</font>";
echo "<br>".rez_text($msg['text'], 10, 15)."</a></li>";
}
echo "</div>";
if($k_post>10){
echo "<div class='block'>";
str('?',$k_page,$page); // Вывод страниц
echo "</div>";
}}
echo "</div>";
require_once ('system/footer.php');
?>