/*
*
Author modules XxxDIABLOxxX
*
*/
foreach (['common', 'functions', 'user', 'h'] as $scandir) {
$title = 'Почта';
include './system/'.$scandir.'.php';
}
if(!$user) header('Location: /');
?>
$id = (int) abs($_GET['id']);
if($id) {
$ho = fetch("SELECT * FROM `users` WHERE `id` = ?", array($id));
if(!$id OR !$ho OR $id == $user['id']) header('Location: /mail/');
?>
$contacts = rows("SELECT * FROM `contacts` WHERE `user` = ? AND `ho` = ?", array($user['id'], $ho['id']));
$contacts_ho = rows("SELECT * FROM `contacts` WHERE `ho` = ? AND `user` = ?", array($user['id'], $ho['id']));
if(!$contacts) query("INSERT INTO `contacts` SET `user`=?, `ho`=?, `time`=?", array($user['id'], $ho['id'], time()));
if(!$contacts_ho) query("INSERT INTO `contacts` SET `ho`=?, `user`=?, `time`=?", array($user['id'], $ho['id'], time()));
if($ho['r'] != $user['r']) $_s = 100; else $_s = 1;
$text = _trim($_POST['text']);
if($text) {
$antiflood = fetch("SELECT * FROM `mail` WHERE `from` = ? ORDER BY `time` DESC LIMIT ?", array($user['id'], 1));
$blacklist = rows("SELECT * FROM `blacklist` WHERE `user2` = ? AND `user` = ?", array($user['id'], $ho['id']));
if(time() - $antiflood['time'] < 2) $errors[] = 'Писать можно 1 раз в 1 секунду';
if($user['s'] < $_s) $errors[] = 'Не хватает

'.($_s - $user['s']).' серебра
Купить';
if($blacklist) $errors[] = 'Вы в черном списке '.$ho['login'].'';
if($errors) {
echo '
';
foreach($errors as $error) {
echo $error.'
';
}
echo '
';
}
else
{
$text = eregi_replace( "[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", "Реклама", $text);
$text = str_replace(array('ru', 'net', 'com', 'рф', 'tk', 'su', 'us', 'mobi', 'ua', 'www', 'http'), '*', $text);
query("UPDATE `users` SET `s` = ? WHERE `id` = ?", array($_s, $user['id']));
query("INSERT INTO `mail` SET `from` = ?, `to` = ?, `text` = ?, `time` = ?", array($user['id'], $ho['id'], $text, time()));
query("UPDATE `contacts` SET `time` = ? WHERE `user` = ? AND `ho` = ?", array(time(),$user['id'], $ho['id']));
query("UPDATE `contacts` SET `time` = ? WHERE `ho` = ? AND `user` = ?", array(time(),$user['id'], $ho['id']));
header('location: /mail/'.$ho['id'].'/');
}
}
if($ho['id'] != 999999){
echo '
Стоимость сообщения '.($user['r'] == $ho['r'] ? 'своей':'чужой').' фракции
'.$_s.'
';
$q = query("SELECT * FROM `contacts` WHERE `user` = ? ORDER BY `time` DESC LIMIT ?,?", array($user['id'], $start, $max));
foreach($q as $row) {
$ho = fetch("SELECT * FROM `users` WHERE `id` = ?", array($row['ho']));
echo '
time() - 300 ? '':'-off').'.png\' alt=\'*\'/> '.$ho['login'].', '.$ho['level'].' ур.';
$new = rows("SELECT * FROM `mail` WHERE `from` = ? AND `to` = ? AND `read` = ?", array($ho['id'], $user['id'], 0));
if($new > 0) echo '
+'.$new.'';
$lost = fetch("SELECT * FROM `mail` WHERE `from` = ? AND `to` = ? OR `to` = ? AND `from` = ? ORDER BY `time` DESC LIMIT ?", array($user['id'], $ho['id'], $user['id'], $ho['id'], 1));
if($lost) echo '
'.(mb_strlen($lost['text'],'UTF-8') >= 25 ? mb_substr($lost['text'],0, 25, 'UTF-8').'...':$lost['text']).'';
echo '