diff options
Diffstat (limited to 'Html/peers.php')
-rw-r--r-- | Html/peers.php | 270 |
1 files changed, 270 insertions, 0 deletions
diff --git a/Html/peers.php b/Html/peers.php new file mode 100644 index 0000000..9593551 --- /dev/null +++ b/Html/peers.php @@ -0,0 +1,270 @@ +<?php +require_once('includes/config.php'); + +// Pas d'accès direct à cette page + définition de la variable $hash +if(isset($_GET['hash'])) { + $hash = isset($_GET['hash']) ? html($_GET['hash']) : NULL; + if($_GET['hash'] == '') { + header('Location: ./'); + exit(); + } + + +$pagetitle= 'Peers : clients connectés'; + +include_once('includes/header.php'); + +define("_BBC_PAGE_NAME", $pagetitle); +define("_BBCLONE_DIR", "bbclone/"); +define("COUNTER", _BBCLONE_DIR."mark_page.php"); +if (is_readable(COUNTER)) include_once(COUNTER); + +//$title = html($_GET['title']); + +?> + +<body> + +<div id="container"> + + <?php + include_once('includes/header-logo.php'); + include_once('includes/nav.php'); + ?> + + <div id="body"> + <div id="content"> + + <?php include_once('includes/ariane.php'); ?> + + <br /> + + <?php + $stmt = $db->prepare('SELECT postTitle FROM blog_posts_seo WHERE postHash = :hash'); + $stmt->bindValue(':hash', $hash, PDO::PARAM_INT); + $stmt->execute(); + $row = $stmt->fetch(); + ?> + + <h3>Torrent : <?php echo $row['postTitle']; ?></h3> + + <table> + <tr> + <th>Pseudo</th> + <th>Statut</th> + <th>Client</th> + <th>Port</th> + <th>Téléchargé</th> + <th>Uploadé</th> + <th>Ratio</th> + <th>Mis à jour</th> + </tr> + + <?php + $stmt = $db->prepare(' + SELECT xal.id,xal.ipa,xal.port,xal.peer_id,xal.downloaded down,xal.uploaded up,xal.uid,xfu.mtime time,b.username, IF(xal.left0=0,"seeder","leecher") as status + FROM xbt_announce_log xal + LEFT JOIN blog_members b ON b.memberID = xal.uid + LEFT JOIN xbt_files xf ON xf.info_hash = xal.info_hash + LEFT JOIN blog_posts_seo bps ON bps.postID = xf.fid + LEFT JOIN xbt_files_users xfu ON xfu.fid = xf.fid + WHERE bps.postHash = :postHash AND xfu.active = 1 AND xal.mtime < (UNIX_TIMESTAMP() - 30) + GROUP BY xal.ipa + ORDER BY status DESC + '); + $stmt->bindValue(':postHash', $hash, PDO::PARAM_INT); + $stmt->execute(); + + while($row = $stmt->fetch()) { + + // on trouve le client bittorrent + $peer = substr($row['peer_id'], 1, 2); + + if($peer == 'AZ') { + $client = 'Azureus'; + } + if($peer == 'AX') { + $client = 'AnalogX'; + } + elseif($peer == 'AG') { + $client = 'Ares'; + } + if($peer == 'BB') { + $client = 'BitBuddy'; + } + elseif($peer == 'BC') { + $client = 'BitComet'; + } + elseif($peer == 'BP') { + $client = 'Bittorrent Pro'; + } + elseif($peer == 'BT') { + $client = 'BBtor'; + } + elseif($peer == 'DE') { + $client = 'Deluge Torrent'; + } + elseif($peer == 'FX') { + $client = 'Freebox BitTorrent'; + } + elseif($peer == 'HL') { + $client = 'Halite'; + } + elseif($peer == 'HM') { + $client = 'hMule'; + } + elseif($peer == 'IL') { + $client = 'iLivid'; + } + elseif($peer == 'JT') { + $client = 'JavaTorrent'; + } + elseif($peer == 'KT') { + $client = 'KTorrent'; + } + elseif($peer == 'KG') { + $client = 'KGet'; + } + elseif($peer == 'LT') { + $client = 'libTorrent'; + } + elseif($peer == 'lt') { + $client = 'rTorrent'; + } + elseif($peer == 'LP') { + $client = 'Lphant'; + } + elseif($peer == 'LW') { + $client = 'LimeWire'; + } + elseif($peer == 'MO') { + $client = 'MonoTorrent'; + } + elseif($peer == 'MT') { + $client = 'MoonlightTorrent'; + } + elseif($peer == 'NB') { + $client = 'Net::Bittorent'; + } + elseif($peer == 'NX') { + $client = 'Net Transport'; + } + elseif($peer == 'OS') { + $client = 'OneSwarm'; + } + elseif($peer == 'OT') { + $client = 'Omega Torrent'; + } + elseif($peer == 'PB') { + $client = 'Protocol::BitTorrent'; + } + elseif($peer == 'PT') { + $client = 'PHPTracker'; + } + elseif($peer == 'qB') { + $client = 'qBittorrent'; + } + elseif($peer == 'SP') { + $client = 'BitSpirit'; + } + elseif($peer == 'st') { + $client = 'Sharktorrent'; + } + elseif($peer == 'SZ') { + $client = 'Shareaza'; + } + elseif($peer == 'TB') { + $client = 'Torch'; + } + elseif($peer == 'TIX') { + $client = 'Tixati'; + } + elseif($peer == 'TL') { + $client = 'Tribler'; + } + elseif($peer == 'TR') { + $client = 'Transmission'; + } + elseif($peer == 'TS') { + $client = 'Torrentstorm'; + } + elseif($peer == 'UM') { + $client = 'µTorrent for MAC'; + } + elseif($peer == 'UT') { + $client = 'µTorrent'; + } + elseif($peer == 'WD') { + $client = 'WebTorrent Desktop'; + } + elseif($peer == 'WT') { + $client = 'BitLet'; + } + elseif($peer == 'WW') { + $client = 'WebTorrent'; + } + elseif($peer == 'WY') { + $client = 'FireTorrent'; + } + elseif($peer == 'XT') { + $client = 'XanTorrent'; + } + elseif($peer == 'XX') { + $client = 'Xtorrent'; + } + elseif($peer == 'ZT') { + $client = 'ZipTorrent'; + } + + else { + $client = 'Client inconnu'; + } + + echo '<tr>'; + echo '<td>'.html($row['username']).'</td>'; + + if ($row['status'] == 'leecher') { + echo '<td><span style="color: red;">leecher</span></td>'; + } + elseif ($row['status'] == 'seeder') { + echo '<td><span style="color: green;">seeder</span></td>'; + } + + echo '<td>'.$client.'</td>'; + echo '<td>'.$row['port'].'</td>'; + echo '<td>'.makesize($row['down']).'</td>'; + echo '<td>'.makesize($row['up']).'</td>'; + + //Peer Ratio + if (intval($row["down"])>0) { + $ratio=number_format($row["up"]/$row["down"],2); + } + else { + $ratio='∞'; + } + echo '<td>'.$ratio.'</td>'; + echo '<td>'.get_elapsed_time($row['time']).'</td>'; + echo '</tr>'; + } + ?> + + </table> + + </div> + + <?php include_once('sidebar.php'); ?> + + <div class="clear"></div> + </div> +</div> + +<div id="footer"> + <?php include_once('includes/footer.php'); ?> +</div> + +</body> +</html> + +<?php +} //Fin if $_GET['hash'] +?> |