File size: 6.69Kb
<?php
// by mides, wmclub.mobi
$title = 'Приват';
require('../config.php');
require('../includes/sys.php');
require('../includes/start.php');
require('../includes/auth_u.php');
require('../includes/header.php');
switch($_GET['act']){
###############################################################################
## Входящие сообщения ##
###############################################################################
default:
tp('Приват');
$private = mysql_result(mysql_query("SELECT COUNT(`id`) FROM `private` WHERE `id_user` = '$u[id]'"), 0);
if($private > 0){
$pages = ceil($private/$config['onpage']);
if(intval($_REQUEST['page'])){
$page = intval($_REQUEST['page']);
}else{
$page = 1;
}
$from = ($page-1)*$config['onpage'];
$result = mysql_query("SELECT `id`, `sender`, `time`, `read` FROM `private` WHERE `id_user` = '$u[id]' ORDER BY `time` DESC LIMIT $from, $config[onpage]");
while($msg = mysql_fetch_assoc($result)){
if($msg['read'] == 0){
$new = '<font color="red">New</font>';
}else{
$new = '';
}
echo '<a href="?act=read&id='.$msg['id'].'">От '.login($msg['sender']).'</a> ('.date('d.m.y, H:i', $msg['time']).') '.$new.'<br />';
}
}else{
echo 'Входящих сообщений нет<br />';
}
echo '<br /><a href="?act=send" class="button">Отправить письмо</a>';
echo '<hr />';
navig($page, '?', $pages);
echo '<a href="office.php">Назад</a><br />';
echo '<a href="../">На главную</a><br />';
echo '</div>';
break;
###############################################################################
## Форма отправления сообщения ##
###############################################################################
case 'send':
if($_SESSION['spam'] < time()){
$us = check($_REQUEST['us']);
tp('Отправить письмо');
echo '<form action="?act=send_do&us='.$us.'" method="post" name="form">';
echo 'Логин:<br /><input name="login" type="text" value="'.$us.'" maxlength="20" /><br />';
echo 'Сообщение(max250):<br /><textarea name="text" cols="" rows="4"></textarea><br />
<input name="submit" type="submit" value="Отправить" /></form>';
nav2('office.php', 'Назад в кабинет');
}else{
error('Антиспам! Разрешено писать раз в '.$config['antispam'].' сек.!');
nav2('?', 'Назад в приват');
}
break;
###############################################################################
## Отправка сообщения ##
###############################################################################
case 'send_do':
$us = check($_POST['login']);
if($_SESSION['spam'] < time()){
if(!empty($_POST['login']) and !empty($_POST['text'])){
$user = mysql_fetch_assoc(mysql_query("SELECT `id` FROM `users` WHERE `user_login` = '$us'"));
if(isset($user['id'])){
if($user['id'] !== $u['id']){
if(!mysql_num_rows(mysql_query("SELECT `id` FROM `foes` WHERE `id_user` = '$u[id]' and `is_foe_for` = '$user[id]'"))){
if($u['user_points'] >= $config['min_points']){
$inbox_u = mysql_result(mysql_query("SELECT COUNT(`id`) FROM `private` WHERE `id_user` = '$user[id]'"), 0);
if($inbox_u < $config['max_priv']){
$text = check($_POST['text']);
mysql_query("INSERT INTO `private` SET `id_user` = '$user[id]', `text` = '$text', `sender` = '$u[id]', `time` = '".time()."'");
$_SESSION['spam'] = time() + $config['antispam'];
info('Ваще сообщение успешно отправлено!');
nav2('private.php', 'Назад в приват');
}else{
error('Приват получателя переполнен!');
nav('?act=send&us='.$us);
}
}else{
error('Чтобы отправлять приватные сообщения, вам необходимо набрать '.$config['min_points'].' кармы');
nav('?act=send&us='.$us);
}
}else{
error('Вы находитесь в игноре у получателя!');
nav('?act=send&us='.$us);
}
}else{
error('Вы не можете отправить сообщение самому себе!=)');
nav('?act=send&us='.$us);
}
}else{
error('Получатель не существует!');
nav('?act=send&us='.$us);
}
}else{
error('Вы не заполнили поля!');
nav('?act=send&us='.$us);
}
}else{
error('Антиспам! Разрешено писать раз в '.$config['antispam'].' сек.!');
nav('?act=send&us='.$us);
}
break;
###############################################################################
## Просмотр сообщения ##
###############################################################################
case 'read':
$id = intval($_REQUEST['id']);
$msg = mysql_fetch_assoc(mysql_query("SELECT * FROM `private` WHERE `id` = '$id'"));
if(isset($msg['id']) and $msg['id_user'] == $u[id]){
if($msg['read'] == 0){
mysql_query("UPDATE `private` SET `read` = 1 WHERE `id` = '$id'");
}
tp('Сообщение от <a href="profile.php?u='.$msg['sender'].'">'.login($msg['sender']).'</a>');
echo bb($msg['text']).'<br />';
echo '<i>Отправлено: '.date('d.m.y, H:i', $msg['time']).'</i><br /><br />';
echo '<a href="?act=send&us='.login($msg['sender']).'" class="button">Ответить</a><br />';
//echo '<a href="?act=save&id='.$msg['id'].'" class="button">Сохранить</a><br />';
echo '<a href="?act=del&id='.$msg['id'].'" class="button">Удалить сообщение</a><br />';
}else{
error('Сообщение не существует!');
}
nav2('?', 'Назад в приват');
break;
###############################################################################
## Удаление сообщения ##
###############################################################################
case 'del':
$id = intval($_REQUEST['id']);
$msg = mysql_fetch_assoc(mysql_query("SELECT `id`, `id_user` FROM `private` WHERE `id` = '$id'"));
if($msg['id_user'] == $u['id']){
mysql_query("DELETE FROM `private` WHERE `id` = '$id'");
info('Сообщение успешно удалено');
}else{
error('Сообщение не существует!');
}
nav2('?', 'Назад в приват');
break;
}
require ('../includes/tail.php');
?>