View file user/wall/edit.php

File size: 3.98Kb
<?php

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

foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'user') as $inc) {
    require_once "../../sys/inc/$inc.php";
}

only_reg();

$doc->Title('Редактирование записи');

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

aut();

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

if ($k['count'] == 0) {
    header("Location: index.php?" . SID);
    exit;
}
$wall = $db->get_array($db->query("SELECT * FROM `wall` WHERE `id` = '$id'"));
$ank = get_user($wall['id_user']);

#Все просто если не создатель записи и не достаточно прав, отправляем назад и уведомляем админа об попытке редактирования
if (($user['level'] >= 4) || ($user['id'] == $wall['id_user'])) {
    
} else {
    $msg = "Совершил попытку редактирования записи на стене [url=/user/wall/comments.php?id=" . $wall['id'] . "]здесь[/url]";
    $db->query("INSERT INTO `events` (`id_user`, `id_kont`, `msg`, `time`) values('$user[id]', '1', '" . $msg . "', '$time')");

    //$_SESSION['message'] = lang('Администрация уведомлена');
    header("Location: comments.php?id=" . $wall['id'] . "" . SID);
    exit;
}

if (isset($_GET['edit']) && isset($_POST['msg'])) {
    $msg = $_POST['msg'];

    if (utf8_strlen($msg) < 3) {
        $err = lang('Короткое сообщение');
    }
    if (utf8_strlen($msg) > 3000) {
        $err = lang('Длинное сообщение');
    }

    $msg = $db->safesql($msg);

    if (isset($_POST['privat_komm'])) {
        if ($_POST['privat_komm'] == 1) {
            $privat_komm = '1';
        } else {
            $privat_komm = '0';
        }
    } else {
        $privat_komm = '0';
    }

    if (!isset($err)) {
        $db->query("UPDATE `wall` SET `msg` = '$msg', `time` = '$time', `privat_komm` = '$privat_komm' WHERE `id`='" . intval($_GET['id']) . "'");

        $_SESSION['message'] = lang('Изменения сохранены');
        header("Location: comments.php?id=" . intval($_GET['id']) . "");
        exit();
    }
}
if (isset($_GET['del'])) {

    if (isset($_GET['ok'])) {
        $db->query("DELETE FROM `wall_comments` WHERE `id_wall` = '" . intval($_GET['id']) . "' LIMIT 1");
        $db->query("DELETE FROM `wall_like` WHERE `id_komm` = '" . intval($_GET['id']) . "' LIMIT 1");
        $db->query("DELETE FROM `wall` WHERE `id` = '" . intval($_GET['id']) . "' LIMIT 1");

        $_SESSION['message'] = lang('Запись успешно удалена');
        header("Location: /info.php?id=" . $ank['id'] . "&act=wall");
        exit();
    }
    echo "<div class='list-group-item-null'>";
    echo lang('Вы действительно хотите удалить запись') . "?<br />";

    $doc->Link('btn btn-primary btn-sm', "?id=" . intval($_GET['id']) . "&amp;del&amp;ok", null, 'Да');
    $doc->Link('btn btn-secondary btn-sm', "comments.php?id=" . intval($_GET['id']) . "", null, 'Нет');

    echo "</div>";

    require_once H . 'sys/inc/tfoot.php';
    exit();
}
err();

echo "<form class='list-group-item-null' name='message' method='POST' action='?id=$wall[id]&amp;edit'>";

$doc->Textarea('msg', 'Запись', 10024, "$wall[msg]");
echo "<br />";
$doc->Checkbox('privat_komm', 'Запретить комментировать', 1);
echo "<br />";
$doc->Button('btn btn-success btn-sm', null, 'save', 'Сохранить');

echo "</form>";

$doc->Link('list-group-item-null', "comments.php?id=" . $wall['id'] . "", 'arrow-left', 'Комментарии');

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