Файл: user/personalfiles/inc/file.php
Строк: 284
<?
/*
  =======================================
  Личные файлы юзеров для Dcms-Social
  Автор: Искатель
  ---------------------------------------
  Этот скрипт распостроняется по лицензии
  движка Dcms-Social.
  При использовании указывать ссылку на
  оф. сайт http://dcms-social.ru
  ---------------------------------------
  Контакты
  ICQ: 587863132
  http://dcms-social.ru
  =======================================
 */
$file_id = mysql_fetch_assoc(mysql_query("SELECT * FROM `obmennik_files` WHERE `id`='" . intval($_GET['id_file']) . "' LIMIT 1"));
if ($file_id['id_user'] != $ank['id']) {
    echo 'Ошибка!';
    exit;
}
$dir_id = mysql_fetch_assoc(mysql_query("SELECT * FROM `obmennik_dir` WHERE `id` = '$file_id[id_dir]' LIMIT 1"));
$ras = $file_id['ras'];
$file = H . "sys/obmen/files/$file_id[id].dat";
$name = $file_id['name'];
$size = $file_id['size'];
/*
  ================================
  Модуль жалобы на пользователя
  и его сообщение либо контент
  в зависимости от раздела
  ================================
 */
if (isset($_GET['spam']) && isset($user)) {
    $mess = mysql_fetch_assoc(mysql_query("SELECT * FROM `obmennik_komm` WHERE `id` = '" . intval($_GET['spam']) . "' limit 1"));
    $spamer = get_user($mess['id_user']);
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `spamus` WHERE `id_user` = '$user[id]' AND `id_spam` = '$spamer[id]' AND `razdel` = 'files_komm' AND `spam` = '" . $mess['msg'] . "'"), 0) == 0) {
        if (isset($_POST['msg'])) {
            if ($mess['id_user'] != $user['id']) {
                $msg = mysql_real_escape_string($_POST['msg']);
                if (strlen2($msg) < 3)
                    $err = 'Укажите подробнее причину жалобы';
                if (strlen2($msg) > 1512)
                    $err = 'Длина текста превышает предел в 512 символов';
                if (isset($_POST['types']))
                    $types = intval($_POST['types']);
                else
                    $types = '0';
                if (!isset($err)) {
                    mysql_query("INSERT INTO `spamus` (`id_object`, `id_user`, `msg`, `id_spam`, `time`, `types`, `razdel`, `spam`) values('$file_id[id]', '$user[id]', '$msg', '$spamer[id]', '$time', '$types', 'files_komm', '" . my_esc($mess['msg']) . "')");
                    $_SESSION['message'] = 'Заявка на рассмотрение отправлена';
                    header("Location: ?id_file=$file_id[id]&spam=$mess[id]&page=" . intval($_GET['page']) . "");
                    exit;
                }
            }
        }
    }
    $set['title'] = 'Жалоба'; // заголовок страницы
    include_once '../../sys/inc/thead.php';
    title();
    aut();
    err();
    if (mysql_result(mysql_query("SELECT COUNT(*) FROM `spamus` WHERE `id_user` = '$user[id]' AND `id_spam` = '$spamer[id]' AND `razdel` = 'files_komm'"), 0) == 0) {
        echo "<div class='mess'>Ложная информация может привести к блокировке ника. 
Если вас постоянно достает один человек - пишет всякие гадости, вы можете добавить его в черный список.</div>";
        echo "<form class='nav1' method='post' action='?id_file=$file_id[id]&spam=$mess[id]&page=" . intval($_GET['page']) . "'>n";
        echo "<b>Пользователь:</b> ";
        echo " " . status($spamer['id']) . "  " . group($spamer['id']) . " <a href="/info.php?id=$spamer[id]">$spamer[nick]</a>n";
        echo "" . medal($spamer['id']) . " " . online($spamer['id']) . " (" . vremja($mess['time']) . ")<br />";
        echo "<b>Нарушение:</b> <font color='green'>" . output_text($mess['msg']) . "</font><br />";
        echo "Причина:<br />n<select name='types'>n";
        echo "<option value='1' selected='selected'>Спам/Реклама</option>n";
        echo "<option value='2' selected='selected'>Мошенничество</option>n";
        echo "<option value='3' selected='selected'>Оскорбление</option>n";
        echo "<option value='0' selected='selected'>Другое</option>n";
        echo "</select><br />n";
        echo "Комментарий:$tPanel";
        echo "<textarea name="msg"></textarea><br />";
        echo "<input value="Отправить" type="submit" />n";
        echo "</form>n";
    } else {
        echo "<div class='mess'>Жалоба на <font color='green'>$spamer[nick]</font> будет рассмотрена в ближайшее время.</div>";
    }
    echo "<div class='foot'>n";
    echo "<img src='/style/icons/str2.gif' alt='*'> <a href='?id_file=$file_id[id]&page=" . intval($_GET['page']) . "'>Назад</a><br />n";
    echo "</div>n";
    include_once '../../sys/inc/tfoot.php';
    exit;
}
/*
  ==================================
  The End
  ==================================
 */
/* ------------очищаем счетчик этого обсуждения------------- */
if (isset($user)) {
    mysql_query("UPDATE `discussions` SET `count` = '0' WHERE `id_user` = '$user[id]' AND `type` = 'obmen' AND `id_sim` = '$file_id[id]' LIMIT 1");
}
/* --------------------------------------------------------- */
/* ------------------------Мне нравится------------------------ */
if (isset($user) && $ank['id'] != $user['id'] && isset($_GET['like']) && ($_GET['like'] == 1 || $_GET['like'] == 0) && mysql_result(mysql_query("SELECT COUNT(*) FROM `like_object` WHERE `id_object` = '$file_id[id]' AND `type` = 'obmen' AND `id_user` = '$user[id]'"), 0) == 0) {
    mysql_query("INSERT INTO `like_object` (`id_user`, `id_object`, `type`, `like`) VALUES ('$user[id]', '$file_id[id]', 'obmen', '" . intval($_GET['like']) . "')");
    mysql_query("UPDATE `user` SET `balls` = '" . ($ank['balls'] + 1) . "', `rating_tmp` = '" . ($ank['rating_tmp'] + 1) . "' WHERE `id` = '$ank[id]' LIMIT 1");
}
/* ------------------------------------------------------------ */
/* ------------------------Моя музыка-------------------------- */
$music_people = mysql_result(mysql_query("SELECT COUNT(*) FROM `user_music` WHERE `dir` = 'obmen' AND `id_file` = '$file_id[id]'"), 0);
if (isset($user))
    $music = mysql_result(mysql_query("SELECT COUNT(*) FROM `user_music` WHERE `id_user` = '$user[id]' AND `dir` = 'obmen' AND `id_file` = '$file_id[id]'"), 0);
if (isset($user) && isset($_GET['play']) && ($_GET['play'] == 1 || $_GET['play'] == 0) && ($file_id['ras'] == 'mp3' || $file_id['ras'] == 'wav' || $file_id['ras'] == 'ogg')) {
    if ($_GET['play'] == 1 && $music == 0) { // Добавляем в плейлист
        mysql_query("INSERT INTO `user_music` (`id_user`, `id_file`, `dir`) VALUES ('$user[id]', '$file_id[id]', 'obmen')");
        mysql_query("UPDATE `user` SET `balls` = '" . ($ank['balls'] + 1) . "', `rating_tmp` = '" . ($ank['rating_tmp'] + 1) . "' WHERE `id` = '$ank[id]' LIMIT 1");
        $_SESSION['message'] = 'Трек добавлен в плейлист';
    }
    if ($_GET['play'] == 0 && $music == 1) { // Удаляем из плейлиста
        mysql_query("DELETE FROM `user_music` WHERE `id_user` = '$user[id]' AND `id_file` = '$file_id[id]' AND `dir` = 'obmen' LIMIT 1");
        mysql_query("UPDATE `user` SET `rating_tmp` = '" . ($ank['rating_tmp'] - 1) . "' WHERE `id` = '$ank[id]' LIMIT 1");
        $_SESSION['message'] = 'Трек удален из плейлиста';
    }
    header("Location: ?id_file=$file_id[id]");
    exit;
}
/* ------------------------------------------------------------ */
$set['title'] = htmlspecialchars($file_id['name']); // заголовок страницы
include_once '../../sys/inc/thead.php';
title();
if ((user_access('obmen_komm_del') || $ank['id'] == $user['id']) && isset($_GET['del_post']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `obmennik_komm` WHERE `id` = '" . intval($_GET['del_post']) . "' AND `id_file` = '$file_id[id]'"), 0)) {
    mysql_query("DELETE FROM `obmennik_komm` WHERE `id` = '" . intval($_GET['del_post']) . "' LIMIT 1");
    $_SESSION['message'] = 'Комментарий успешно удален';
    header("Location: ?id_file=$file_id[id]");
}
if (isset($user))
    mysql_query("UPDATE `notification` SET `read` = '1' WHERE `type` = 'files_komm' AND `id_user` = '$user[id]' AND `id_object` = '$file_id[id]'");
if (isset($_POST['msg']) && isset($user)) {
    $msg = $_POST['msg'];
    if (isset($_POST['translit']) && $_POST['translit'] == 1)
        $msg = translit($msg);
    $mat = antimat($msg);
    if ($mat)
        $err[] = 'В тексте сообщения обнаружен мат: ' . $mat;
    if (strlen2($msg) > 1024) {
        $err[] = 'Сообщение слишком длинное';
    } elseif (strlen2($msg) < 2) {
        $err[] = 'Короткое сообщение';
    } elseif (mysql_result(mysql_query("SELECT COUNT(*) FROM `obmennik_komm` WHERE `id_file` = '$file_id[id]' AND `id_user` = '$user[id]' AND `msg` = '" . mysql_escape_string($msg) . "' LIMIT 1"), 0) != 0) {
        $err = 'Ваше сообщение повторяет предыдущее';
    } elseif (!isset($err)) {
        $ank = get_user($file_id['id_user']);
        /*
          ====================================
          Обсуждения
          ====================================
         */
        $q = mysql_query("SELECT * FROM `frends` WHERE `user` = '" . $file_id['id_user'] . "' AND `i` = '1'");
        while ($f = mysql_fetch_array($q)) {
            $a = get_user($f['frend']);
            $discSet = mysql_fetch_array(mysql_query("SELECT * FROM `discussions_set` WHERE `id_user` = '" . $a['id'] . "' LIMIT 1")); // Общая настройка обсуждений
            if ($f['disc_forum'] == 1 && $discSet['disc_forum'] == 1) /* Фильтр рассылки */ {
                // друзьям автора
                if (mysql_result(mysql_query("SELECT COUNT(*) FROM `discussions` WHERE `id_user` = '$a[id]' AND `type` = 'obmen' AND `id_sim` = '$file_id[id]' LIMIT 1"), 0) == 0) {
                    if ($file_id['id_user'] != $a['id'] || $a['id'] != $user['id'])
                        mysql_query("INSERT INTO `discussions` (`id_user`, `avtor`, `type`, `time`, `id_sim`, `count`) values('$a[id]', '$file_id[id_user]', 'obmen', '$time', '$file_id[id]', '1')");
                }
                else {
                    $disc = mysql_fetch_array(mysql_query("SELECT * FROM `discussions` WHERE `id_user` = '$file_id[id_user]' AND `type` = 'obmen' AND `id_sim` = '$file_id[id]' LIMIT 1"));
                    if ($file_id['id_user'] != $a['id'] || $a['id'] != $user['id'])
                        mysql_query("UPDATE `discussions` SET `count` = '" . ($disc['count'] + 1) . "', `time` = '$time' WHERE `id_user` = '$a[id]' AND `type` = 'obmen' AND `id_sim` = '$file_id[id]' LIMIT 1");
                }
            }
        }
// отправляем автору
        if (mysql_result(mysql_query("SELECT COUNT(*) FROM `discussions` WHERE `id_user` = '$file_id[id_user]' AND `type` = 'obmen' AND `id_sim` = '$file_id[id]' LIMIT 1"), 0) == 0) {
            if ($file_id['id_user'] != $user['id'])
                mysql_query("INSERT INTO `discussions` (`id_user`, `avtor`, `type`, `time`, `id_sim`, `count`) values('$file_id[id_user]', '$file_id[id_user]', 'obmen', '$time', '$file_id[id]', '1')");
        }
        else {
            $disc = mysql_fetch_array(mysql_query("SELECT * FROM `discussions` WHERE `id_user` = '$file_id[id_user]' AND `type` = 'obmen' AND `id_sim` = '$file_id[id]' LIMIT 1"));
            if ($file_id['id_user'] != $user['id'])
                mysql_query("UPDATE `discussions` SET `count` = '" . ($disc['count'] + 1) . "', `time` = '$time' WHERE `id_user` = '$file_id[id_user]' AND `type` = 'obmen' AND `id_sim` = '$file_id[id]' LIMIT 1");
        }
        /*
          ==========================
          Уведомления об ответах
          ==========================
         */
        if (isset($user) && $respons == TRUE) {
            $notifiacation = mysql_fetch_assoc(mysql_query("SELECT * FROM `notification_set` WHERE `id_user` = '" . $ank_otv['id'] . "' LIMIT 1"));
            if ($notifiacation['komm'] == 1 && $ank_otv['id'] != $user['id'])
                mysql_query("INSERT INTO `notification` (`avtor`, `id_user`, `id_object`, `type`, `time`) VALUES ('$user[id]', '$ank_otv[id]', '$file_id[id]', 'files_komm', '$time')");
        }
        mysql_query("INSERT INTO `obmennik_komm` (`id_file`, `id_user`, `time`, `msg`) values('$file_id[id]', '$user[id]', '$time', '" . my_esc($msg) . "')");
        mysql_query("UPDATE `user` SET `balls` = '" . ($user['balls'] + 1) . "', `rating_tmp` = '" . ($user['rating_tmp'] + 1) . "' WHERE `id` = '$user[id]' LIMIT 1");
        $_SESSION['message'] = 'Сообщение успешно добавлено';
        header("Location: ?id_file=$file_id[id]");
        exit;
    }
}
err();
aut(); // форма авторизации
echo "<div class='foot'>";
echo "<img src='/style/icons/up_dir.gif' alt='*'> " . ($dir['osn'] == 1 ? '<a href="/user/personalfiles/' . $ank['id'] . '/' . $dir['id'] . '/">Файлы</a>' : '') . " " . user_files($dir['id_dires']) . " " . ($dir['osn'] == 1 ? '' : '> <a href="/user/personalfiles/' . $ank['id'] . '/' . $dir['id'] . '/">' . htmlspecialchars($dir['name']) . '</a>') . "n";
echo "</div>";
/* --------------------Папка под паролем-------------------- */
if ($dir['pass'] != NULL) {
    if (isset($_POST['password'])) {
        $_SESSION['pass'] = my_esc($_POST['password']);
        if ($_SESSION['pass'] != $dir['pass']) {
            $_SESSION['message'] = 'Неверный пароль';
            $_SESSION['pass'] = NULL;
        }
        header("Location: ?");
    }
    if (!user_access('obmen_dir_edit') && ($user['id'] != $ank['id'] && $_SESSION['pass'] != $dir['pass'])) {
        echo '<form action="?id_file=' . $file_id['id'] . '" method="POST">Пароль: <br />        <input type="pass" name="password" value="" /><br />        
<input type="submit" value="Войти"/></form>';
        echo "<div class='foot'>";
        echo "<img src='/style/icons/up_dir.gif' alt='*'> " . ($dir['osn'] == 1 ? 'Файлы' : '') . " " . user_files($dir['id_dires']) . " " . ($dir['osn'] == 1 ? '' : '> ' . htmlspecialchars($dir['name'])) . "n";
        echo "</div>";
        include_once '../../sys/inc/tfoot.php';
        exit;
    }
}
/* --------------------------------------------------------- */
// Инклудим редактор
if (isset($user) && user_access('obmen_file_edit') || $ank['id'] == $user['id'])
    include "inc/file.edit.php";
// Инклудим удаление
if (isset($user) && user_access('obmen_file_delete') || $ank['id'] == $user['id'])
    include "inc/file.delete.php";
echo '<div class="main">';
if ($dir_id['my'] != 1) {
    if ($user['id'] == $file_id['id_user'])
        echo '<img src="/style/icons/z.gif" alt="*"> Зона обмена: <a href="/obmen' . $dir_id['dir'] . '">' . $dir_id['name'] . '</a> <a href="/obmen/?trans=' . $file_id['id'] . '"><img src="/style/icons/edit.gif" alt="*"></a><br />';
    else
        echo '<img src="/style/icons/z.gif" alt="*"> Зона обмена: <a href="/obmen' . $dir_id['dir'] . '">' . $dir_id['name'] . '</a><br /> ';
}
include_once H . 'obmen/inc/icon14.php';
echo htmlspecialchars($file_id['name']) . '.' . $ras . ' ';
if ($file_id['metka'] == 1)
    echo '<font color=red><b>(18+)</b></font> ';
echo vremja($file_id['time']) . '<br />';
echo '</div>';
if (($user['abuld'] == 1 || $file_id['metka'] == 0 || $file_id['id_user'] == $user['id'])) { // Метка 18+ 
    echo '<div class="main">';
    if (is_file(H . "obmen/inc/file/$ras.php"))
        include H . "obmen/inc/file/$ras.php";
    else
        include_once H . 'obmen/inc/file.php';
    echo '</div>';
}elseif (!isset($user)) {
    echo '<div class="mess">';
    echo '<img src="/style/icons/small_adult.gif" alt="*"><br /> Данный файл содержит изображения эротического характера. Только зарегистрированные пользователи старше 18 лет могут просматривать такие файлы. <br />';
    echo '<a href="/aut.php">Вход</a> | <a href="/reg.php">Регистрация</a>';
    echo '</div>';
} else {
    echo '<div class="mess">';
    echo '<img src="/style/icons/small_adult.gif" alt="*"><br /> 
    Данный файл содержит изображения эротического характера. 
    Если Вас это не смущает и Вам 18 или более лет, то можете <a href="?id_file=' . $file_id['id'] . '&sess_abuld=1">продолжить просмотр</a>. 
    Или Вы можете отключить предупреждения в <a href="/user/info/settings.php">настройках</a>.';
    echo '</div>';
}
/* ----------------------листинг------------------- */
$listr = mysql_fetch_assoc(mysql_query("SELECT * FROM `obmennik_files` WHERE `my_dir` = '$dir[id]' AND `id` < '$file_id[id]' ORDER BY `id` DESC LIMIT 1"));
$list = mysql_fetch_assoc(mysql_query("SELECT * FROM `obmennik_files` WHERE `my_dir` = '$dir[id]' AND `id` > '$file_id[id]' ORDER BY `id`  ASC LIMIT 1"));
echo '<div class="c2" style="text-align: center;">';
echo '<span class="page">' . ($list['id'] ? '<a href="?id_file=' . $list['id'] . '">« Пред.</a> ' : '« Пред. ') . '</span>';
$k_1 = mysql_result(mysql_query("SELECT COUNT(*) FROM `obmennik_files` WHERE `id` > '$file_id[id]' AND `my_dir` = '$dir[id]'"), 0) + 1;
$k_2 = mysql_result(mysql_query("SELECT COUNT(*) FROM `obmennik_files` WHERE `my_dir` = '$dir[id]'"), 0);
echo ' (' . $k_1 . ' из ' . $k_2 . ') ';
echo '<span class="page">' . ($listr['id'] ? '<a href="?id_file=' . $listr['id'] . '">След. »</a>' : ' След. »') . '</span>';
echo '</div>';
/* ----------------------alex-borisi--------------- */
if (($user['abuld'] == 1 || $file_id['metka'] == 0 || $file_id['id_user'] == $user['id'])) { // Метка 18+ 
    /* ----------------Действия над файлом------------- */
    if (user_access('obmen_file_edit') || $user['id'] == $file_id['id_user']) {
        echo '<div class="main">';
        if ($user['id'] == $file_id['id_user'] && $dir_id['my'] == 1)
            echo '[<a href="/obmen/?trans=' . $file_id['id'] . '"><img src="/style/icons/z.gif" alt="*"> в зону</a>]';
        echo ' [<img src="/style/icons/edit.gif" alt="*"> <a href="?id_file=' . $file_id['id'] . '&edit">ред.</a>]';
        echo ' [<img src="/style/icons/delete.gif" alt="*"> <a href="?id_file=' . $file_id['id'] . '&delete">удл.</a>]';
        echo '</div>';
    }
    /* ----------------------alex-borisi--------------- */
    echo '<div class="main">';
    if (isset($user) && $ank['id'] != $user['id'] && mysql_result(mysql_query("SELECT COUNT(*) FROM `like_object` WHERE `id_object` = '$file_id[id]' AND `type` = 'obmen' AND `id_user` = '$user[id]'"), 0) == 0) {
        echo '[<img src="/style/icons/like.gif" alt="*"> <a href="?id_file=' . $file_id['id'] . '&like=1">Мне нравится</a>] ';
        echo '[<a href="?id_file=' . $file_id['id'] . '&like=0"><img src="/style/icons/dlike.gif" alt="*"></a>]';
    } else {
        echo '[<img src="/style/icons/like.gif" alt="*"> 
' . mysql_result(mysql_query("SELECT COUNT(*) FROM `like_object` WHERE `id_object` = '$file_id[id]' AND `type` = 'obmen' AND `like` = '1'"), 0) . '] ';
        echo '[<img src="/style/icons/dlike.gif" alt="*"> 
' . mysql_result(mysql_query("SELECT COUNT(*) FROM `like_object` WHERE `id_object` = '$file_id[id]' AND `type` = 'obmen' AND `like` = '0'"), 0) . ']';
    }
    echo '</div>';
    echo '<div class="main">';
    if ($file_id['block']) {
        $adm = get_user($file_id['block_user']);
        echo '<div class="err"><span style="color:red">Файл заблокирован!</span><br/>'
        . 'Причина блокировки:<br/>'
        . output_text($file_id['block_info']) . '<br/>'
        . 'Заблокировал: ' . $adm['nick'] . '<br/></div>';
    }
    if (user_access('obmen_file_edit') || !$file_id['block']) {
        if ($file_id['ras'] == 'jar')
            echo '<img src="/style/icons/d.gif" alt="*"> <a href="/obmen' . $dir_id['dir'] . $file_id['id'] . '.' . $file_id['ras'] . '">Скачать JAR (' . size_file($size) . ')</a> <a href="/obmen' . $dir_id['dir'] . $file_id['id'] . '.jad">JAD</a> <br />';
        else
            echo '<img src="/style/icons/d.gif" alt="*"> <a href="/obmen' . $dir_id['dir'] . $file_id['id'] . '.' . $file_id['ras'] . '">Скачать (' . size_file($size) . ')</a><br />';
    }
    echo 'Скачан (' . $file_id['k_loads'] . ')';
    echo '</div>';
    /* -------------------Моя музыка--------------------- */
    if (isset($user) && ($file_id['ras'] == 'mp3' || $file_id['ras'] == 'wav' || $file_id['ras'] == 'ogg')) {
        echo '<div class="main">';
        if ($music == 0)
            echo '<a href="?id_file=' . $file_id['id'] . '&play=1"><img src="/style/icons/play.png" alt="*"></a> (' . $music_people . ')';
        else
            echo '<a href="?id_file=' . $file_id['id'] . '&play=0"><img src="/style/icons/play.png" alt="*"></a> (' . $music_people . ') <img src="/style/icons/ok.gif" alt="*">';
        echo '</div>';
    }
    /* -------------------------------------------------- */
}
include_once 'inc/komm.php'; // комментарии
echo "<div class='foot'>";
echo "<img src='/style/icons/up_dir.gif' alt='*'> " . ($dir['osn'] == 1 ? '<a href="/user/personalfiles/' . $ank['id'] . '/' . $dir['id'] . '/">Файлы</a>' : '') . " " . user_files($dir['id_dires']) . " " . ($dir['osn'] == 1 ? '' : '> <a href="/user/personalfiles/' . $ank['id'] . '/' . $dir['id'] . '/">' . htmlspecialchars($dir['name']) . '</a>') . "n";
echo "</div>";
?>