Файл: 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>';
?>