/** * 用户信息栏项底部 * @return array */ function viewthread_sidebottom() { return []; global $_G; $up = $_G['user_info']['stat_up']; $down = $_G['user_info']['stat_down']; $up = PTHelper::getReadableFileSize($up); $down = PTHelper::getReadableFileSize($down); $script = <<<HTML <dl class="pil cl"> <dt>统计上传</dt><dd>{$up}</dd> <dt>统计下载</dt><dd>{$down}</dd> </dl> <br/> HTML; return array($script); }
/** * 全局页面顶端(原来花园显示快捷上传下载的位置)。 * @param array $params * @return string */ function global_cpnav_extra1($params) { /** * @var array $_G * @var string $return */ global $_G; if ($_G['uid']) { // 仅当用户登录后才显示 $s_up = $_G['user_info']['stat_up']; $s_down = $_G['user_info']['stat_down']; $s_share_ratio_str = null; if ($s_down == 0) { // 设置统一共享率上限为1000 $s_share_ratio = $s_up != 0 ? 1000 : 0; $s_share_ratio_str = $s_up != 0 ? '1000.00' : '0.00'; } else { $s_share_ratio = $s_up / $s_down; $s_share_ratio_str = sprintf('%.02lf', $s_share_ratio); } $s_share_ratio_color_str = null; if ($s_share_ratio < 0 or $s_up < 0) { $s_share_ratio_color_str = 'gold'; } elseif ($s_share_ratio == 0) { $s_share_ratio_color_str = 'black'; } elseif ($s_share_ratio < 1) { $s_share_ratio_color_str = 'red'; } elseif ($s_share_ratio < 2) { $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'; } $imgroot = $_G['ngpt_root'] . 'static/image/'; $u_str = PTHelper::getReadableFileSize($s_up); $d_str = PTHelper::getReadableFileSize($s_down); include template('ngpt:hooks/global/cpnav_extra1'); return $return; } else { return ''; } }
/** * 处理浏览帖子逻辑,并返回一个 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; }
$passkey = ''; $fulltracker = ''; $s_share_ratio_color_str = 'darkgray'; // 上传下载 if ($t_cdstate_b) { $s_up = $detail_info['stat_up']; $s_down = $detail_info['stat_down']; $r_up = $detail_info['real_up']; $r_down = $detail_info['real_down']; } else { $s_up = $s_down = $r_up = $r_down = 0; } $s_up_str = PTHelper::getReadableFileSize($s_up); $s_down_str = PTHelper::getReadableFileSize($s_down); $r_up_str = PTHelper::getReadableFileSize($r_up); $r_down_str = PTHelper::getReadableFileSize($r_down); // 共享率 if ($s_down == 0) { // 设置统一共享率上限为1000 $s_share_ratio = $s_up != 0 ? 1000 : 0; $s_share_ratio_str = $s_up != 0 ? '1000.00' : '0.00'; } else { $s_share_ratio = $s_up / $s_down; $s_share_ratio_str = sprintf('%.02lf', $s_share_ratio); } if ($s_share_ratio < 0 or $s_up < 0) { $s_share_ratio_color_str = 'gold'; } elseif ($s_share_ratio == 0) { $s_share_ratio_color_str = 'black'; } elseif ($s_share_ratio < 1) { $s_share_ratio_color_str = 'red';