<?php

/* DCMS Special
 * Дата последнего редактирования 10.10.2016
 * Модифицировал densnet
 */

only_reg();

$set['title'] = lang('Новости') . ' - ' . lang('Комментарии');

require_once H . 'sys/inc/thead.php';

if (!isset($_GET['new_komm']) && !is_numeric($_GET['new_komm'])) {
    header("Location:?");
    exit;
}
$q = $db->super_query("SELECT COUNT(*) as count FROM `news_komm` WHERE `id` = '" . intval($_GET['new_komm']) . "' LIMIT 1");
if ($q['count'] == 0) {
    header("Location: ?" . SID);
    exit;
}

$post = $db->get_array($db->query("SELECT * FROM `news_komm` WHERE `id`='" . intval($_GET['new_komm']) . "'"));
$ank = $db->get_array($db->query("SELECT * FROM `user` WHERE `id`='$post[id_user]'"));
$news = $db->get_array($db->query("SELECT * FROM `news` WHERE `id`='$post[id_news]'"));

$q = $db->super_query("SELECT COUNT(*) as count FROM `news` WHERE `id` = '$post[id_news]' LIMIT 1");
if ($q['count'] == 0) {
    header("Location: ?" . SID);
    exit;
}

$q = $db->super_query("SELECT COUNT(*) as count FROM `user` WHERE `id` = '$ank[id]' LIMIT 1");
if ($q['count'] == 0) {
    header("Location: ?news=$news[id]" . SID);
    exit;
}

if ($news['close'] == 1) {
    header("Location: ?news=$news[id]" . SID);
    exit;
}

if (isset($_POST['msg']) && isset($user)) {
    $msg = $_POST['msg'];
    $mat = antimat($msg);

    if ($mat) {
        $err[] = lang("В тексте сообщения обнаружен мат") . ": $mat";
    }

    if (utf8_strlen($msg) > 10024) {
        $err = lang('Сообщение слишком длинное');
    } elseif (utf8_strlen($msg) < 2) {
        $err = lang('Короткое сообщение');
    }

    $q = $db->super_query("SELECT COUNT(*) as count FROM `news_komm` WHERE `id_news` = '$post[id_news]' AND `id_user` = '$user[id]' AND `msg` = '" . $db->safesql($msg) . "' LIMIT 1");
    if ($q['count'] != 0) {
        $err = lang('Ваше сообщение повторяет предыдущее');
    } elseif (!isset($err)) {
        $db->query("INSERT INTO `news_komm` (`id_user`, `time`, `msg`, `id_news`, `otvet`, `id_otvet`) values('$user[id]', '$time', '" . $db->safesql($msg) . "', '$news[id]', '$ank[id]', '$post[id]')");
        $db->query("UPDATE `user` SET `money` = '" . ($user['money'] + 3) . "', `activity` = '" . ($user['activity'] + 2) . "' WHERE `id` = '$user[id]' LIMIT 1");

        $_SESSION['message'] = lang('Сообщение успешно добавлено');

        #Отправляем в ответы друга уведомление
        $q = $db->query("SELECT * FROM `friends` WHERE `user` = '$user[id]' AND `lenta_news` = '1' AND `i` = '1'");
        while ($f = $db->get_array($q)) {
            $a = $db->get_array($db->query("SELECT * FROM `user` WHERE `id` = '$f[friends]' LIMIT 1"));

            $not_msg = "$SexKomm новость [url=" . DIR_NEWS . "?news=$news[id]]" . htmlspecialchars($news['title']) . "[/url]";

            $db->query("INSERT INTO `notifications` (`id_user`, `id_kont`, `id_img`, `msg`, `time`) values('$user[id]', '$a[id]', '3', '$not_msg', '$time')");
        }

        #оповищаем автора о том, что ответили на его сообщение
        if ($user['id'] != $ank['id']) {
            $msgrat = "$SexOtv " . lang('на Ваше сообщение в') . " [url=" . DIR_NEWS . "?news=$news[id]]" . lang('этой') . "[/url] " . lang('новости') . " ";
            $db->query("INSERT INTO `notification` (`id_user`, `id_kont`, `id_img`, `msg`, `time`) values('$user[id]', '$ank[id]', '4', '$msgrat', '$time')");
        }

        header("Location:?news=$news[id]");
        exit;
    }
}

err();

#Навигация
echo "<div class='list-group-item-null list-group-item-grey'><small>";
echo "<a href='/' class='hint--right' data-hint='" . lang('На главную') . "'><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='" . DIR_NEWS . "'>" . lang('Новости') . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='" . DIR_NEWS . "?news=$news[id]'>" . cutStr($news['title'], 30) . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='" . DIR_NEWS . "?news=$news[id]'>" . cutStr($post['msg'], 30) . "</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo lang('Ответ');
echo "</small></div><br />";

if (isset($user)) {
    echo "<div class='list-group-item-null'>";
    echo "$ank[nick]:<br />" . toOutput($post['msg']);
    echo "</div>";

    echo "<form class='list-group-item-null list-group-item-grey' name='message' method='POST' action='?new_komm=$post[id]'>";
    echo auto_bb("message", "msg");
    $doc->Textarea('msg', 'Ответ на сообщение', 10024);
    echo "<br />";
    $doc->Button('btn btn-success btn-sm', 'ok', 'pencil', 'Ответить');

    echo "</form>";
}

require_once H . 'sys/inc/tfoot.php';
