<?php
define('GCMS',true);
define('ROOT','../');
require_once (ROOT.'system/power.php');
if ($aut) {
$diz -> head('Сообщения');
$diz -> title('Сообщения');
switch($act) {
//Удаляем сообщение
case 'delete':
if ($id) {
$sql = $db -> query("SELECT `text` FROM `mail` WHERE `id` = '".$id."' AND `fid` = '".$ya['id']."' LIMIT 1");
if ($sql -> num_rows > 0) {
if (!isset($_GET['true'])) {
$msg .= '<div class="fon">Вы действительно хотите удалить это сообщение?<br/>
<a href="mail.php?act=delete&amp;id='.$id.'&amp;true">Да</a> | <a href="mail.php?act=read&amp;id='.$id.'">Нет</a></div>';
} else {
$db -> multi_query("DELETE FROM `mail` WHERE `id` = '".(int)$id."' AND `fid` = '".(int)$ya['id']."' LIMIT 1; OPTIMIZE TABLE `mail`");
header('refresh: 3; url=mail.php');
$msg .= '<div class="fon">Сообщение удалено!</div>';
}
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
} else header('location: mail.php');
} else header('location: mail.php');
break;
//Сохраняем сообщение
case 'save':
if ($id) {
$sql1 = $db -> query("SELECT `id` FROM `mail` WHERE `read` = 'save' AND `fid` = '".$ya['id']."'");
if ($sql1 -> num_rows <= 100) {
$sql = $db -> query("SELECT `text` FROM `mail` WHERE `id` = '".$id."' AND `read` = 'save' and `fid` = '".$ya['id']."' LIMIT 1");
if ($sql -> num_rows == 0) {
if (!isset($_GET['true'])) {
$msg .= '<div class="fon">Вы действительно хотите сохранить это сообщение?<br/>
<a href="mail.php?act=save&amp;id='.$id.'&amp;true">Да</a> | <a href="mail.php?act=readin&amp;id='.$id.'">Нет</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
} else {
$db -> query("UPDATE `mail` SET `read` = 'save' WHERE `id` = '".$id."' LIMIT 1");
header('refresh: 3; url=mail.php');
$msg .= '<div class="fon">Сообщение сохранено!</div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
}
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
} else header('location: mail.php?act=readin&amp;id='.$id.'');
$msg .= '<div class="fon">Вы привысили допустимый лимит!</div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
}
} else header('location: mail.php?act=readin&amp;id='.$id.'');
break;
//Пишем новое сообщение
case 'new':
if($ya['balls']>=$nastr['osms']){
if (!isset($_POST['text'])) {
$msg .= '<div class="fon"><form action="mail.php?act=new" method="post"><div>
Ник/ID получателя:<br/><input type="text" name="login" maxlength="50"/><br/>
Тема:<br/><input type="text" name="title" maxlength="50"/><br/>
Сообщение:<br/><textarea name="text" cols="20" rows="3"></textarea><br/>
<input type="submit" value="Отправить"/>
</div></form></div>';

$msg .= '</div><div class="levo"><a href="./mail.php">Назад</a></div>';
} elseif($ya['id']==$_POST['login'] or $ya['login']==$_POST['login']) {
$msg .= '<div class="fon">Самому себе писать нельзя!<br/><a href="mail.php?act=new">Назад</a></div>';
} elseif(empty($_POST['login'])) {
$msg .= '<div class="fon">Не введён Ник/ID получателя!<br/><a href="mail.php?act=new">Назад</a></div>';
} elseif(mb_strlen($func -> delprobel($_POST['text'])) < 2)
{
$mgs.='<div class="fon">Текст сообщения не может быть короче 2 символов!
<br/><a href="mail.php?act=new">Назад</a></div>';
} else {
$loading = shit($_POST['login']);
$sql = $db -> query("SELECT `id`,`login`,`mail` FROM `users` WHERE `login` = '".$loading."' or `id`='".$loading."' LIMIT 1");
if ($sql -> num_rows > 0) {
$otpr = $sql -> fetch_assoc();
if($otpr['mail']=='0'){
$tch = abs(intval(htmlentities($db -> real_escape_string($otpr['id']))));
$sql2 = $db -> query("SELECT * FROM `nuts` WHERE `where`='ignor' and `user`='$tch' and `idwh`='$ya[id]' LIMIT 1");
if ($sql2 -> num_rows == 0) {
$tch = shit($_POST['login']);
if (empty($_POST['title'])) $theme = 'Без темы'; else $theme = shit($_POST['title']);
$mesg = shit($_POST['text']);
$db -> query("INSERT INTO `mail` (`fid`,`oid`,`title`,`text`,`time`) VALUES ('".$tch."','".$ya['id']."','".$theme."','".$mesg."','".time()."')");
$msg .= '<div class="fon">Сообщение отправлено!</div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
}else{
$msg .='<div class="fon">Пользователь вас игнорирует!</br><a href="mail.php?act=new">Назад</a></div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
}
}else{
$msg .='<div class="fon">Данный пользователь отключил личные сообщения!</br><a href="mail.php?act=new">Назад</a></div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
}
}else{
$msg .='<div class="fon">Пользователь с введёнными данными не существует!</br><a href="mail.php?act=new">Назад</a></div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';}
}
}else{$msg.='<div class="fon">Извините,но вы пока не можете писать личные сообщения!</div>';
header('refresh: 3; url=mail.php');}
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
break;
//Пишем быстрое сообщение 
case 'write':
if($ya['balls']>=$nastr['osms']){
if ($id) {
$sql = $db -> query("SELECT `login`,`mail` FROM `users` WHERE `id` = '".$id."' LIMIT 1");
if ($sql -> num_rows > 0) {
$name = $sql -> fetch_assoc();
if($name['mail']=='0'){
if (!isset($_POST['text'])) {
$temka = $db -> query("SELECT `title` FROM `mail` WHERE `id` = '".$sid."' LIMIT 1") -> fetch_assoc();
if($sid==0){$tem='Новая тема!';}else{$tem='RE: '.$temka['title'].'';}
$msg .= '<div class="fon"><form action="mail.php?act=write&amp;id='.$id.'&amp;sid='.$sid.'" method="post"><div>
Адрес: <b><a href="id'.$id.'">'.$name['login'].'</a></b><br/>
Тема:<br/><textarea name="title" cols="20" rows="1">'.$tem.'</textarea><br/>
Сообщение:<br/><textarea name="text" cols="20" rows="3"></textarea><br/>
<input type="submit" value="Отправить"/>
</div></form></div>';
if($sid==0){$end='./id'.$id.'';}else{$end='mail.php?act=readin&amp;id='.$sid.'';}
$msg .= '</div><div class="levo"><a href="'.$end.'">Назад</a></div>';
} elseif($ya['id']==$id) {
$msg .= '<div class="fon">Самому себе писать нельзя!<br/>
<a href="mail.php?act=write&amp;id='.$id.'&amp;sid='.$sid.'">Назад</a></div>';
} elseif(mb_strlen($func -> delprobel($_POST['text'])) < 2)
{
$msg.='<div class="fon">Текст сообщения не может быть короче 2 символов!
<br/><a href="mail.php?act=write&amp;id='.$id.'&amp;sid='.$sid.'">Назад</a></div>';
}else{
$sql2 = $db -> query("SELECT * FROM `nuts` WHERE `where`='ignor' and `user`='$id' and `idwh`='$ya[id]' LIMIT 1");
if ($sql2 -> num_rows == 0) {
if (empty($_POST['title'])) $theme = 'Без темы'; else $theme = shit($_POST['title']);
$mesg = shit($_POST['text']);
$db -> query("INSERT INTO `mail` (`fid`,`oid`,`title`,`text`,`time`) VALUES ('$id','$ya[id]','$theme','$mesg','".time()."')");
$msg .= '<div class="fon">Сообщение успешно отправлено!</div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
}else{
$msg .='<div class="fon">Пользователь вас игнорирует!</div>';
  #####Копирайт#######
require_once (ROOT.'system/kopy.php');
}
}
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
} else {
$msg .='<div class="fon">Данный пользователь отключил личные сообщения!</div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
 }
} else {
    $msg .='<div class="fon">Пользователь с данным id не существует!</div>';
 }
} else {$msg .='<div class="fon">Не введен id или пользователь не найден.</div>';}
}else{$msg.='<div class="fon">Извините,но вы пока не можете писать личные сообщения!</div>';
header('refresh: 3; url=mail.php');}
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
break;
//Чтение входящих сообщений
case 'readin':
if ((int)$id) {
$sql = $db -> query("SELECT * FROM `mail` WHERE `id` = '".$id."' AND `fid` = '".$ya['id']."' and `read`<>'save' LIMIT 1");
if ($sql -> num_rows > 0) {
$arr = $sql -> fetch_assoc();
$sms = $db -> query("SELECT `fid`,`oid` FROM `mail` WHERE `id` = '".$id."' LIMIT 1") -> fetch_assoc();
$ot = $db -> query("SELECT `login` FROM `users` WHERE `id` = '".$sms['oid']."' LIMIT 1") -> fetch_assoc();
$msg.='<div class="fon">';
if ($sms['oid'] == $ya['id']) {
$msg .= 'Кому: '.$func->user($sms['fid']).'<br/>';
}else{
$msg .= 'От: '.$func->user($sms['oid']).'<br/>';}

if ($sms['fid'] == $ya['id']) {
$db -> query("UPDATE `mail` SET `read` = 'yes' WHERE `id` = '".$id."' LIMIT 1");
}
$msg .= '<b>Время:</b> '.$func -> vremja($arr['time']).'<br/><b>Сообщение:</b></br>'.$func -> tags($func -> smiles($arr['text']));
 $msg.='</div>';
if ($sms['fid'] == $ya['id']) {
$msg .= '<div class="top"><a href="mail.php?act=write&amp;id='.$sms['oid'].'&amp;sid='.$id.'">Ответить</a> |
 <a href="mail.php?act=delete&amp;id='.$arr['id'].'">Удалить</a> | 
 <a href="mail.php?act=save&amp;id='.$arr['id'].'">Сохранить</a></div>';}
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
} else header('location: mail.php');
} else header('location: mail.php');
break;
//Чтение сохранённых сообщений
case 'readsav':
$msg.='<div class="fon">';
if ((int)$id) {
$sql = $db -> query("SELECT * FROM `mail` WHERE `id` = '".$id."' AND `fid` = '".$ya['id']."' and `read`='save' LIMIT 1");
if ($sql -> num_rows > 0) {
$arr = $sql -> fetch_assoc();
$sms = $db -> query("SELECT `fid`,`oid` FROM `mail` WHERE `id` = '".$id."' LIMIT 1") -> fetch_assoc();
$ot = $db -> query("SELECT `login` FROM `users` WHERE `id` = '".$sms['oid']."' LIMIT 1") -> fetch_assoc();
if ($sms['oid'] == $ya['id']) {
$msg .= 'Кому: '.$func->user($sms['fid']).'<br/>';
}else{
$msg .= 'От: '.$func->user($sms['oid']).'<br/>';}

$msg .= '<b>Время:</b> '.$func -> vremja($arr['time']).'<br/><b>Сообщение:</b></br>'.$func -> tags($func -> smiles($arr['text']));
if ($sms['fid'] == $ya['id']) {
$msg .= '<div class="top"><a href="mail.php?act=delete&amp;id='.$arr['id'].'">Удалить</a></div>';}
$msg.='</div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
} else header('location: mail.php');
} else header('location: mail.php');
break;
//Чтение исходящих сообщений
case 'readon':
if ((int)$id) {
$sql = $db -> query("SELECT * FROM `mail` WHERE `id` = '".$id."' AND `oid` = '".$ya['id']."' LIMIT 1");
if ($sql -> num_rows > 0) {
$arr = $sql -> fetch_assoc();
$msg.='<div class="fon">';
$sms = $db -> query("SELECT `fid`,`oid` FROM `mail` WHERE `id` = '".$id."' LIMIT 1") -> fetch_assoc();
$ot = $db -> query("SELECT `login` FROM `users` WHERE `id` = '".$sms['oid']."' LIMIT 1") -> fetch_assoc();
$for = $db -> query("SELECT `login` FROM `users` WHERE `id` = '".$sms['fid']."' LIMIT 1") -> fetch_assoc();
$msg .= 'Кому: <a href="./id'.$sms['fid'].'"><span>'.$for['login'].'</span></a><br/>';

if ($sms['fid'] == $ya['id']) {
$db -> query("UPDATE `mail` SET `read` = 'yes' WHERE `id` = '".(int)$id."' LIMIT 1");
}
$msg .= '<b>Время:</b> '.$func -> vremja($arr['time']).'<br/><b>Сообщение:</b></br>'.$func -> tags($func -> smiles($arr['text']));
$msg.='</div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
} else header('location: mail.php');
} else header('location: mail.php');
break;
//Сохранённые
case 'saves':
$count = $db -> dbcount('COUNT(*)','mail','`fid` = '.$ya['id'].' and `read`="save"');
$num = isset($ya['num']) ? $ya['num'] : 10;
$total = intval(($count - 1) / $num) + 1; 
if (!isset($_GET['page']) || !is_numeric($_GET['page']) || $_GET['page'] < 1 )
{
$page = 1;
} elseif($_GET['page'] > $total)
{ $page = $total;
} else $page = (int)$_GET['page'];
$start = $page * $num - $num;
if ($count > 0) {
$sql = $db -> query("SELECT * FROM `mail` WHERE `fid` = '".$ya['id']."'  and `read`='save' ORDER BY `id`  desc LIMIT ".$start.",".$num);
while ($arr = $sql -> fetch_assoc()) {
if ($arr['read'] == 'no') {$msg .= '<div class="top">[!]<a href="mail.php?act=readsav&amp;id='.$arr['id'].'"><b>'.$arr['title'].'</b></a><br/>'.$func->user($arr['oid']).' ('.$func -> vremja($arr['time']).')</div>';}
else{$msg .= '<div class="top"><a href="mail.php?act=readsav&amp;id='.$arr['id'].'">'.$arr['title'].'</a></br> '.$func->user($arr['oid']).'('.$func -> vremja($arr['time']).')</div>';}

}
$act = '?act=saves';
$msg .= ''.$func -> pagenav($act,$page,$total).'';
} else {
$msg .= '<div class="fon">Сохранённых сообщений нет</div>';
}
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
break;
//Входящие
case 'in':
if($sid==null or (int)$sid==1){
if($sid==1){$and=' AND `oid`=2';}else{$and=' AND `oid`<>2';}
$count = $db -> dbcount('COUNT(*)','mail','`fid` = '.$ya['id'].''.$and.'  and `read`<>"save"');
$num = isset($ya['num']) ? $ya['num'] : 10;
$total = intval(($count - 1) / $num) + 1; 
if (!isset($_GET['page']) || !is_numeric($_GET['page']) || $_GET['page'] < 1 )
{
$page = 1;
} elseif($_GET['page'] > $total)
{ $page = $total;
} else $page = (int)$_GET['page'];
$start = $page * $num - $num;
if ($count > 0) {
$sql = $db -> query("SELECT * FROM `mail` WHERE `fid` = '".$ya['id']."' $and ORDER BY `id`  desc LIMIT ".$start.",".$num);
while ($arr = $sql -> fetch_assoc()) {
if ($arr['read'] == 'no') {$msg .= '<div class="top">[!]<a href="mail.php?act=readin&amp;id='.$arr['id'].'"><b>'.$arr['title'].'</b></a><br/>'.$func->user($arr['oid']).' ('.$func -> vremja($arr['time']).')</div>';}
else{$msg .= '<div class="top"><a href="mail.php?act=readin&amp;id='.$arr['id'].'">'.$arr['title'].'</a><br/> '.$func->user($arr['oid']).' ('.$func -> vremja($arr['time']).')</div>';}

}
$act = '?act=in&sid='.(int)$sid;
$msg .= ''.$func -> pagenav($act,$page,$total).'';
} else {
$msg .= '<div class="fon">Входящих сообщений нет</div>';
}
}else{$msg .='<div class="fon">Недопустимое значение!</div>';}
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
break;
//Исходящие
case 'up':
$count = $db -> dbcount('COUNT(*)','mail','`oid` = '.$ya['id']);
$num = isset($ya['num']) ? $ya['num'] : 10;
$total = intval(($count - 1) / $num) + 1; 
if (!isset($_GET['page']) || !is_numeric($_GET['page']) || $_GET['page'] < 1 )
{
$page = 1;
} elseif($_GET['page'] > $total)
{ $page = $total;
} else $page = (int)$_GET['page'];
$start = $page * $num - $num;
if ($count > 0) {
$sql = $db -> query("SELECT * FROM `mail` WHERE `oid` = '".$ya['id']."' ORDER BY `id` DESC LIMIT ".$start.",".$num);
while ($arr = $sql -> fetch_assoc()) {
if ($arr['read'] == 'no') $pl = ' <span>[<b>Непрочитано</b>]</span>'; else $pl = '';
$msg .= '<div class="top"><a href="mail.php?act=readon&amp;id='.$arr['id'].'">'.$arr['title'].'</a>'.$pl.'<br/> '.$func->user($arr['fid']).' ('.$func -> vremja($arr['time']).')</div>';
}
$act = '?act=up';
$msg .= ''.$func -> pagenav($act,$page,$total).'';
} else {
$msg .= '<div class="fon">Исходящих сообщений нет</div>';
}
$msg.='</div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./mail.php">Мои сообщения</a>';
$msg .= '</br>'.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
break;

default:
$msg.='<div class="fon">';
$msg .= '<a href="./mail.php?act=new">Написать письмо</a></br>';
$sms = $db -> dbcount('COUNT(*)','mail','`fid` = '.$ya['id'].'   AND `oid`<>2  and `read`<>"save"');
$smsnew = $db -> dbcount('COUNT(`id`)','mail',"`fid` = '".$ya['id']."' AND `read` = 'no'  AND `oid`<>'2'  and `read`<>'save'");
$msg .= '<a href="./mail.php?act=in">Входящие</a> <b>('.$smsnew.'/'.$sms.')</b></br>';

$sms_s = $db -> dbcount('COUNT(*)','mail','`fid` = '.$ya['id'].'   AND `oid`=2  and `read`<>"save"');
$smsnew_s = $db -> dbcount('COUNT(`id`)','mail',"`fid` = '".$ya['id']."' AND `read` = 'no'  AND `oid`='2'  and `read`<>'save'");
$msg .= '<a href="./mail.php?act=in&amp;sid=1">Системные</a> <b>('.$smsnew_s.'/'.$sms_s.')</b></br>';

$smssev = $db -> dbcount('COUNT(`id`)','mail',"`fid` = '".$ya['id']."' AND `read` = 'save'");
$msg .= '<a href="./mail.php?act=saves">Сохранённые</a> <b>('.$smssev.'/100)</b></br>';

$smsup = $db -> dbcount('COUNT(*)','mail','`oid` = '.$ya['id']);
$smsupi = $db -> dbcount('COUNT(`id`)','mail',"`oid` = '".$ya['id']."' AND `read` = 'no'");
$msg .= '<a href="./mail.php?act=up">Исходящие</a> <b>('.$smsupi.'/'.$smsup.')</b></br>';
$msg.='</div>';
$msg .= '<div class="levo">'.$diz -> img('back.png').'<a href="./">Личный кабинет</a></br>';
$msg .= ''.$diz -> img('home.png').'<a href="/index.php">На главную</a></div>';
#####Копирайт#######
require_once (ROOT.'system/kopy.php');
$diz -> out($msg);
}
} else {
header('location: ../aut.php');
}
?>