Вход Регистрация
Файл: modules/mail/dialogue.php
Строк: 132
<?php
/****
* @package LiveCMS
* @link livecms.org
* @author MyZik
* @version See attached file VERSION.txt
* @license See attached file LICENSE.txt
* @copyright Copyright (C) LiveCMS Development Team
****/

$lang_mail load_lng('mail'); // Подключаем файл языка
$title $lang['mail']; // Заголовок страницы
$module 'mail'// Модуль

  /**
    * Проверка наличия авторизации
  **/
  
if (!isset($user)) {
    require_once(
HOME .'/incfiles/header.php');
    echo 
'<div class="error">' $lang['only_users'] . '</div>';
    echo 
'<div class="home">' .
    
'<img src="/design/themes/' $set_user['theme'] . '/images/back.png" alt="" /> <a href="/index.php">' $lang['back'] . '</a>' .
    
'</div>';
require_once(
HOME .'/incfiles/footer.php');
}

  
/**
    * Проверяем, верен ли заданный параметр
  **/
  
if (isset($_GET['id']) && (is_numeric($_GET['id']))) {
    
$ID intval($_GET['id']);
    
$user2 mysql_fetch_assoc(mysql_query("SELECT * FROM `users` WHERE `id` = '$ID'"));
      } else {
    require_once(
HOME .'/incfiles/header.php');
    echo 
'<div class="error">' $lang['error_parameter'] . '</div>';
    echo 
'<div class="home">' .
    
'<img src="/design/themes/' $set_user['theme'] . '/images/back.png" alt="" /> <a href="/index.php">' $lang['back'] . '</a>' .
    
'</div>';
    require_once(
HOME .'/incfiles/footer.php');
      }

  
/**
    * Проверяем наличие пользователя
  **/
  
if (empty($ID) || (mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id` = '" $ID "'"), 0) == 0)) {
    require_once(
HOME .'/incfiles/header.php');
    echo 
'<div class="error">' $lang_mail['undefined_user'] . '</div>';
    echo 
'<div class="home">' .
    
'<img src="/design/themes/' $set_user['theme'] . '/images/back.png" alt="" /> <a href="/index.php">' $lang['back'] . '</a>' .
    
'</div>';
    require_once(
HOME .'/incfiles/footer.php');
      }

  
/**
    * Запрещаем писать самому себе
  **/
  
if ($ID == $user['id']) {
    require_once(
HOME .'/incfiles/header.php');
    echo 
'<div class="error">' $lang_mail['user_error'] . '</div>';
    echo 
'<div class="home">' .
    
'<img src="/design/themes/' $set_user['theme'] . '/images/back.png" alt="" /> <a href="/index.php">' $lang['back'] . '</a>' .
    
'</div>';
    require_once(
HOME .'/incfiles/footer.php');
      }

  require_once(
HOME .'/incfiles/header.php'); // Выводим шапку

  /**
    * Добавляем пользователя в контакты, если его там нет
  **/
  
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_contacts` WHERE `user_id` = '" $user['id'] . "' AND `cont_id` = '$ID'"), 0) == 0) {
    
mysql_query("INSERT INTO `cms_contacts` (`user_id`, `cont_id`, `time`, `type`) VALUES ('" $user['id'] . "', '$ID', '" time() . "', 'common')");
    echo 
display_message($lang_mail['contact_add']);
      }

  
/**
    * Помечаем сообщения как прочитанные
  **/
  
mysql_query("UPDATE `cms_mail` SET `read` = 'yes' WHERE `to_id` = '" $user['id'] . "' AND `user_id` = '$ID'");

  
/**
    * Небольшая панель навигации
  **/
  
echo '<div class="title"><a href="/user/cabinet.php">' $lang['my_cabinet'] . '</a> | <b>' $lang_mail['dialogue_with'] . ' "' $user2['login'] . '"</b></div>';

  
/**
    * Отправка сообщения
  **/
  
if (isset($_POST['send'])) {
    
$message input($_POST['message']);
    
/**
      * Проверяем, пустое ли сообщение
    **/
    
if (empty($message))
      
$err[] = $lang_mail['empty_message'];

    
/**
      * Проверяем длину сообщения
    **/
    
if (strlen($message) > 2048)
      
$err[] = $lang_mail['long_message'];

    
/**
      * Проверка на флуд
    **/
    
if (($user['lastpost'] + $cms_set['antiflood_time']) >= time())
      
$err[] = $lang['error_antiflood'];

    
/**
      * Если не было ошибок, заносим данные
    **/
    
if (!isset($err)) {
      
mysql_query("INSERT INTO `cms_mail` (`user_id`, `to_id`, `time`, `message`, `read`, `sys`) VALUES ('" $user['id'] . "', '$ID', '" time() . "', '$message', 'no', 'no')");
      
/**
        * Обновляем время диалога
      **/
      
mysql_query("UPDATE `cms_contacts` SET `time` = '" time() . "' WHERE `cont_id` = '$ID' AND `user_id` = '" $user['id'] . "' LIMIT 1");
      
mysql_query("UPDATE `cms_contacts` SET `time` = '" time() . "' WHERE `user_id` = '$ID' AND `cont_id` = '" $user['id'] . "' LIMIT 1");
      
/**
        * Добавляем автора в контакты, если его там нет
      **/
      
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_contacts` WHERE `user_id` = '$ID' AND `cont_id` = '" $user['id'] . "'"), 0) == 0) {
    
mysql_query("INSERT INTO `cms_contacts` (`user_id`, `cont_id`, `time`, `type`) VALUES ('$ID', '" $user['id'] . "', '" time() . "', 'common')");
      }
       
mysql_query("UPDATE `users` SET `lastpost` = '" time() . "' WHERE `id` = '" $user['id'] . "'");
       echo 
display_message($lang_mail['write_success']);
     } else {
        
// если имеются ошибки, выводим
        
echo error($err);
          }
  }

  
/**
    * Удаление сообщения
  **/
  
if (isset($_GET['delete'])) {
    
/**
      * Проверяем, верен ли заданный параметр
    **/
    
if (empty($_GET['delete']) || !is_numeric($_GET['delete']))
      
$err[] = $lang['error_parameter'];

    
/**
      * Проверяем наличие сообщения
    **/
    
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_mail` WHERE `id` = '" num($_GET['delete']) . "' LIMIT 1"), 0) == 0)
      
$err[] = $lang_mail['undefined_message'];

    
/**
      * Запрещаем удаление чужого сообщения
    **/
    
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_mail` WHERE `id` = '" num($_GET['delete']) . "' AND `user_id` = '" $user['id'] . "' LIMIT 1"), 0) == 0)
      
$err[] = $lang_mail['error_user_message'];

    
/**
      * Если не было ошибок, удаляем сообщение
    **/
    
if (!isset($err)) {
      
mysql_query("DELETE FROM `cms_mail` WHERE `id` = '" num($_GET['delete']) . "' LIMIT 1");
      echo 
display_message($lang_mail['delete_message_success']);
        } else {
      
// если имеются ошибки, выводим
      
echo error($err);
        }
      }

  
/**
    * Если пользователь в игнор-листе, запрещаем писать сообщения
  **/
  
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_contacts` WHERE `user_id` = '$ID' AND `cont_id` = '" $user['id'] . "' AND `type` = 'ignor'"), 0) != 0) {
    echo 
'<div class="error">' $lang_mail['ignor_you'] . '</div>';
      } else {
    
/**
      * Форма
    **/
    
echo '<div class="main"><form name="message" method="post" action="dialogue.php?id=' $ID '">' .
    
$lang_mail['enter_message'] . ' [max. 2048]<br />' .
    
bb_panel('message''message') .
    
'<textarea name="message"></textarea><br />' 
    
'<input type="submit" name="send" value ="' $lang['send'] . '" />' 
    
'</form></div>';
        }

  
/**
    * Настраиваем пагинацию
  **/
  
$total mysql_result(mysql_query("SELECT COUNT(*) FROM `cms_mail` WHERE `user_id` = '" $user['id'] . "' AND `to_id` = '$ID' OR `user_id` = '$ID' AND `to_id` = '" $user['id'] . "'"), 0);
  
$req mysql_query("SELECT * FROM `cms_mail` WHERE `user_id` = '" $user['id'] . "' AND `to_id` = '$ID' OR `user_id` = '$ID' AND `to_id` = '" $user['id'] . "' ORDER BY `time` DESC LIMIT $start$countMess");

  
/**
    * Если нет результатов, выводим уведомление
  **/
  
if ($total 1) {
    echo 
'<div class="error">' $lang_mail['no_messages'] . '</div>';
    }

  while (
$res mysql_fetch_assoc($req)) {
    echo (
$i 2) ? '<div class="list1">' '<div class="list2">';
    
$info '&nbsp;[' display_time($res['time']) . ']&nbsp;' . ($res['read'] == 'no' '<span class="red">' $lang_mail['unread'] . '</span>' '');
    
$body output(txt($res['message']));
    
$end = ($res['user_id'] == $user['id'] ? '<br />[<a href="dialogue.php?id=' $ID '&amp;delete=' $res['id'] . '">' $lang['delete'] . '</a>]' '');
    echo 
display_user($res['user_id'], $info$body$end);
    echo 
'</div>';
    
$i++;
     } 

  
/**
    * Пагинация
  **/ 
  
if ($total $countMess) {
    echo 
'<div class="home">' display_pagination('dialogue.php?id=' $ID '&amp;'$start$total$countMess) . '</div>';
}
  require_once(
HOME .'/incfiles/footer.php'); // Подключаем ноги
?>
Онлайн: 2
Реклама