diff --git a/include/constants.php b/include/constants.php index 1389c04f..450e74cd 100644 --- a/include/constants.php +++ b/include/constants.php @@ -1,6 +1,6 @@ ".$lang_usercp['text_view']."]", 1); //start seed box -$seedBox = ''; -$columnOperator = nexus_trans('label.seed_box_record.operator'); -$columnBandwidth = nexus_trans('label.seed_box_record.bandwidth'); -$columnIPBegin = nexus_trans('label.seed_box_record.ip_begin'); -$columnIPEnd = nexus_trans('label.seed_box_record.ip_end'); -$columnIP = nexus_trans('label.seed_box_record.ip'); -$columnIPHelp = nexus_trans('label.seed_box_record.ip_help'); -$columnComment = nexus_trans('label.comment'); -$columnStatus = nexus_trans('label.seed_box_record.status'); -$res = \App\Models\SeedBoxRecord::query()->where('uid', $CURUSER['id'])->where('type', \App\Models\SeedBoxRecord::TYPE_USER)->get(); -if ($res->count() > 0) -{ - $seedBox .= ""; - foreach ($res as $seedBoxRecord) +if (get_setting('seed_box.enabled') == 'yes') { + $seedBox = ''; + $columnOperator = nexus_trans('label.seed_box_record.operator'); + $columnBandwidth = nexus_trans('label.seed_box_record.bandwidth'); + $columnIPBegin = nexus_trans('label.seed_box_record.ip_begin'); + $columnIPEnd = nexus_trans('label.seed_box_record.ip_end'); + $columnIP = nexus_trans('label.seed_box_record.ip'); + $columnIPHelp = nexus_trans('label.seed_box_record.ip_help'); + $columnComment = nexus_trans('label.comment'); + $columnStatus = nexus_trans('label.seed_box_record.status'); + $res = \App\Models\SeedBoxRecord::query()->where('uid', $CURUSER['id'])->where('type', \App\Models\SeedBoxRecord::TYPE_USER)->get(); + if ($res->count() > 0) { - $seedBox .= ""; - $seedBox .= sprintf('', $seedBoxRecord->id); - $seedBox .= sprintf('', $seedBoxRecord->operator); - $seedBox .= sprintf('', $seedBoxRecord->bandwidth ?: ''); - $seedBox .= sprintf('', $seedBoxRecord->ip ?: sprintf('%s ~ %s', $seedBoxRecord->ip_begin, $seedBoxRecord->ip_end)); - $seedBox .= sprintf('', $seedBoxRecord->comment); - $seedBox .= sprintf('', $seedBoxRecord->statusText); - $seedBox .= sprintf('', $lang_functions['text_delete'], $seedBoxRecord->id); - $seedBox .= ""; + $seedBox .= "
ID{$columnOperator}{$columnBandwidth}{$columnIP}{$columnComment}{$columnStatus}
%s%s%s%s%s%sD
"; + foreach ($res as $seedBoxRecord) + { + $seedBox .= ""; + $seedBox .= sprintf('', $seedBoxRecord->id); + $seedBox .= sprintf('', $seedBoxRecord->operator); + $seedBox .= sprintf('', $seedBoxRecord->bandwidth ?: ''); + $seedBox .= sprintf('', $seedBoxRecord->ip ?: sprintf('%s ~ %s', $seedBoxRecord->ip_begin, $seedBoxRecord->ip_end)); + $seedBox .= sprintf('', $seedBoxRecord->comment); + $seedBox .= sprintf('', $seedBoxRecord->statusText); + $seedBox .= sprintf('', $lang_functions['text_delete'], $seedBoxRecord->id); + $seedBox .= ""; + } + $seedBox .= '
ID{$columnOperator}{$columnBandwidth}{$columnIP}{$columnComment}{$columnStatus}
%s%s%s%s%s%sD
'; } - $seedBox .= ''; -} -$seedBox .= sprintf('
', $lang_usercp['add_seed_box_btn']); -tr_small($lang_usercp['row_seed_box'], $seedBox, 1); -$seedBoxCss = <<', $lang_usercp['add_seed_box_btn']); + tr_small($lang_usercp['row_seed_box'], $seedBox, 1); + $seedBoxCss = <<
@@ -1028,7 +1029,7 @@ $seedBoxForm = <<
FORM; -$seedBoxJs = <<renderIcon($e['ipv4'], $e['userid']); @@ -33,7 +33,13 @@ function get_location_column($e, $isStrongPrivacy, $canView): string $addressStr = implode('
', $address); $location = "
" . $addressStr . "
"; } else { - $location = implode(', ', array_filter([$e['ipv4'], $e['ipv6']])); + if (!empty($e['ipv4'])) { + $ips[] = $e['ipv4'] . $seedBoxRep->renderIcon($e['ipv4'], $e['userid']); + } + if (!empty($e['ipv6'])) { + $ips[] = $e['ipv6'] . $seedBoxRep->renderIcon($e['ipv6'], $e['userid']); + } + $location = '
'.implode('
', $ips).'
'; } if ($isStrongPrivacy) { @@ -48,6 +54,18 @@ function get_location_column($e, $isStrongPrivacy, $canView): string return "
" . $result . "
\n"; } +function get_username_seed_box_icon($e): string +{ + global $seedBoxRep; + foreach (array_filter([$e['ipv4'], $e['ipv6']]) as $ip) { + $icon = $seedBoxRep->renderIcon($ip, $e['userid']); + if (!empty($icon)) { + return $icon; + } + } + return ''; +} + if(isset($CURUSER)) { @@ -85,24 +103,32 @@ function dltable($name, $arr, $torrent) $highlight = $CURUSER["id"] == $e['userid'] ? " bgcolor=#BBAF9B" : ""; $s .= "\n"; $secs = max(1, ($e["la"] - $e["st"])); + $columnLocation = $usernameSeedBoxIcon = ''; if ($privacy == "strong" || ($torrent['anonymous'] == 'yes' && $e['userid'] == $torrent['owner'])) { if (get_user_class() >= $viewanonymous_class || $e['userid'] == $CURUSER['id']) { - $s .= "".$lang_viewpeerlist['text_anonymous']."
(" . get_username($e['userid']) . ")"; if ($showLocationColumn) { - $s .= get_location_column($e, true, true); + $columnLocation = get_location_column($e, true, true); + } else { + $usernameSeedBoxIcon = get_username_seed_box_icon($e); } + $columnUsername = "".$lang_viewpeerlist['text_anonymous']."".$usernameSeedBoxIcon."
(" . get_username($e['userid']) . ")\n"; } else { - $s .= "".$lang_viewpeerlist['text_anonymous']."\n"; if ($showLocationColumn) { - $s .= get_location_column($e, true, false); + $columnLocation = get_location_column($e, true, false); + } else { + $usernameSeedBoxIcon = get_username_seed_box_icon($e); } + $columnUsername = "".$lang_viewpeerlist['text_anonymous']."".$usernameSeedBoxIcon."\n"; } } else { - $s .= "" . get_username($e['userid']); if ($showLocationColumn) { - $s .= get_location_column($e, false, false); + $columnLocation = get_location_column($e, false, false); + } else { + $usernameSeedBoxIcon = get_username_seed_box_icon($e); } + $columnUsername = "" . get_username($e['userid']).$usernameSeedBoxIcon."\n"; } + $s .= $columnUsername . $columnLocation; $s .= "" . ($e['connectable'] == "yes" ? $lang_viewpeerlist['text_yes'] : "".$lang_viewpeerlist['text_no']."") . "\n"; $s .= "" . mksize($e["uploaded"]) . "\n";