Вход Регистрация
Файл: CMS/core/modules/users_file.php
Строк: 333
<?php

if (!defined('CMS')) { die('Access Denied!'); }

include( 
dirname(__FILE__) . '/users_files.inc.php' );

if (
$id 1) {

    
$inSes->addMessage('Ошибка! Файл не найден или ссылка неверна!');
    
gen_red('files'''RND);
}

$prs parse_url($_SERVER['REQUEST_URI']);
$prs['path'] = '/load/' basename($prs['path']);
$row = array();
$row $db->selectRow("SELECT ?_downs.*, ?_downs_category.*,
                      (SELECT COUNT(1) FROM ?_users_bookmarks WHERE `book_path` = ?) AS `bookmarks`
                       FROM ?_downs LEFT JOIN ?_downs_category 
                       ON ?_downs.`downs_user_cat` = ?_downs_category.`cats_id` 
                       WHERE `downs_id` = ? LIMIT 1;"
$prs['path'], $id);


if (empty(
$row) || !is_array($row)) {

    
$inSes->addMessage('Ошибка! Файл не найден или ссылка неверна!');
    
gen_red('files'''RND);
}

if (
$is_logged && $row['downs_user_comm'] == 1) { // Комм-ты только для друзей

    
$arr_friends $db->selectCol("SELECT `friends_login` FROM ?_friends WHERE `users_login` = ?"$data['users_login']);
}
else 
$arr_friends = array();

# Добавление комментария
if (!empty($_POST['submit'])) {

    
$msg = !empty($_POST['text']) ? check($_POST['text']) : '';

    if (
$is_logged) {

      if (!empty(
$_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {

        if (
cms_strlen(trim($msg)) >= && cms_strlen($msg) < 1000) {

          if (
             (
$row['downs_user_comm'] == && $row['downs_user'] == $log) || 
             (
$row['downs_user_comm'] == && in_array($log,$arr_friends) || 
             (
$row['downs_user_comm'] == 0))) {

            if (
is_quarantine($log)) {

              if (
is_flood($log)) {

                
$msg  antimat($msg);
                
$msg  smiles($msg);
                
$date date('Y-m-d H:i:s'SITE_TIME);

                
$db->query("INSERT INTO ?_comments SET `comm_post` = ?, `comm_text` = ?, `comm_author` = ?, `comm_type` = 'load', `comm_date` = ?, `comm_ip` = ?, `comm_ua` = ?"$id$msg$log$date$ip$brow);

                
$db->query("UPDATE ?_downs SET `downs_comments` = (`downs_comments` + 1) WHERE `downs_id` = ?;"$id);

                
$db->query("UPDATE ?_users SET `users_allcomments` = (`users_allcomments` + 1), `users_point` = (`users_point` + ?), `users_money` = (`users_money` + ?) WHERE `users_login` = ?"$config['comm_add_point'], $config['comm_add_money'], $log);

                
$inSes->addMessage('Сообщение успешно добавлено!''ok');

                
gen_red('file'$idRND);

              }
              else 
$inSes->addMessage('Антифлуд! Разрешается отправлять сообщения раз в ' flood_period() . ' секунд!');
            }
            else 
$inSes->addMessage('Карантин! Вы не можете писать в течении ' round($config['karantin'] / 3600) . ' часов!');
          }
          else 
$inSes->addMessage('Ошибка! Комментирование данному файлу запрещено!');
        }
        else 
$inSes->addMessage('Ошибка! Слишком длинное или короткое сообщение!');
      }
      else 
$inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
    }
    else 
$inSes->addMessage('Ошибка! Комментировать могут только зарегистрированные пользователи сайта!');
}

show_header($row['downs_title'], $row['downs_text'], $row['downs_text']);

if (!empty(
$row['downs_user_sex'])) echo show_xxx_form($row['cats_id']);

if (
$row['cats_user_type'] == && !empty($row['cats_user_pass'])) {

    
show_auth_form($row['cats_id'], $row['cats_user_pass']);
}
else if (
$row['cats_user_type'] == && $row['cats_user'] <> $log) {

    if (
$is_logged) { // Убрали запрос на проверку друзей

        
$arr_friends $db->selectCol("SELECT `friends_login` FROM ?_friends WHERE `users_login` = ?"$row['cats_user']);

        if (!
in_array($log,$arr_friends)) {

            
show_error('Файл доступен только для друзей пользователя ' users_anketa($row['cats_user']));
            
show_footer();
            exit();
        }
    }
    else {

        
show_error('Файл доступен только для друзей пользователя ' users_anketa($row['cats_user']));
        
show_footer();
        exit();
    }
}
else if (
$row['cats_user_type'] == && $row['cats_user'] <> $log) {

    
show_error('Файл доступен только для пользователя ' users_anketa($row['cats_user']));
    
show_footer();
    exit();
}

$filepath ROOTPATH DS $config['files_folder'] . DS $row['downs_id'] . DS;

$is_java false$jad_url '';

if (!
is_file($filepath $row['downs_link'])) {

    
show_error('Ошибка! Файл не найден или ссылка неверна!');
}
else {

    
$file_url $config['site_url'] . DS $config['files_folder'] . DS $row['downs_id'] . DS $row['downs_link'];
    
$filesize read_file($filepath $row['downs_link']);
    
$file_ext strtolower(substr(strrchr($row['downs_link'], '.'), 1));

    if (
in_array($file_ext, array('jpg''jpeg''gif''png'))) {

        echo 
'<div class="b"><a href="' $file_url '">';
        echo 
resize_screen($config['files_folder'] . DS $row['downs_id'] . DS$row['downs_link'], $config['preview_size'], $row['downs_title']) . '</a><br /></div>';
    }
    else if (
$file_ext == 'flv' || $file_ext == 'mp4') {

        echo 
video_player($file_url);
    }
    else {

        if (!empty(
$row['downs_screen'])) {

            echo 
'<div class="b" style="min-height: ' $config['preview_size'] . ';"><table><tr><td>';
            echo 
'<div class="img"><a href="' $config['site_url'] . DS $config['files_folder'] . DS $row['downs_id'] . DS $row['downs_screen'] . '">';
            echo 
resize_screen($config['files_folder'] . DS $row['downs_id'] . DS$row['downs_screen'], $config['preview_size'], $row['downs_title']) . '</a></div></td>';
        }
        else {

            if (
$file_ext == '3gp') {

                
$gp screen_3gp($filepath $row['downs_link'], 50$filepath 'screen.gif');

                if (
$gp == 'ok') {

                    
$db->query("UPDATE ?_downs SET `downs_screen` = ?
                                WHERE `downs_user` = ? AND `downs_id` = ?"
'screen.gif'$row['cats_user'], $id);

                    echo 
'<div class="b" style="min-height: ' $config['preview_size'] . ';"><table><tr><td>';
                    echo 
'<div class="img"><a href="' $config['site_url'] . DS $config['files_folder'] . DS $row['downs_id'] . DS 'screen.gif">';
                    echo 
resize_screen($config['files_folder'] . DS $row['downs_id'] . DS'screen.gif'$config['preview_size'], $row['downs_title']) . '</a></div></td>';
                }
                else {

                    echo 
'<div class="b" style="min-height: ' $config['preview_size'] . ';"><table><tr><td>';
                    echo 
'<div class="img"><img src="' $config['site_url'] . '/images/no_photos.png" align="center" alt="" /></div></td>';
                }
            }
            else {

                echo 
'<div class="b" style="min-height: ' $config['preview_size'] . ';"><table><tr><td>';
                echo 
'<div class="img"><img src="/images/no_photos.png" align="center" alt="" /></div></td>';
            }
        }

        if (
$is_logged && $log == $row['downs_user']) {

            echo 
'<td valign="top"><a href="' gen_uri('add_screen'$row['downs_id'], RND) . '">Изменить</a><br /></td>';
        }
        echo 
'</tr></table></div>';

        if (
$file_ext == 'jar') {

            
$is_java = (bool) get_jad($filepath $row['downs_link'], $config['site_url'] . $file_url);
            
$jad_url $config['site_url'] . str_ireplace('.jar''.jad'$file_url);
        }
    }

    if (!empty(
$row['downs_text'])) echo '<div class="b">' nl2br(bb_code($row['downs_text']));
    else echo 
'<div class="b">Описание к файлу не найдено!';
    echo 
'<br /></div>';

    if (!empty(
$config['allow_downs_nav'])) {

        echo 
'<div class="c">';

        
$next $db->selectRow("SELECT `downs_id` FROM ?_downs 
                                WHERE `downs_user` = ? AND `downs_id` > ? ORDER BY `downs_id` LIMIT 1"
$data['users_login'], $row['downs_id']);

        
$prev $db->selectRow("SELECT `downs_id` FROM ?_downs 
                                WHERE `downs_user` = ? AND `downs_id` < ? ORDER BY `downs_id` DESC LIMIT 1"
$data['users_login'], $row['downs_id']);

        if (!empty(
$prev['downs_id'])) {

            echo 
'<a href="' gen_uri('file'$prev['downs_id'], RND) . '">&lt;&lt; Назад</a>';
        }
        else echo 
'&lt;&lt; Назад';

        echo 
' | ';

        if (!empty(
$next['downs_id'])) {

            echo 
'<a href="' gen_uri('file'$next['downs_id'], RND) . '">Далее &gt;&gt;</a>';
        }
        else echo 
'Далее &gt;&gt;';

        echo 
'</div>';
    }

    if (
$file_ext == 'mp3') {

        
$TaggingFormat 'UTF-8';

        require_once( 
ENGINE '/getid3/getid3.php' );
            
        
$getID3 = new getID3$v = array();
        
$getID3->setOption(array('encoding'=>$TaggingFormat));

        
$info $getID3->analyze($filepath $row['downs_link']);

        if (!empty(
$info['tags']['id3v1']['title'][0]) || !empty($info['tags']['id3v2']['title'][0])) {

            
$v[] = !empty($info['tags']['id3v1']['title'][0]) ? '- Название: ' check($info['tags']['id3v1']['title'][0]) : 
                                                                
'- Название: ' check($info['tags']['id3v2']['title'][0]);
        }
        if (!empty(
$info['tags']['id3v1']['artist'][0]) || !empty($info['tags']['id3v2']['artist'][0])) {

            
$v[] = !empty($info['tags']['id3v1']['artist'][0]) ? '- Исполнитель: ' check($info['tags']['id3v1']['artist'][0]) : 
                                                                 
'- Исполнитель: ' check($info['tags']['id3v2']['artist'][0]);
        }
        if (!empty(
$info['tags']['id3v1']['album'][0]) || !empty($info['tags']['id3v2']['album'][0])) {

            
$v[] = !empty($info['tags']['id3v1']['album'][0]) ? '- Альбом: ' check($info['tags']['id3v1']['album'][0]) : 
                                                                
'- Альбом: ' check($info['tags']['id3v2']['album'][0]);
        }
        if (!empty(
$info['tags']['id3v1']['year'][0]) || !empty($info['tags']['id3v2']['year'][0])) {

            
$v[] = !empty($info['tags']['id3v1']['year'][0]) ? '- Год: ' check($info['tags']['id3v1']['year'][0]) : 
                                                               
'- Год: ' check($info['tags']['id3v2']['year'][0]);
        }
        if (!empty(
$info['tags']['id3v1']['genre'][0]) || !empty($info['tags']['id3v2']['genre'][0])) {

             
$v[] = !empty($info['tags']['id3v1']['genre'][0]) ? '- Жандр: ' check($info['tags']['id3v1']['genre'][0]) : 
                                                                 
'- Жандр: ' check($info['tags']['id3v2']['genre'][0]);
        }
        
$v[] = !empty($info['bitrate']) ? '- Битрейт: ' substr($info['bitrate'],0,3) : '-';
        
$v[] = !empty($info['playtime_string']) ? '- Длина: ' $info['playtime_string'] : '-';

        if (
count($v) > 0) echo '<div class="b"><b>Инфа о треке</b><br />' implode('<br />',$v) . '</div>';
        echo 
mp3_player($file_url);

    }
    echo 
'<div class="b">';
    echo 
icon('dload.png''icons');
    echo 
'<a href="' gen_uri('download'$row['downs_id'], RND) . '">Скачать</a> (' $filesize ')<br />';

    if (
$is_java && $jad_url) {

        echo 
icon('dload.png''icons');
        echo 
'<a href="' $jad_url '">Скачать jad-файл</a><br />';
    }
    else if (
$file_ext == 'txt') {

        echo 
icon('post_new.png''icons');
        echo 
'<a href="' gen_uri('read'$idRND) . '">Читать онлайн</a><br />';
    }
    else if (
$file_ext == 'zip') {

        echo 
icon('post_new.png''icons');
        echo 
'<a href="' gen_uri('zip'$idRND) . '">Просмотр архива</a><br />';
    }
    
//else if ($file_ext == 'rar' && function_exists('rar_open')) {

        //echo icon('post_new.png', 'icons');
        //echo '<a href="' . gen_uri('rar', $id, RND) . '">Просмотр архива</a><br />';
    //}

    
echo '</div>';
    echo 
'<div class="b">';
    echo 
'<b>Закачек:</b> ' num($row['downs_load']) . '<br />';
    echo 
'Файл добавлен обитателем: ' user_visit_icon($data['users_login'], $data['users_gender']);
    echo 
' ' users_anketa($data['users_login']) . ' (' get_date($row['downs_time']) . ')<br />';
    echo 
'В папку: <img src="/images/icons/folder.png" class="icon" alt="" /> ';
    echo 
'<a href="' gen_uri('files'$row['cats_id'], RND) . '">' $row['cats_name'] . '</a>';

    if (
$is_logged && $log == $row['downs_user']) {

        echo 
' [<a href="' gen_uri('files''''act=mm&amp;move=' $row['downs_id'] . '&amp;' RND) . '">Переместить</a>]<br /></div>';

        echo 
'<div class="b">' icon('folder_edit.png''icons');
        echo 
'<a href="' gen_uri('edit_file'$row['downs_id'], RND) . '">Редактировать</a><br />';

        if (empty(
$row['downs_cats_id'])) {

            echo 
icon('arrow-circle-315.png''icons');
            echo 
'<a href="' gen_uri('in_zone'$row['downs_id'], RND) . '">В зону</a><br />';
        }
        echo 
'</div>';
    }
    else {

        echo 
'<br /></div>' show_bookmarks($row['downs_title'], ''$row['bookmarks']);
    }

    echo 
'<div class="b">' icon('email_send.png''icons');
    echo 
'<a href="' gen_uri('send_link'$row['downs_id'], RND) . '">Отправить другу</a><br />';
    echo 
'</div>';

    
$comm_type 'load';
    
$comm_url 'file'
    
// Подключили комменты
    
include( MODULES_PATH 'comments.inc.php' );

    if (
$is_logged) {

        
//$comm_types = array('0' => 'Все', '1' => 'Только друзья', '2' => 'Только я');

        
if ($row['downs_user_comm'] == && $row['downs_user'] <> $log) {

            
show_error('Комментирование только для владельца!');
        }
        else if (
$row['downs_user_comm'] == 1) {

            if ((!empty(
$arr_friends) && in_array($log,$arr_friends)) || $row['downs_user'] == $log) {

                
$form = new cmsForm(gen_uri('file'$id'rnd=' $_SESSION['token']), 'post');
                
$form->addTextarea('Напишите комментарий:''text'request('text'));
                echo 
$form->Submit('Добавить''submit');
                unset(
$form);
            }
            else {

                
show_error('Комментирование только для друзей владельца!');
            }
        }
        else {

            
$form = new cmsForm(gen_uri('file'$id'rnd=' $_SESSION['token']), 'post');
            
$form->addTextarea('Напишите комментарий:''text'request('text'));
            echo 
$form->Submit('Добавить''submit');
            unset(
$form);
        }
    }
    else {

        
show_login('Вы не авторизованы, для комментирования, необходимо');
    }
}

echo 
'<div class="b">' show_back_link($row['cats_parent_all'] . ',' $row['cats_id'], $data['users_login']) . '</div>';

?>
Онлайн: 1
Реклама