Файл: user/files/edit_file.php
Строк: 109
<?php
/* Мод "Файлы"
 * Версия v0.0.1
 * Дата последнего редактирования 30.01.2015
 * Двиг DCMS Special
 * Модифицировал densnet
 * Файл edit_file.php
 * Описание: редактирование файлов
 */
require_once '../../sys/inc/start.php';
require_once H . 'sys/inc/compress.php';
require_once H . 'sys/inc/sess.php';
require_once H . 'sys/inc/settings.php';
require_once H . 'sys/inc/db_connect.php';
require_once H . 'sys/inc/ipua.php';
require_once H . 'sys/inc/fnc.php';
require_once H . 'sys/inc/user.php';
$set['title'] = 'Файлы';
require_once H . 'sys/inc/thead.php';
user::only_reg();
title();
aut();
$id = intval($_GET['id']);
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_files` WHERE `id` = '$id' AND `id_user` = '$user[id]' LIMIT 1"), 0) == 0) {
    header("Location: /index.php?");
    exit;
}
$file_id = mysql_fetch_array(mysql_query("SELECT * FROM `user_files` WHERE `id` = '$id'"));
if ($file_id['id_user'] == $user['id'] && isset($_GET['act']) && $_GET['act'] == 'delete' && isset($_GET['ok'])) {
    mysql_query("DELETE FROM `user_files` WHERE `id` = '$id'");
    unlink(H . 'sys/files/' . $id . '.dat');
    header("location: index.php?id=" . $user['id'] . "");
}
if ($file_id['id_user'] == $user['id'] && isset($_GET['act']) && $_GET['act'] == 'rename' && isset($_GET['ok'])) {
    if ($_POST['name'] == NULL) {
        $err[] = "Введите название файла";
    }
    if (!preg_match("#^([A-zА-я0-9-_ ])+$#ui", $_POST['name'])) {
        $err[] = 'В названии присутствуют запрещенные символы';
    }
    if (preg_match("#(^ )|( $)#ui", $_POST['name'])) {
        $err[] = 'Запрещено использовать пробел в начале и конце названия файла';
    }
    if (!isset($err)) {
        mysql_query("UPDATE `user_files` SET `name`='" . mysql_real_escape_string($_POST['name']) . "' WHERE `id` = '$id' LIMIT 1");
        header("location: file.php?id=" . $id . "");
    }
}
err();
if ($file_id['id_user'] == $user['id'] && isset($_GET['act']) && $_GET['act'] == 'rename') {
    echo "<form action = '?id=$id&act=rename&ok' method = 'post' class = 'razd'>";
    echo "<b>Название файла</b><br />";
    echo "<div class = 'inputs'>";
    echo "<input type = 'text' name = 'name' value = '$file_id[name]'/>";
    echo "<div class = 'input-icon'>" . img16('pen.png') . "</div>";
    echo "</div>";
    echo "<button class = 'button sign-ins'>" . img16('save.png') . " Сохранить</button>";
    echo "<a href = 'file.php?id=$id' class = 'button sign-ins'>Отмена</a><br />n";
    echo "</form>";
}
if ($file_id['id_user'] == $user['id'] && isset($_GET['act']) && $_GET['act'] == 'delete') {
    echo "<div class = 'errs'>";
    echo "Удалить файл <b>$file_id[name]</b>?<br /><br />n";
    echo "<a class = 'add' href = '?id=$id&act=delete&ok'>Да</a> ";
    echo "<a class = 'add' href = 'file.php?id=$id'>Нет</a>";
    echo "</div>";
}
if ($file_id['id_user'] == $user['id'] && isset($_GET['act']) && $_GET['act'] == 'obmen') {
    if (isset($_POST['dir_osn'])) {
        $dir_id = mysql_fetch_array(mysql_query("SELECT * FROM `obmennik_dir` WHERE `dir` = '$_POST[dir_osn]'"));
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `obmennik_files` WHERE `id_dir` = '$dir_id[id]' AND `name` = '$file_id[name]'"), 0) != 0)
            $err[] = 'Файл с таким названием уже есть в этой папке';
        if (!isset($err)) {
            mysql_query("INSERT INTO `obmennik_files` (`id_dir`, `name`, `ras`, `size`, `time`, `time_last`, `id_user`, `opis` )
VALUES ('$dir_id[id]', '$file_id[name]', '$file_id[ras]', '$file_id[size]', '$time', '$time', '$user[id]', '$file_id[opis]' )");
            $id_file = mysql_insert_id();
            if (!@copy(H . "files/user_files/$file_id[id].dat", H . "sys/obmen/files/$id_file.dat")) {
                mysql_query("DELETE FROM `obmennik_files` WHERE `id` = '$id_file' LIMIT 1");
            }
            msg('Файл успешно добавлен в обменник');
        }
    }
    err();
    if ($file_id['ras'] == 'mp3' || $file_id['ras'] == 'amr' || $file_id['ras'] == 'wav' || $file_id['ras'] == 'midi' || $file_id['ras'] == 'mmf') {
        $dir = 'Музыка';
    }
    if ($file_id['ras'] == 'avi' || $file_id['ras'] == 'mp4' || $file_id['ras'] == 'flv' || $file_id['ras'] == '3gp') {
        $dir = 'Видео';
    }
    if ($file_id['ras'] == 'jpeg' || $file_id['ras'] == 'gif' || $file_id['ras'] == 'jpg' || $file_id['ras'] == 'png') {
        $dir = 'Картинки';
    }
    if ($file_id['ras'] == 'rar' || $file_id['ras'] == 'zip') {
        $dir = 'Архив';
    }
    if (isset($dir)) {
        echo "<div class = 'razd'>";
        echo "Автоопределение расширения: <b>$dir</b>";
        echo "</div>";
    }
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `obmennik_dir` WHERE `upload` not like '0' AND `ras` like '%$file_id[ras]%'"), 0) == 0) {
        echo "<div class = 'error'>";
        echo '<b>Категории для выгрузки данных файлов в обменнике не существует!</b>';
        echo "</div>";
    } else {
        echo "<form class = 'razd' action = 'edit_file.php?act=obmen&id=$id' method = 'post'>";
        echo "Категория: ";
        echo "<select name = 'dir_osn'>";
        $q = mysql_query("SELECT DISTINCT `dir`, `name` FROM `obmennik_dir` WHERE `upload` not like '0' AND `ras` like '%$file_id[ras]%' ORDER BY 'dir' ASC");
        while ($post = mysql_fetch_array($q)) {
            echo "<option value='$post[dir]'>$post[name]</option>n";
        }
        echo "</select><br />n";
        echo "<button class = 'button sign-ins' name = 'ok'>Поместить</button>";
        echo "</form>";
        echo "<div class = 'razd'>";
        echo "<a href = 'index.php?id=$id' class = 'add'>" . img16('left.png') . " Вернуться</a>";
        echo "</div>";
    }
}
require_once H . 'sys/inc/tfoot.php';