Иконка ресурса

DLE Псевдо торрент-трекер + DCLS 2.0 beta

Нет прав для скачивания
torrent-modul-png.1946
Возможности модуля :
    1. Работа как псевдо торрент трекер;
    2. Отображение для торрент файлов статистики: сколько раз скачан, популярность, сиды, пиры, название, общий размер, SHA Hash, анонсы;
    3. Отображаются файлы которые находятся в торрнете
    4. Возможность добавлять dcls файлы. для него отображаются такие данные: сколько раз скачан, количество папок, количество файлов, общий размер
    5. Отображение файлов описанных в dcls файле + удобная навигация по папкам. Для медиа файлов всплывающие подсказки по битрейду файлов, качеству звука и разрешению видео
    6. Удобная админка модуля
    7. Возможность включать и выключать модуль через админку
    8. Функция формирования магнет ссылок для торрент файлов
    9. Возможность выбирать какую ссылку давать на торрент (магнет ссылку, ссылку на торрент файл или обе ссылки сразу)
    10. Возможность добавлять к торрент файлу свой ретрекер
    11. Возможность изменить комментарий в торрент файле и вставить в нём ссылку на новость на вашем сайте
    12. Возможность включить или выключить показ дополнительных данных для медиа файлов которые описаны в DCLS файле
    13. Возможность добавлять сколько угодно торрент и DCLS файлов в одну новость
    14. Возможность шифровать ссылки на скачки
    15. Вывод стилизован под nnm-club
    16. Настройка вывода через шаблон
    17. Возможность вывода торрента отдельным тегом
    18. Поиск похожих раздач на rutor.org
Установка:
  1. Закиньте все файлы и папки из папки uploads в корень сайта, предварительно заменив {ВАШАТЕМА} на имя вашей темы
  2. Откройте файл functions.php который находится в деректории /engine/modules/ . После строк
    PHP:
    if( ! defined( 'DATALIFEENGINE' ) ) { die( "Hacking attempt!" );
    }
    добавьте строку:
    PHP:
    include(ENGINE_DIR.'/modules/torrent/psxtorrent.php');
    Затем найдите функцию
    PHP:
    function show_attach($story, $id, $static = false) { global $db, $config, $lang, $user_group, $member_id; $find_1 = array(); $find_2 = array(); $replace_1 = array(); $replace_2 = array(); if( $static ) { if( is_array( $id ) and count( $id ) ) $where = "static_id IN (" . implode( ",", $id ) . ")"; else $where = "static_id = '".intval($id)."'"; $db->query( "SELECT id, name, onserver, dcount FROM " . PREFIX . "_static_files WHERE $where" ); $area = "&amp;area=static"; } else { if( is_array( $id ) and count( $id ) ) $where = "news_id IN (" . implode( ",", $id ) . ")"; else $where = "news_id = '".intval($id)."'"; $db->query( "SELECT id, name, onserver, dcount FROM " . PREFIX . "_files WHERE $where" ); $area = ""; } while ( $row = $db->get_row() ) { $size = formatsize( @filesize( ROOT_DIR . '/uploads/files/' . $row['onserver'] ) ); $row['name'] = explode( "/", $row['name'] ); $row['name'] = end( $row['name'] ); $find_1[] = '[attachment=' . $row['id'] . ']'; $find_2[] = "#\[attachment={$row['id']}:(.+?)\]#i"; if ( ! $user_group[$member_id['user_group']]['allow_files'] ) { $replace_1[] = "<span class=\"attachment\">{$lang['att_denied']}</span>"; $replace_2[] = "<span class=\"attachment\">{$lang['att_denied']}</span>"; } elseif( $config['files_count'] == 'yes' ) { $replace_1[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$row['name']}</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>"; $replace_2[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>"; } else { $replace_1[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$row['name']}</a> [{$size}]</span>"; $replace_2[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}]</span>"; } } $db->free(); $story = str_replace ( $find_1, $replace_1, $story ); $story = preg_replace( $find_2, $replace_2, $story ); return $story;
    }
    и удалите ее.
  3. Откройте файл files.php который находится в папке /engine/inc/ . В нём после строк
    PHP:
    if( ! defined( 'DATALIFEENGINE' ) ) { die( "Hacking attempt!" );
    }
    добавьте
    PHP:
    require_once ENGINE_DIR . '/classes/torrent.class.php';
    include_once(ENGINE_DIR . '/data/dcls.config.php');
    Затем найдите строку
    PHP:
    if( @file_exists( ROOT_DIR . "/uploads/files/" . $file_prefix . $image_name ) ) {
    и после неё вставьте
    PHP:
    if ($dclsconfig[vkl] == "on" ){ // проверяем включен ли модуль $fidname = '.torrent'; $proverka = strpos($image_name, $fidname); if ($proverka !== false) { $torrent = new Torrent( ROOT_DIR . "/uploads/files/" . $file_prefix . $image_name ); if ( $errorss = $torrent->errors() ) { // проверка на ошибки и если они есть то ничего не делаем } else { // если же ошибки нет то выполняем работу с торренто if ( $dclsconfig[retreck] == "on" ) { // проверяем нужен добавлять ли ретрекер $massivtreck = array_merge_recursive( $torrent->announce() , explode( "," , str_replace( " ", "", $dclsconfig[retrecker] ) ) ); $torrent->announce(false); $torrent->announce($massivtreck); // добавляем свой трекер } if ( $dclsconfig[trcomment] = "on" ){ // проверяем нужно ли добавление коммента if ( $news_id == 0 ) { $commenttr = 10101 ; $torrent->comment($commenttr); // добавляем коммент } else { $commenttr = str_replace("%link%", $config[http_home_url] . "index.php?newsid=" . $news_id, $dclsconfig[commenttr]); // формируем коммент $torrent->comment($commenttr); // добавляем коммент } } $torrent->save( ROOT_DIR . "/uploads/files/" . $file_prefix . $image_name ); // сохраняем изменения в торренте } } }
  4. Откройте файл download.php который находится в папке /engine/ в нём найдите строку
    PHP:
    $id = intval ( $_REQUEST['id'] );
    и замените ее на код
    PHP:
    if ($_REQUEST['idd'] == "" ){ $id = intval ( $_REQUEST['id'] );
    } else { $idd = base64_decode($_REQUEST['idd']); $id = intval ( $idd );
    }
  5. Откройте файл main.tpl и перед </head> вставьте
    PHP:
    <script type="text/javascript" src="{THEME}/dcls.js"></script>
  6. Откройте ваш файл style.css и в конец файла вставьте
    PHP:
     .btTbl { BORDER-RIGHT: #98aab1 0px solid; BORDER-TOP: #98aab1 0px solid; BORDER-LEFT: #98aab1 0px solid; BORDER-BOTTOM: #98aab1 0px solid; BACKGROUND-COLOR: #6699cc
    }
    .row1 { BACKGROUND-COLOR: #f4f8fb
    }
    .row3 { BACKGROUND-COLOR: #AACCFF; font-weight: bold;
    }
    .gen { FONT-SIZE: 10pt
    }
    .genmed { FONT-SIZE: 9pt
    }
    .gensmall { FONT-SIZE: 8pt
    }
    .spoiler-wrap { CLEAR: both; BORDER-RIGHT: #c3cbd1 1px solid; BORDER-TOP: #c3cbd1 1px solid; BACKGROUND: #AACCFF; MARGIN: 6px auto; BORDER-LEFT: #c3cbd1 2px solid; WIDTH: 95%; BORDER-BOTTOM: #c3cbd1 1px solid;
    }
    .spoiler-wrap-title a{ color: #3030BB;
    }
    .spoiler-wrap-title a:visited{ color: #3030BB;
    }
    .spoiler-wrap-title a:active{ color: #3030BB;
    }
    .spoiler-head { PADDING-RIGHT: 14px; PADDING-LEFT: 14px; FONT-SIZE: 11px; PADDING-BOTTOM: 3px; MARGIN-LEFT: 6px; LINE-HEIGHT: 15px; PADDING-TOP: 1px;
    }
    .spoiler-body { PADDING-RIGHT: 6px; BORDER-TOP: #c3cbd1 1px solid; DISPLAY: none; PADDING-LEFT: 6px; BACKGROUND: #f5f5f5; PADDING-BOTTOM: 2px; PADDING-TOP: 1px;
    }
    .nik_images {max-width:150px; vertical-align: bottom; margin-top:-6px}
    
    .restable { border-left: 1px solid #ebebeb; border-right: 1px solid #ebebeb;
    }
    .restable th { width: 100px; padding: 6px; text-align: left;
    }
    .restable thead tr { cursor: pointer; background: #AACCFF; border: 1px solid #98aab1; border-radius: 5px; color: #fff; text-shadow: 1px 1px 2px black;
    }
    .restable a { text-decoration:none;
    }
    .restable a:hover { text-decoration:underline;
    }
    .restable tr:nth-child(2n) { background-color:#f7f7f7;
    }
    .restable tr { background-color:#fefefe;
    }
    .restable tbody tr:hover { background-color:#e7e7e7;
    }
    .restable td { padding:6px; vertical-align:middle; border-bottom: 1px solid #cccccc; color: #333333; font-size:12px;
    }
    #pselect { display: inline; padding: 5px 12px; background: #ebebeb; border-bottom: 1px solid rgba(0, 0, 0, 0.251); cursor: pointer; border-radius: 5px; color: #808080; text-shadow: white 0px 1px 2px; margin: 3px; font-size: 15px;
    }
    #pselect.active, #pselect:hover { background: #97d234 !important; border-bottom: 1px solid rgba(0, 0, 0, 0.251); text-shadow: 1px 1px 2px black; color: #fff !important;
    }
    .restable th { white-space: inherit;
    }
    .restable th > span { background: url("../images/torrent/nosorted.gif") 0px 50% no-repeat; padding-left: 8px;
    }
    .restable .up > span { background: url("../images/torrent/down.gif") 0px 50% no-repeat; padding-left: 8px;
    }
    .restable .down > span { background: url("../images/torrent/up.gif") 0px 50% no-repeat; padding-left: 8px;
    }
    .restable b { background: #e4ffb5;
    }
    .restable a:hover { color: #5f8f0b;
    }
  7. Выполнить запрос к базе данных
    Код:
    INSERT INTO `префикс_admin_sections` (`name`, `title`, `descr`, `icon`, `allow_groups`) VALUES
    ('dclsinc', 'Работа с DCLS и Torrent файлами', 'Модуль для отображения содержимого dcls и torrent файлов', 'dc.png', '1');
    где префикс заменить на префикс вашей базы данных. (по умолчанию это dle)
  8. В настройках сайта разрешить загрузку torrent и dcls файлов
Автор
Майор
Скачивания
9
Первый выпуск
Обновление
Оценка
0,00 звёзд 0 оценок

Другие ресурсы пользователя Майор

Поделиться ресурсом