Файл: CMS/comm/comm_file_read.php
Строк: 74
<?php
if (!defined('CMS')) { die('Access Denied!'); }
$data = array();
$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 ($data['comm_user'] == $log) {
$is_admin_soo = true;
$is_moder_soo = true;
}
if (in_array($log, $arr_admins) && $users['cu_admin'] == 1) {
$is_moder_soo = true;
}
}
if ($data['comm_status'] == 1 && empty($users)) {
$inSes->addMessage('Файлы доступны только участникам сообщества!');
gen_red('index', '', RND);
}
if ($id < 1) {
$inSes->addMessage('Ошибка! Файл не найден или ссылка неверна!');
gen_red('files', '', RND);
}
$prs = parse_url($_SERVER['REQUEST_URI']);
$row = array();
$row = $db->selectRow("SELECT `f`.*, `d`.*, `c`.*, `u`.`users_gender`,
(SELECT COUNT(1) FROM ?_users_bookmarks WHERE `book_path` = ?) AS `bookmarks`
FROM ?_comm_files `f`
LEFT JOIN ?_downs `d` ON `f`.`files_downs` = `d`.`downs_id`
LEFT JOIN ?_comm_files_category `c` ON `f`.`files_cats_id` = `c`.`cats_id`
LEFT JOIN ?_users `u` ON `d`.`downs_user` = `u`.`users_login`
WHERE `f`.`files_comm` = ?
AND `f`.`files_id` = ?", $prs['path'], $data['comm_id'], $id);
if (empty($row) || !is_array($row)) {
$inSes->addMessage('Ошибка! Файл не найден или ссылка неверна!');
gen_red('files', '', RND);
}
show_header($row['downs_title'] . ' - онлайн чтение', $row['downs_text'], $row['downs_text']);
$filepath = ROOTPATH . DS . $config['files_folder'] . DS . $row['downs_id'] . DS;
if (!is_file($filepath . $row['downs_link'])) {
show_error('Ошибка! Файл не найден или ссылка неверна!');
}
else {
$ext = strtolower(substr(strrchr($row['downs_link'], '.'), 1));
$file = @file_get_contents($filepath . $row['downs_link']);
if (!empty($file)) {
if (!is_utf($file)) {
$file = iconv('cp1251', 'UTF-8', $file);
}
$file = explode("n", $file);
$total = @count($file);
$onpage = !empty($config['chars_onpage']) ? num($config['chars_onpage']) : 300;
if ($total > 0) {
$start = ($page - 1) * $onpage;
if ($start < 0) $start = 0;
if ($start > $total - 1) $start = $total - 1;
$stop = $start + $onpage;
if ($stop > $total) $stop = $total;
$show = array();
for($n = $start; $n < $stop; $n++) {
$show[] = check($file[$n]);
}
echo '<div class="b">' . implode('<br />',$show) . '</div>';
echo show_pages(gen_uri('read', $id, RND));
}
else {
show_error('К сожалению, этот документ не содержит информации!');
}
}
else {
show_error('К сожалению, этот документ не содержит информации!');
}
}
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>';
if (!empty($row['cats_id']) && !empty($row['cats_name'])) {
echo ' | <a href="' . gen_uri('files', $id, 'cat=' . $row['cats_id'] . '&' . RND) . '">' . $row['cats_name'] . '</a>';
}
echo ' | <a href="' . gen_uri('file', $row['files_id'], RND) . '">' . $row['downs_title'] . '</a>';
echo '</div>';
?>