Файл: CMS/core/modules/users_files.php
Строк: 173
<?php
if (!defined('CMS')) { die('Access Denied!'); }
include( dirname(__FILE__) . '/users_files.inc.php' );
if (!empty($id)) {
$cats = $db->selectRow("SELECT * FROM ?_downs_category WHERE `cats_id` = ? LIMIT 1;", $id);
if (!empty($cats)) {
show_header('Загрузки - ' . $cats['cats_name']);
if ($cats['cats_user_type'] == 3 && !empty($cats['cats_user_pass'])) {
show_auth_form($id, $cats['cats_user_pass']);
}
else if ($cats['cats_user_type'] == 2 && $cats['cats_user'] <> $log) {
if ($is_logged) { // Убрали запрос на проверку друзей
$arr_friends = $db->selectCol("SELECT `friends_login` FROM ?_friends WHERE `users_login` = ?", $cats['cats_user']);
if (!in_array($log,$arr_friends)) {
show_error('Файлы только для друзей пользователя ' . users_anketa($cats['cats_user']));
show_footer();
exit();
}
}
else {
show_error('Файлы только для друзей пользователя ' . users_anketa($cats['cats_user']));
show_footer();
exit();
}
}
else if ($cats['cats_user_type'] == 1 && $cats['cats_user'] <> $log) {
show_error('Файлы только для пользователя ' . users_anketa($cats['cats_user']));
show_footer();
exit();
}
if ($is_logged && $uz == $log) {
if (!empty($_SESSION[SP][$log]['move'])) {
$cnt = count($_SESSION[SP][$log]['move']);
echo '<div class="b">Выбрано ' . $cnt . ' файл. Выберите папку для перемещения и нажмите ';
echo '<a href="' . gen_uri('files', $id, 'act=selmove&rnd=' . $_SESSION['token']) . '">[Переместить сюда]</a> ';
echo 'или <a href="' . gen_uri('files', $id, 'act=cancel&rnd=' . $_SESSION['token']) . '">Отмена</a></div>';
}
else if ($select_files) {
echo '<div class="b">Выберите файлы для перемещения:<br /></div>';
}
}
}
else {
$inSes->addMessage('Ошибка! Категория не найдена или ссылка неверна!');
gen_red('files', '', RND);
}
}
else { // Default
$cats = $db->selectRow("SELECT * FROM ?_downs_category WHERE `cats_user` = ? AND `cats_parent` = '0' LIMIT 1;", $data['users_login']);
if (!empty($cats)) {
$id = num($cats['cats_id']);
show_header($cats['cats_name']);
if ($is_logged && $data['users_login'] == $log) {
if (!empty($_SESSION[SP][$log]['move'])) {
$cnt = count($_SESSION[SP][$log]['move']);
echo '<div class="b">Выбрано ' . num2name($cnt, array('файлов','файла','файл')) . ' файл. Выберите папку для перемещения и нажмите ';
echo '<a href="' . gen_uri('files', $id, 'act=selmove&rnd=' . $_SESSION['token']) . '">[Переместить сюда]</a> ';
echo 'или <a href="' . gen_uri('files', $id, 'act=cancel&rnd=' . $_SESSION['token']) . '">Отмена</a></div>';
}
else if ($select_files) {
echo '<div class="b">Выберите файлы для перемещения<br /></div>';
}
}
}
else {
$id = (int) $db->query("INSERT INTO ?_downs_category SET `cats_name` = ?, `cats_user` = ?", 'Мои файлы', $data['users_login']);
$db->query("UPDATE ?_downs_category SET `cats_parent_all` = ? WHERE `cats_id` = ?", $id, $id);
$cats['cats_name'] = ($is_logged && $data['users_login'] == $log) ? 'Мои файлы' : 'Файлы пользователя ' . nickname($data['users_login']);
$cats['cats_parent_all'] = $id;
show_header($cats['cats_name']);
}
}
$sub_cats = false;
if (!empty($id)) {
$subs = $db->select("SELECT * FROM ?_downs_category WHERE `cats_user` = ? AND `cats_parent` = ?;", $data['users_login'], $id);
if (!empty($subs) && count($subs) > 0 && $page == 1) {
$sub_cats = true;
foreach($subs as $sub) {
echo '<div class="b">' . icon('folder.png', 'icons');
echo '<a href="' . gen_uri('files', $sub['cats_id']) . '">' . $sub['cats_name'] . '</a></b> (' . $sub['cats_count'] . ')</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", $id, $uz, $from, $onpage );
if (!empty($rows) && $total > 0) {
echo '<div class="b">' . icon('folder_star.png', 'icons');
echo '<b>' . $cats['cats_name'] . '</b></div>';
if ($select_files) {
echo '<form action="' . gen_uri('files', $id, 'act=mm&' . RND) . '" method="post" name="move">';
}
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 ($select_files) echo '<div class="img"><input type="checkbox" name="move[]" value="' . num($row['downs_id']) . '" /></div>';
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" alt="" /></div>';
}
$sex = ($row['downs_user_sex'] == 1) ? ' <span style="color:red;">(+18)</span>' : '';
echo extensions($file_ext);
echo '<b><a href="' . gen_uri('file', $row['downs_id'], RND) . '">' . $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('files', $id, RND));
if ($select_files) {
echo '<div class="b">';
echo '<input type="checkbox" name="master_box" title="Отметить всё" onclick="javascript:ckeck_uncheck_all()">';
echo '<input type="submit" class="btns" value="Переместить файлы" /></form></div>';
echo <<<JSCRIPT
<script language='JavaScript' type="text/javascript">
<!--
function ckeck_uncheck_all() {
var frm = document.move;
if(frm.master_box.checked == true){ frm.master_box.checked = false; }
else{ frm.master_box.checked = true; }
for (var i=0;i<frm.elements.length;i++) {
var elmnt = frm.elements[i];
if (elmnt.type=='checkbox') {
if(frm.master_box.checked == true){ elmnt.checked=false; }
else{ elmnt.checked=true; }
}
}
}
-->
</script>
JSCRIPT;
}
}
else if (!$sub_cats) {
show_error('У пользователя ещё нет файлов!');
}
if ($is_logged && $log == $data['users_login']) {
echo '<div class="b">';
echo icon('folder_add.png', 'icons');
echo '<a href="' . gen_uri('add_folder', $id, RND) . '">Создать папку</a><br />';
echo icon('folder_edit.png', 'icons');
echo '<a href="' . gen_uri('edit_folder', $id, RND) . '">Редактировать</a><br />';
echo icon('folder_go.png', 'icons');
echo '<a href="' . gen_uri('add_file', $id, RND) . '">Добавить файл</a><br />';
if ($total > 0) {
echo icon('arrow-circle-315.png', 'icons');
echo '<a href="' . gen_uri('files', $id, 'act=mm&' . RND) . '">Переместить файлы</a><br />';
}
echo '</div>';
}
echo '<div class="b">' . show_back_link($cats['cats_parent_all'], $data['users_login']) . '</div>';
?>