Beispiel #1
0
 /**
  * 处理浏览帖子逻辑,并返回一个 Discuz 模板,该模板会被加入到帖子内容前
  * 例:
  * return template("common/header");
  * @param int $tid 即将浏览的帖子ID
  * @return string
  */
 function viewthread($tid)
 {
     $record_seed = PTHelper::getSeedInfoBy('tid', $tid);
     $seedexists = $record_seed['is_valid'];
     $seedid = $record_seed['seed_id'];
     $infohash = $record_seed['info_hash'];
     $filename = $record_seed['file_name'];
     $filesize = $record_seed['file_size'];
     $filesize_str = PTHelper::getReadableFileSize($filesize);
     $filecount = $record_seed['file_count'];
     $seeds = $record_seed['seeder_count'];
     $leechers = $record_seed['leecher_count'];
     $finished = $record_seed['completed_count'];
     $lastactive = strtotime($record_seed['last_active_time']);
     $lastactive_str = date('Y-m-d H:i:s', $lastactive);
     $status = 'Normal';
     //废弃的
     $pubdate = strtotime($record_seed['pub_time']);
     $pubdate_str = date('Y-m-d H:i:s', $lastactive);
     $traffic = $record_seed['traffic_up'];
     $traffic_str = PTHelper::getReadableFileSize($traffic);
     $livetime = $record_seed['live_time'];
     $livetime_str = PTHelper::getReadableTimeFromMinutes($livetime / 60.0);
     $coef_expire = intval($record_seed['coef_expire_time']);
     if ($coef_expire != 0) {
         $coef_expire = PTHelper::getReadableTimeFromMinutes($coef_expire / 60.0);
     } else {
         $coef_expire = "永久";
     }
     $upcoeff = $record_seed['up_coef'];
     $upcoeff_str = $upcoeff . "%   " . $coef_expire;
     $downcoeff = $record_seed['down_coef'];
     $downcoeff_str = $downcoeff . "%   " . $coef_expire;
     $seedingip_str = 'ipv4/ipv6';
     $filename = $record_seed['torrent_name'];
     $downseedpageurl = PTHelper::getApiUrl("seed/download", ['seed_id' => $record_seed['seed_id']]);
     $downseedpageurl = preg_replace("/127.0.0.1/", $_SERVER['SERVER_ADDR'], $downseedpageurl);
     $candownloadstatus = 'normal';
     $return = null;
     include template('ngpt:resthread-view');
     return $return;
 }
Beispiel #2
0
    $s_share_ratio_color_str = 'navy';
} elseif ($s_share_ratio < 5) {
    $s_share_ratio_color_str = 'mediumblue';
} elseif ($s_share_ratio < 10) {
    $s_share_ratio_color_str = '#00A200';
} else {
    $s_share_ratio_color_str = '#00DA00';
}
// 正在上传、正在下载、完成数
if ($t_cdstate_b) {
    // 统计某个用户的实际上传中/下载中的种子数量
    // 由于某个用户对一个种子可能只有v4或者只有v6,所以应该将二者合起来判断
    // 由于 Discuz 不支持 UNION(安全性问题),所以只好在 PHP 中手工去重(去虫 XD)
    // 注意这么做可能会让机器开销增大!
    // 关于 $r1、$r2、$r3、$r4 的命名——确实有点作用域污染的意味,不过后面别用这么短的就可以了。
    // 正在上传下载peer数
    $numuploadingpeers = $detail_info['seeder_count'];
    $numdownloadingpeers = $detail_info['leecher_count'];
    // 正在上传下载数
    $numuploadingseeds = $detail_info['seed_up_count'];
    $numdownloadingseeds = $detail_info['seed_down_count'];
    $numpublishedseeds = $detail_info['published_seed'];
    // 下载完成数
    $numdownloadedseeds = $detail_info['completed_count'];
}
// passkey 和 tracker
if ($t_cdstate_b) {
    $passkey = $detail_info['passkey'];
    $fulltracker = PTHelper::getApiUrl('tracker/announce');
    $fulltracker = preg_replace("/127.0.0.1/", $_SERVER['SERVER_ADDR'], $fulltracker);
}