Файл: CMS/comm/comm_add_file.php
Строк: 143
<?php
if (!defined('CMS')) { die('Access Denied!'); }
$data = '';
$data = $db->selectRow("SELECT ?_comm_comm.*, ?_comm_category.*
FROM ?_comm_comm LEFT JOIN ?_comm_category
ON ?_comm_comm.`comm_cats_id` = ?_comm_category.`cats_id`
WHERE `comm_url` = ? LIMIT 1;", $soo);
if (empty($data) || !is_array($data)) {
$inSes->addMessage('Ошибка! Сообщество не найдено или ссылка неверна!');
gen_red('index', '', RND);
}
if (empty($data['comm_obmen'])) {
$inSes->addMessage('Ошибка! Обменник не найден или ссылка неверна!');
gen_red('index', '', RND);
}
$users = array();
$arr_admins = @explode(',', $data['comm_admins']);
if ($is_logged) {
$users = $db->selectRow("SELECT * FROM ?_comm_users WHERE `cu_comm` = ? AND `cu_user` = ? LIMIT 1;", $data['comm_id'], $log);
if (!empty($users)) {
if ($data['comm_user'] == $log) {
$is_admin_soo = true;
}
if (in_array($log, $arr_admins) && $users['cu_admin'] == 1) {
$is_moder_soo = true;
}
if (!empty($_GET['select'])) {
$downs_id = num($_GET['select']);
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
$is_file = (int) $db->selectCell("SELECT `downs_id` FROM ?_downs WHERE `downs_id` = ? AND `downs_user` = ?", $downs_id, $log);
if ($is_file > 0) {
$is_soo = (int) $db->selectCell("SELECT `files_id` FROM ?_comm_files
WHERE `files_downs` = ? AND `files_comm` = ?", $downs_id, $data['comm_id']);
if ($is_soo < 1) {
if ($id > 0) {
$is_dir = (int) $db->selectCell("SELECT `cats_id` FROM ?_comm_files_category
WHERE `cats_id` = ? AND `cats_comm` = ?", $id, $data['comm_id']);
if ($is_dir > 0) {
$db->query("INSERT INTO ?_comm_files
SET `files_downs` = ?, `files_comm` = ?, `files_cats_id` = ?", $downs_id, $data['comm_id'], $id);
$db->query("UPDATE ?_comm_files_category SET `cats_count` = (SELECT COUNT(*) FROM ?_comm_files WHERE ?_comm_files_category.`cats_id` = ?_comm_files.`files_cats_id` AND ?_comm_files.`files_comm` = ?);", $data['comm_id']);
$inSes->addMessage('Файл успешно добавлен в сообщество!', 'ok');
gen_red('files', $id, RND);
}
else $inSes->addMessage('Ошибка! Папка не найдена или она с другого сообщества!');
}
else {
$db->query("INSERT INTO ?_comm_files
SET `files_downs` = ?, `files_comm` = ?, `files_cats_id` = ?", $downs_id, $data['comm_id'], $id);
$inSes->addMessage('Файл успешно добавлен в сообщество!', 'ok');
gen_red('files', $id, RND);
}
}
else $inSes->addMessage('Ошибка! Запрашиваемый файл уже есть в сообществе!');
}
else $inSes->addMessage('Ошибка! Файл не найден или Вы не владелец файла!');
}
else $inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
}
if (!empty($_GET['cat'])) {
$cat = num($_GET['cat']);
$cats = $db->selectRow("SELECT * FROM ?_downs_category WHERE `cats_id` = ? LIMIT 1;", $cat);
if (!empty($cats)) {
show_header('Мои файлы - ' . $cats['cats_name']);
}
else {
$inSes->addMessage('Ошибка! Категория не найдена или ссылка неверна!');
gen_red('files', $id, RND);
}
}
else { // Default
$cats = $db->selectRow("SELECT * FROM ?_downs_category WHERE `cats_user` = ? AND `cats_parent` = '0' LIMIT 1;", $log);
if (!empty($cats)) {
$cat = num($cats['cats_id']);
show_header($cats['cats_name']);
}
else {
$cat = (int) $db->query("INSERT INTO ?_downs_category SET `cats_name` = ?, `cats_user` = ?", 'Мои файлы', $log);
$db->query("UPDATE ?_downs_category SET `cats_parent_all` = ? WHERE `cats_id` = ?", $cat, $cat);
$cats['cats_name'] = 'Мои файлы';
$cats['cats_parent_all'] = $cat;
show_header($cats['cats_name']);
}
}
$sub_cats = false;
if (!empty($cat)) {
$subs = $db->select("SELECT * FROM ?_downs_category WHERE `cats_user` = ? AND `cats_parent` = ?;", $log, $cat);
if (!empty($subs) && count($subs) > 0) {
$sub_cats = true;
foreach($subs as $sub) {
echo '<div class="b">' . icon('folder.png', 'icons');
echo '<a href="' . gen_uri('add_file', $id, 'cat=' . $sub['cats_id']) . '">' . $sub['cats_name'] . '</a> (' . $sub['cats_count'] . ')';
echo '</div>';
}
}
}
$onpage = !empty($config['files_num']) ? num($config['files_num']) : 10;
if ($page > 1) $from = ($page - 1) * $onpage; else $from = 0;
$rows = $db->selectPage( $total, "SELECT * FROM ?_downs
WHERE `downs_user_cat` = ? AND `downs_user` = ?
ORDER BY `downs_time` DESC
LIMIT ?d, ?d", $cat, $log, $from, $onpage );
if (!empty($rows) && $total > 0) {
echo '<div class="b">' . icon('folder_star.png', 'icons');
echo '<b>' . $cats['cats_name'] . '</b></div>';
foreach($rows as $row) {
$filepath = ROOTPATH . DS . $config['files_folder'] . DS . $row['downs_id'] . DS . $row['downs_link'];
$filesize = !empty($row['downs_link']) ? read_file($filepath) : 0;
$file_ext = strtolower(substr(strrchr($row['downs_link'], '.'), 1));
echo '<div class="b" style="min-height: ' . $config['preview_size'] . 'px;">';
if (in_array($file_ext, array('jpg', 'jpeg', 'gif', 'png'))) {
echo '<div class="img">';
echo resize_screen($config['files_folder'] . DS . $row['downs_id'] . DS, $row['downs_link'], $config['preview_size'], $row['downs_title']);
echo '</div>';
}
else if (!empty($row['downs_screen'])) {
echo '<div class="img">';
echo resize_screen($config['files_folder'] . DS . $row['downs_id'] . DS, $row['downs_screen'], $config['preview_size'], $row['downs_title']);
echo '</div>';
}
else {
echo '<div class="img"><img src="/images/no_photos.png" align="center" alt="" /></div>';
}
$sex = ($row['downs_user_sex'] == 1) ? ' <span style="color:red;">(+18)</span>' : '';
echo extensions($file_ext);
echo '<b><a href="' . gen_uri('add_file', $id, 'select=' . $row['downs_id'] . '&rnd=' . $_SESSION['token']) . '">' . $row['downs_title'] . '</a></b>' . $sex;
echo '<div class="right">(' . $filesize . ')</div>';
echo '<br />';
echo format_text($row['downs_text'],0,$config['substr_text'],'UTF-8') . '...<br />';
echo '</div>';
}
echo show_pages(gen_uri('add_file', $id, 'cat=' . $cat . '&' . RND));
}
else if (!$sub_cats) {
show_error('У Вас ещё нет файлов!');
}
}
else {
show_header('Добавления файла');
show_error('Ошибка! Добавлять файлы могут только обитатели сообщества!');
}
}
else {
show_header('Добавления файла');
show_login('Вы не авторизованы, для добавления файлов в сообщества, необходимо');
}
echo '<div class="b">' . icon('return.png');
echo '<a href="../' . gen_uri('index', '', RND) . '">Сообщества</a> | ';
echo '<a href="../' . gen_uri('cats', $data['cats_id'], RND) . '">' . $data['cats_name'] . '</a> | ';
echo '<a href="' . gen_uri('index', '', RND) . '">' . $data['comm_name'] . '</a> | ';
echo '<a href="' . gen_uri('files', '', RND) . '">Файлы</a></div>';
?>