Torrents |
Size |
↻
|
↑
|
↓
|
".Format::get_size($Str[1])." | ";
}
# FreeTorrent is a string
foreach ($TorrentList as $Torrent) {
list($TorrentID, $Media, $Container, $Codec, $Resolution, $Version,
$Censored, $Anonymous, $Archive, $FileCount, $Size, $Seeders, $Leechers,
$Snatched, $FreeTorrent, $FreeLeechType, $TorrentTime, $Description, $FileList,
$FilePath, $UserID, $LastActive, $InfoHash, $BadTags, $BadFolders, $BadFiles,
$LastReseedRequest, $LogInDB, $HasFile, $PersonalFL, $IsSnatched, $IsSeeding, $IsLeeching
) = array_values($Torrent);
$Reported = false;
$Reports = Torrents::get_reports($TorrentID);
$NumReports = count($Reports);
if ($NumReports > 0) {
$Reported = true;
include(SERVER_ROOT.'/sections/reportsv2/array.php');
$ReportInfo = '
This torrent has '.$NumReports.' active '.($NumReports === 1 ? 'report' : 'reports').": |
";
foreach ($Reports as $Report) {
if (check_perms('admin_reports')) {
$ReporterID = $Report['ReporterID'];
$Reporter = Users::user_info($ReporterID);
$ReporterName = $Reporter['Username'];
$ReportLinks = "$ReporterName reported it";
} else {
$ReportLinks = 'Someone reported it';
}
if (isset($Types[$GroupCategoryID][$Report['Type']])) {
$ReportType = $Types[$GroupCategoryID][$Report['Type']];
} elseif (isset($Types['master'][$Report['Type']])) {
$ReportType = $Types['master'][$Report['Type']];
} else {
// There was a type but it wasn't an option!
$ReportType = $Types['master']['other'];
}
$ReportInfo .= "
$ReportLinks ".time_diff($Report['ReportedTime'], 2, true, true).' for the reason "'.$ReportType['title'].'":
'.Text::full_format($Report['UserComment']).'
|
';
}
$ReportInfo .= "
";
}
$CanEdit = (check_perms('torrents_edit') || (($UserID == $LoggedUser['ID'] && !$LoggedUser['DisableWiki']) && !($Remastered && !$RemasterYear)));
$RegenLink = check_perms('users_mod') ? ' Regenerate' : '';
$FileTable = '
File Names' . $RegenLink . '
' . ($FilePath ? "/$FilePath/" : '') . '
|
Size
|
';
if (substr($FileList, -3) === '}}}') { // Old style
$FileListSplit = explode('|||', $FileList);
foreach ($FileListSplit as $File) {
$NameEnd = strrpos($File, '{{{');
$Name = substr($File, 0, $NameEnd);
if ($Spaces = strspn($Name, ' ')) {
$Name = str_replace(' ', ' ', substr($Name, 0, $Spaces)) . substr($Name, $Spaces);
}
$FileSize = substr($File, $NameEnd + 3, -3);
$FileTable .= sprintf("\n%s | %s |
", $Name, Format::get_size($FileSize));
}
} else {
$FileListSplit = explode("\n", $FileList);
foreach ($FileListSplit as $File) {
$FileInfo = Torrents::filelist_get_file($File);
$FileTable .= sprintf("\n%s | %s |
", $FileInfo['name'], Format::get_size($FileInfo['size']));
}
}
$FileTable .= '
';
$ExtraInfo = ''; // String that contains information on the torrent (e.g., format and encoding)
$AddExtra = '	|	'; // Separator between torrent properties
// Similar to Torrents::torrent_info()
if ($Media) {
$ExtraInfo .= ''.display_str($Media).'';
}
if ($Container) {
$ExtraInfo .= $AddExtra.''.display_str($Container).'';
}
if ($Archive) {
$ExtraInfo .= $AddExtra.''.display_str($Archive).'';
}
if ($Codec) {
$ExtraInfo .= $AddExtra.''.display_str($Codec).'';
}
if ($Resolution) {
$ExtraInfo .= $AddExtra.''.display_str($Resolution).'';
}
/*
if ($Version) {
$ExtraInfo.=$AddExtra.display_str($Version);
$ExtraInfo .= $AddExtra.''.display_str($Version).'';
}
*/
if ($Censored) {
$ExtraInfo .= $AddExtra.'Yes';
} else {
$ExtraInfo .= $AddExtra.'No';
}
if (!$ExtraInfo) {
$ExtraInfo = $GroupName;
}
if ($IsLeeching) {
$ExtraInfo .= $AddExtra.Format::torrent_label('Leeching', 'important_text_semi');
} elseif ($IsSeeding) {
$ExtraInfo .= $AddExtra.Format::torrent_label('Seeding', 'important_text_alt');
} elseif ($IsSnatched) {
$ExtraInfo .= $AddExtra.Format::torrent_label('Snatched', 'bold');
}
if ($FreeTorrent === '1') {
$ExtraInfo .= $AddExtra.Format::torrent_label('Freeleech', 'important_text_alt');
}
if ($FreeTorrent === '2') {
$ExtraInfo .= $AddExtra.Format::torrent_label('Neutral Leech', 'bold');
}
// Freleechizer
if ($FreeLeechType === '3') {
$DB->query("
SELECT UNIX_TIMESTAMP(ExpiryTime)
FROM shop_freeleeches
WHERE TorrentID = $TorrentID");
if ($DB->has_results()) {
$ExpiryTime = $DB->next_record(MYSQLI_NUM, false)[0];
$ExtraInfo .= " (".str_replace(['month','week','day','hour','min'], ['m','w','d','h','m'], time_diff(max($ExpiryTime, time()), 1, false)).")";
}
}
if ($PersonalFL) {
$ExtraInfo .= $AddExtra.Format::torrent_label('Personal Freeleech', 'important_text_alt');
}
if ($Reported) {
$HtmlReportType = ucfirst($Reports[0]['Type']);
$HtmlReportComment = htmlentities(htmlentities($Reports[0]['UserComment']));
$ExtraInfo .= $AddExtra."".Format::torrent_label('Reported', 'important_text')."";
}
if (!empty($BadTags)) {
$ExtraInfo .= $AddExtra.Format::torrent_label('Bad Tags', 'important_text');
}
if (!empty($BadFolders)) {
$ExtraInfo .= $AddExtra.Format::torrent_label('Bad Folders', 'important_text');
}
if (!empty($BadFiles)) {
$ExtraInfo .= $AddExtra.Format::torrent_label('Bad File Names', 'important_text');
}
$TorrentDL = "torrents.php?action=download&id=".$TorrentID."&authkey=".$LoggedUser['AuthKey']."&torrent_pass=".$LoggedUser['torrent_pass'];
if (!($TorrentFileName = $Cache->get_value('torrent_file_name_'.$TorrentID))) {
$TorrentFile = file_get_contents(TORRENT_STORE.$TorrentID.'.torrent');
$Tor = new BencodeTorrent($TorrentFile, false, false);
$TorrentFileName = $Tor->Dec['info']['name'];
$Cache->cache_value('torrent_file_name_'.$TorrentID, $TorrentFileName);
} ?>
[ =($HasFile ? 'DL' : 'Missing')?>
| FL
| RP
| ED
| RM
| PL
]
=$ExtraInfo; ?>
|
=Format::get_size($Size)?>
|
=number_format($Snatched)?>
|
=number_format($Seeders)?>
|
=number_format($Leechers)?>
|
Uploaded by
Anonymous
Anonymous =time_diff($TorrentTime); ?>
= 1209600) { ?>
Last active: =time_diff($LastActive); ?>
Last active: =time_diff($LastActive); ?>
= 345678 && time() - strtotime($LastReseedRequest) >= 864000) || check_perms('users_mod')) { ?>
Request re-seed
=$FileTable?>
=$ReportInfo?>
'.Text::full_format($Description).'';
}
echo "\n"; ?>
';
} ?>
|
0) {
?>
Requests (=number_format(count($Requests))?>)
Show
Description |
Votes |
Bounty |
70) {
$RequestDesc = substr($RequestDesc, 0, 67) . '...';
} ?>
=$RequestDesc?> |
=count($RequestVotes['Voters'])?>
+
|
=Format::get_size($RequestVotes['TotalBounty'])?>
|
get_value("torrent_collages_$GroupID");
if (!is_array($Collages)) {
$DB->query("
SELECT c.Name, c.NumTorrents, c.ID
FROM collages AS c
JOIN collages_torrents AS ct ON ct.CollageID = c.ID
WHERE ct.GroupID = '$GroupID'
AND Deleted = '0'
AND CategoryID != '0'");
$Collages = $DB->to_array();
$Cache->cache_value("torrent_collages_$GroupID", $Collages, 3600 * 6);
}
if (count($Collages) > 0) {
if (count($Collages) > MAX_COLLAGES) {
// Pick some at random
$Range = range(0, count($Collages) - 1);
shuffle($Range);
$Indices = array_slice($Range, 0, MAX_COLLAGES);
$SeeAll = '
(See all)';
} else {
$Indices = range(0, count($Collages) - 1);
$SeeAll = '';
} ?>
↑ This content is in =number_format(count($Collages))?> collection=((count($Collages) > 1) ? 's' : '')?>=$SeeAll?>
|
# torrents |
=$CollageName?> |
=number_format($CollageTorrents)?>
|
=$CollageName?> |
=number_format($CollageTorrents)?>
|
get_value("torrent_collages_personal_$GroupID");
if (!is_array($PersonalCollages)) {
$DB->query("
SELECT c.Name, c.NumTorrents, c.ID
FROM collages AS c
JOIN collages_torrents AS ct ON ct.CollageID = c.ID
WHERE ct.GroupID = '$GroupID'
AND Deleted = '0'
AND CategoryID = '0'");
$PersonalCollages = $DB->to_array(false, MYSQLI_NUM);
$Cache->cache_value("torrent_collages_personal_$GroupID", $PersonalCollages, 3600 * 6);
}
if (count($PersonalCollages) > 0) {
if (count($PersonalCollages) > MAX_PERS_COLLAGES) {
// Pick some at random
$Range = range(0, count($PersonalCollages) - 1);
shuffle($Range);
$Indices = array_slice($Range, 0, MAX_PERS_COLLAGES);
$SeeAll = '
(See all)';
} else {
$Indices = range(0, count($PersonalCollages) - 1);
$SeeAll = '';
} ?>
↑ This content is in =number_format(count($PersonalCollages))?> personal
collection=((count($PersonalCollages) > 1) ? 's' : '')?>=$SeeAll?>
|
# torrents |
=$CollageName?> |
=number_format($CollageTorrents)?>
|
=$CollageName?> |
=number_format($CollageTorrents)?>
|
↑ =(!empty($ReleaseType) ? $ReleaseTypes[$ReleaseType].' info' : 'Info')?>
↑
Mirrors (= count($Mirrors) ?>)
0) {
?>
Hide
query("
SELECT UserID
FROM torrents
WHERE GroupID = $GroupID");
if (in_array($LoggedUser['ID'], $DB->collect('UserID')) || check_perms('torrents_edit') || check_perms('screenshots_add') || check_perms('screenshots_delete')) {
?>
Add/Remove
Mirror links open in a new tab.';
} ?>
↑
Publications (= count($Screenshots) ?>)
0) {
?>
Hide
query("
SELECT UserID
FROM torrents
WHERE GroupID = $GroupID");
if (in_array($LoggedUser['ID'], $DB->collect('UserID')) || check_perms('torrents_edit') || check_perms('screenshots_add') || check_perms('screenshots_delete')) {
?>
Add/Remove
Sci-Hub links open in a new tab.';
} ?>
'.$Screenshot['Image'].'';
/* Image proxy integration
$SSURL = ImageTools::process($Screenshot['Image']);
$ThumbURL = ImageTools::process($Screenshot['Image'], 'thumb');
*/
/* todo: Bring this back
if (check_perms('users_mod')) {
?>
- =time_diff($Screenshot['Time'])?>' lightbox-img="=$SSURL?>" src="=$ThumbURL?>" />
} else {
?>
' lightbox-img="=$SSURL?>" src="=$ThumbURL?>" />
}
*/
}
?>