Вывод торрент-клиента в профиле

Started by sхс on 2017-11-06 20:26 — 14 replies, 3507 views

#1
Поделюсь с вами небольшим модом. У меня древняя ревизия R600, так что подгоняйте под себя. Очень жаль что разработчики решили отказаться от подержки старых версий движка.





Итак
В config.php добавляем
peer_id клиентов
Spoiler content hidden.

Кому интересно можете поковырятся в исходниках transmission transmission/clients.c at 0378ee829872c51ae18b77cd19cb2ad6e17d116b · transmission/transmission · GitHub и пополнить базу. Но большую часть я оттуда забрал


в function.php вставляем
Spoiler content hidden.

в dispaying_torrent.php вставляем после

'NAME'         => ($peer['update_time']) ? $name : "<s>$name</s>",
строку
'PEER_ID'         => isset($peer['peer_id']) ? get_user_client($peer['peer_id']) : "-",

в viewtopic_torrent.php
после
                <!-- BEGIN port -->
                <td class="hidden-xs hidden-sm">{sfull.srow.port.PORT}</td>
                <!-- END port -->
вставляем
<td class="hidden-xs hidden-sm">{sfull.srow.port.PORT}</td>

в usercp_viewprofile.php

после
'ALLOW_DLS'            => bf($profiledata['user_opt'], 'user_opt', 'allow_dls'),
вставляем
'PEER_ID' => get_user_client($profiledata['peer_id']),

в usercp_viewprofile.tpl

после
            <!-- IF BIRTHDAY -->
            <tr>
                <th>{L_BIRTHDAY}:</th>
                <td id="user_birthday"><b class="editable">{BIRTHDAY}</b></td>
            </tr>
            <tr>
                <th>{L_AGE}:</th>
                <td><b>{AGE}</b></td>
            </tr>
            <!-- ENDIF -->
вставляем

            <!-- IF PEER_ID -->   
                    <tr>
                        <th>{L_TOR_CLIENT}:</th>
                        <td id="peer_id">{PEER_ID}</td>
                    </tr>
            <!-- ENDIF -->

В базе в таблице bb_bt_tracker у вас уже должно быть поле peer_id. Если его нет, то создайте. У меня стоит тип varchar так как есть фильтрация preg_match, но лучше делать его бинарным

папку с иконками прикрепил, кидайте в /images/clients/

Если у вас ничего не работает, значит я что-то забыл
#2
Работает на 2.1.5 большой спасибо.
#3
Накосячил немного

после
                <!-- BEGIN port -->
                <td class="hidden-xs hidden-sm">{sfull.srow.port.PORT}</td>
                <!-- END port -->
нужно было вставить
<td>{sfull.srow.PEER_ID}</td>

Тоже самое надо повторить для списка личеров
после
                <!-- BEGIN port -->
                <td class="hidden-xs hidden-sm">{lfull.lrow.port.PORT}</td>
                <!-- END port -->
вставляем
<td>{lfull.lrow.PEER_ID}</td>

после
                <!-- BEGIN porthead -->
                <th class="{sorter: 'digit'} hidden-xs hidden-sm"><b class="tbs-text">{L_DL_PORT}</b></th>
                <!-- END porthead -->

вставляем
<th class="{sorter: 'text'}"><b class="tbs-text">Client</b></th>
#4
Забыл добавить в запрос peer_id )
#5
Вот файл анонсера [PHP] <?php define('IN_TRACKER', true); define('BB_ROOT', './../'); require(BB_ - Pastebin.com
Ищите там все что связано с peer_id (404,421, 422 строки)

Сорян за такую разрозненную инструкцию. Основной пост редактировать я не могу
#6
sea tracker?)
#7
кто нибудь установил на тп 2.1.5 ? выдает ошибка на viewprofile.php на эту код.
[18-Apr-2018 00:56:24 Asia/Tashkent] PHP Notice:  Undefined index: peer_id in /var/www/user007/data/www/мойсайт/library/includes/ucp/viewprofile.php on line 200
'PEER_ID'                          => get_user_client($profiledata['peer_id']),
#8
Пусто в данной строчке
#9
Немного переработав, включили в сам движок, пока в 2.4.0 beta 3, спасибо.
#10
Иконки и список клиентов

$bb_cfg['user_clients']['azureus'] = array(
//AZUREUS_STYLE_CLIENTS
    '7T' => 'aTorrent (Android)',
    'AB' => 'AnyEvent::BitTorrent',
    'AG' => 'Ares',
    'A~' => 'Ares',
    'AN' => 'Ares',
    'AR' => 'Arctic',
    'AV' => 'Avicora',
    'AT' => 'Artemis',
    'AX' => 'BitPump',
    'AZ' => 'Azureus',
    'BA' => 'µTorrent',
    'BB' => 'BitBuddy',
    'BC' => 'BitComet',
    'BE' => 'BareTorrent',
    'BF' => 'BitFlu',
    'BG' => 'BTGetit',
    'BH' => 'BitZilla',
    'BK' => 'BitKitten (libtorrent)',
    'BL' => 'BitBlinder',
    'BLZ' => 'Blizzard Downloader',
    'BM' => 'BitMagnet',
    'BN' => 'Baidu Netdisk',
    'BOWP' => 'BitsOnWheels',
    'BOW' => 'BitsOnWheels',
    'BP' => 'BitTorrent Pro (Azureus + Spyware)',
    'BR' => 'BitRocket',
    'BS' => 'BTSlave',
    //'BT' => 'BBtor',
    'BT' => 'BitTorrent',
    'BW' => 'BitWombat',
    'BX' => 'Bittorrent X',
    'CD' => 'Enhanced CTorrent',
    'CT' => 'CTorrent',
    'DE' => 'DelugeTorrent',
    'DP' => 'Propagate Data Client',
    'DNA' => 'BitTorrent DNA',
    'EB' => 'EBit',
    'ES' => 'Electric Sheep',
    'FC' => 'FileCroc',
    'FD' => 'Free Download Manager',
    'FG' => 'FlashGet',
    'FT' => 'FoxTorrent/RedSwoosh',
    'FX' => 'Freebox',
    'FL' => 'Flud',
    //'FL' => 'Folx',
    'G' => 'G3 Torrent',
    'GS' => 'GSTorrent',
    'GR' => 'GetRight',
    'HK' => 'Hekate',
    'HL' => 'Halite',
    'HM' => 'hMule',
    'HN' => 'Hydranode',
    'IL' => 'iLivid',
    'JS' => 'Justseed.it',
    'JT' => 'JavaTorrent',
    'KG' => 'KGet',
    'KT' => 'KTorrent',
    'LC' => 'LeechCraft',
    'LH' => 'LH-ABC',
    'LK' => 'Linkage',
    'LP' => 'Lphant',
    'LT' => 'LibTorrent',
    //'LT' => 'LibTorrent (Rasterbar)',
    //'lt' => 'LibTorrent (Rakshasa)',
    'LW' => 'LimeWire',
    'LIME' => 'LimeWire',
    'MK' => 'Meerkat',
    'ML' => 'MLDonkey',
    'MG' => 'MediaGet',
    'MO' => 'MonoTorrent',
    'MP' => 'MooPolice',
    'MR' => 'Miro',
    'MT' => 'MoonlightTorrent',
    'NB' => 'Net::BitTorrent',
    'NE' => 'BT Next Evolution',   
    'NX' => 'Net Transport',
    'OP' => 'Opera',
    'OS' => 'OneSwarm',
    'OT' => 'OmegaTorrent',
    'PB' => 'Protocol::BitTorrent',
    'pb' => 'pbTorrent',
    'PC' => 'CacheLogic',
    'PD' => 'Pando',
    'PE' => 'PeerProject',
    'PI' => 'PicoTorrent',
    'PT' => 'PHPTracker',
    'pX' => 'pHoeniX',
    'QB' => 'qBittorrent',
    'qB' => 'qBittorrent',
    'QD' => 'QQDownload',
    'QT' => 'QT',
    'QWOD' => 'QWOD',
    'RS' => 'Rufus',
    'RT' => 'Retriever',
    'RZ' => 'RezTorrent',
    
    'SB' => 'Swiftbit',
    'SD' => 'Thunder',
    'SG' => 'GS Torrent',
    'SM' => 'SoMud',
    'SP' => 'BitSpirit',
    'SS' => 'SwarmScope',
    'ST' => 'SymTorrent',
    'st' => 'sharktorrent',
    'SZ' => 'Shareaza',
    'S~' => 'Shareaza',
    'TB' => 'Torch',
    'TE' => 'Terasaur Seed Bank',
    'TI' => 'Tixati',
    'TIX' => 'Tixati',
    'TIXX' => 'Tixati',
    'TL' => 'Tribler',
    'TN' => 'TorrentDotNET',
    'TR' => 'Transmission',
    'TS' => 'TorrentStorm',
    'TT' => 'tTorrent',
    'UE' => 'µTorrent Embedded',
    'UL' => 'uLeecher!',
    'UM' => 'µTorrent (Mac)',
    'UT' => 'µTorrent',
    'UW' => 'µTorrent Web',
    'VG' => 'Vagaa',
    'WD' => 'WebTorrent',
    'WT' => 'BitLet',
    'WW' => 'WebTorrent',
    'WY' => 'FireTorrent',
    'XBT' => 'XBT Client',
    'XF' => 'Xfplay',
    'XL' => 'Xunlei',
    'XS' => 'XSwifter',
    'XT' => 'XanTorrent',
    'XC' => 'Xtorrent',
    'XX' => 'Xtorrent',
    'ZT' => 'ZipTorrent',
    'ZO' => 'Zona',
    'ZT' => 'ZipTorrent',
    'ZZ' => 'Unknown client',
);

$bb_cfg['user_clients']['shadow'] = array(   
//SHADOW_STYLE_CLIENTS
    'A' => 'ABC',
    'O' => 'Osprey Permaseed',
    'Q' => 'BTQueue',
    'R' => 'Tribler',
    'S' => 'Shadow\'s client',
    'T' => 'BitTornado',
    'U' => 'UPnP NAT Bit Torrent ',   
);

$bb_cfg['user_clients']['mainline'] = array(   
//MAINLINE_STYLE_CLIENTS
    'M' => 'BitTorrent',
    'Q' => 'Queen Bee'
);