mirror of
https://github.com/WhatCD/Gazelle.git
synced 2024-12-13 10:56:26 +00:00
1109 lines
40 KiB
PHP
1109 lines
40 KiB
PHP
<?
|
|
|
|
include(SERVER_ROOT.'/classes/class_text.php'); // Text formatting class
|
|
$Text = new TEXT;
|
|
|
|
include(SERVER_ROOT.'/sections/requests/functions.php');
|
|
|
|
if (empty($_GET['id']) || !is_numeric($_GET['id'])) { error(0); }
|
|
$UserID = $_GET['id'];
|
|
|
|
|
|
|
|
if($UserID == $LoggedUser['ID']) {
|
|
$OwnProfile = true;
|
|
} else {
|
|
$OwnProfile = false;
|
|
}
|
|
|
|
if(check_perms('users_mod')) { // Person viewing is a staff member
|
|
$DB->query("SELECT
|
|
m.Username,
|
|
m.Email,
|
|
m.LastAccess,
|
|
m.IP,
|
|
p.Level AS Class,
|
|
m.Uploaded,
|
|
m.Downloaded,
|
|
m.RequiredRatio,
|
|
m.Title,
|
|
m.torrent_pass,
|
|
m.Enabled,
|
|
m.Paranoia,
|
|
m.Invites,
|
|
m.can_leech,
|
|
m.Visible,
|
|
i.JoinDate,
|
|
i.Info,
|
|
i.Avatar,
|
|
i.Country,
|
|
i.AdminComment,
|
|
i.Donor,
|
|
i.Artist,
|
|
i.Warned,
|
|
i.SupportFor,
|
|
i.RestrictedForums,
|
|
i.Inviter,
|
|
inviter.Username,
|
|
COUNT(posts.id) AS ForumPosts,
|
|
i.RatioWatchEnds,
|
|
i.RatioWatchDownload,
|
|
i.DisableAvatar,
|
|
i.DisableInvites,
|
|
i.DisablePosting,
|
|
i.DisableForums,
|
|
i.DisableTagging,
|
|
i.DisableUpload,
|
|
i.DisableWiki,
|
|
i.DisablePM,
|
|
i.DisableIRC,
|
|
i.DisableRequests,
|
|
i.HideCountryChanges
|
|
FROM users_main AS m
|
|
JOIN users_info AS i ON i.UserID = m.ID
|
|
LEFT JOIN users_main AS inviter ON i.Inviter = inviter.ID
|
|
LEFT JOIN permissions AS p ON p.ID=m.PermissionID
|
|
LEFT JOIN forums_posts AS posts ON posts.AuthorID = m.ID
|
|
WHERE m.ID = '".$UserID."' GROUP BY AuthorID");
|
|
|
|
if ($DB->record_count() == 0) { // If user doesn't exist
|
|
header("Location: log.php?search=User+".$UserID);
|
|
}
|
|
|
|
list($Username, $Email, $LastAccess, $IP, $Class, $Uploaded, $Downloaded, $RequiredRatio, $CustomTitle, $torrent_pass, $Enabled, $Paranoia, $Invites, $DisableLeech, $Visible, $JoinDate, $Info, $Avatar, $Country, $AdminComment, $Donor, $Artist, $Warned, $SupportFor, $RestrictedForums, $InviterID, $InviterName, $ForumPosts, $RatioWatchEnds, $RatioWatchDownload, $DisableAvatar, $DisableInvites, $DisablePosting, $DisableForums, $DisableTagging, $DisableUpload, $DisableWiki, $DisablePM, $DisableIRC, $DisableRequests, $DisableCountry) = $DB->next_record(MYSQLI_NUM, array(8,11));
|
|
} else { // Person viewing is a normal user
|
|
$DB->query("SELECT
|
|
m.Username,
|
|
m.Email,
|
|
m.LastAccess,
|
|
m.IP,
|
|
p.Level AS Class,
|
|
m.Uploaded,
|
|
m.Downloaded,
|
|
m.RequiredRatio,
|
|
m.Enabled,
|
|
m.Paranoia,
|
|
m.Invites,
|
|
m.Title,
|
|
m.torrent_pass,
|
|
m.can_leech,
|
|
i.JoinDate,
|
|
i.Info,
|
|
i.Avatar,
|
|
i.Country,
|
|
i.Donor,
|
|
i.Warned,
|
|
COUNT(posts.id) AS ForumPosts,
|
|
i.Inviter,
|
|
i.DisableInvites,
|
|
inviter.username
|
|
FROM users_main AS m
|
|
JOIN users_info AS i ON i.UserID = m.ID
|
|
LEFT JOIN permissions AS p ON p.ID=m.PermissionID
|
|
LEFT JOIN users_main AS inviter ON i.Inviter = inviter.ID
|
|
LEFT JOIN forums_posts AS posts ON posts.AuthorID = m.ID
|
|
WHERE m.ID = $UserID GROUP BY AuthorID");
|
|
|
|
if ($DB->record_count() == 0) { // If user doesn't exist
|
|
header("Location: log.php?search=User+".$UserID);
|
|
}
|
|
|
|
list($Username, $Email, $LastAccess, $IP, $Class, $Uploaded, $Downloaded, $RequiredRatio, $Enabled, $Paranoia, $Invites, $CustomTitle, $torrent_pass, $DisableLeech, $JoinDate, $Info, $Avatar, $Country, $Donor, $Warned, $ForumPosts, $InviterID, $DisableInvites, $InviterName, $RatioWatchEnds, $RatioWatchDownload) = $DB->next_record(MYSQLI_NUM, array(9,11));
|
|
}
|
|
|
|
$Paranoia = unserialize($Paranoia);
|
|
if(!is_array($Paranoia)) {
|
|
$Paranoia = array();
|
|
}
|
|
$ParanoiaLevel = 0;
|
|
foreach($Paranoia as $P) {
|
|
$ParanoiaLevel++;
|
|
if(strpos($P, '+')) {
|
|
$ParanoiaLevel++;
|
|
}
|
|
}
|
|
|
|
$JoinedDate = time_diff($JoinDate);
|
|
$LastAccess = time_diff($LastAccess);
|
|
|
|
function check_paranoia_here($Setting) {
|
|
global $Paranoia, $Class, $UserID;
|
|
return check_paranoia($Setting, $Paranoia, $Class, $UserID);
|
|
}
|
|
|
|
$Badges=($Donor) ? '<a href="donate.php"><img src="'.STATIC_SERVER.'common/symbols/donor.png" alt="Donor" /></a>' : '';
|
|
|
|
|
|
$Badges.=($Warned!='0000-00-00 00:00:00') ? '<img src="'.STATIC_SERVER.'common/symbols/warned.png" alt="Warned" />' : '';
|
|
$Badges.=($Enabled == '1' || $Enabled == '0' || !$Enabled) ? '': '<img src="'.STATIC_SERVER.'common/symbols/disabled.png" alt="Banned" />';
|
|
|
|
|
|
show_header($Username,'user,bbcode');
|
|
?>
|
|
<div class="thin">
|
|
<h2><?=$Username?></h2>
|
|
<div class="linkbox">
|
|
<? if (!$OwnProfile) { ?>
|
|
[<a href="inbox.php?action=compose&to=<?=$UserID?>">Send Message</a>]
|
|
<? $DB->query("SELECT FriendID FROM friends WHERE UserID='$LoggedUser[ID]' AND FriendID='$UserID'");
|
|
if($DB->record_count() == 0) { ?>
|
|
[<a href="friends.php?action=add&friendid=<?=$UserID?>&auth=<?=$LoggedUser['AuthKey']?>">Add to friends</a>]
|
|
<? }?>
|
|
[<a href="reports.php?action=report&type=user&id=<?=$UserID?>">Report User</a>]
|
|
<?
|
|
|
|
}
|
|
|
|
if (check_perms('users_edit_profiles', $Class)) {
|
|
?>
|
|
[<a href="user.php?action=edit&userid=<?=$UserID?>">Settings</a>]
|
|
<? }
|
|
if (check_perms('users_view_invites', $Class)) {
|
|
?>
|
|
[<a href="user.php?action=invite&userid=<?=$UserID?>">Invites</a>]
|
|
<? }
|
|
if (check_perms('admin_manage_permissions', $Class)) {
|
|
?>
|
|
[<a href="user.php?action=permissions&userid=<?=$UserID?>">Permissions</a>]
|
|
<? }
|
|
if (check_perms('users_logout', $Class) && check_perms('users_view_ips', $Class)) {
|
|
?>
|
|
[<a href="user.php?action=sessions&userid=<?=$UserID?>">Sessions</a>]
|
|
<? }
|
|
if (check_perms('admin_reports')) {
|
|
?>
|
|
[<a href="reportsv2.php?view=reporter&id=<?=$UserID?>">Reports</a>]
|
|
<? }
|
|
?>
|
|
</div>
|
|
|
|
<div class="sidebar">
|
|
<? if ($Avatar && empty($HeavyInfo['DisableAvatars'])) {
|
|
if(check_perms('site_proxy_images') && !empty($Avatar)) {
|
|
$Avatar = 'http://'.SITE_URL.'/image.php?c=1&avatar='.$UserID.'&i='.urlencode($Avatar);
|
|
}
|
|
?>
|
|
<div class="box">
|
|
<div class="head colhead_dark">Avatar</div>
|
|
<div align="center"><img src="<?=display_str($Avatar)?>" width="150" style="max-height:400px;" alt="<?=$Username?>'s avatar" /></div>
|
|
</div>
|
|
<? } ?>
|
|
<div class="box">
|
|
<div class="head colhead_dark">Stats</div>
|
|
<ul class="stats nobullet">
|
|
<li>Joined: <?=$JoinedDate?></li>
|
|
<? if (check_paranoia_here('lastseen')) { ?>
|
|
<li>Last Seen: <?=$LastAccess?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('uploaded')) { ?>
|
|
<li>Uploaded: <?=get_size($Uploaded)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('downloaded')) { ?>
|
|
<li>Downloaded: <?=get_size($Downloaded)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('ratio')) { ?>
|
|
<li>Ratio: <?=ratio($Uploaded, $Downloaded)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('requiredratio') && isset($RequiredRatio)) { ?>
|
|
<li>Required ratio: <?=number_format((double)$RequiredRatio, 2)?></li>
|
|
<? } ?>
|
|
</ul>
|
|
</div>
|
|
<?
|
|
|
|
if (check_paranoia_here('requestsfilled_count') || check_paranoia_here('requestsfilled_bounty')) {
|
|
$DB->query("SELECT COUNT(DISTINCT r.ID), SUM(rv.Bounty) FROM requests AS r LEFT JOIN requests_votes AS rv ON r.ID=rv.RequestID WHERE r.FillerID = ".$UserID);
|
|
list($RequestsFilled, $TotalBounty) = $DB->next_record();
|
|
$DB->query("SELECT COUNT(rv.RequestID), SUM(rv.Bounty) FROM requests_votes AS rv WHERE rv.UserID = ".$UserID);
|
|
list($RequestsVoted, $TotalSpent) = $DB->next_record();
|
|
|
|
$DB->query("SELECT COUNT(ID) FROM torrents WHERE UserID='$UserID'");
|
|
list($Uploads) = $DB->next_record();
|
|
} else {
|
|
$RequestsVoted = 0;
|
|
$TotalSpent = 0;
|
|
}
|
|
|
|
if(check_paranoia_here('uploads+')) {
|
|
$DB->query("SELECT COUNT(ID) FROM torrents WHERE UserID='$UserID'");
|
|
list($Uploads) = $DB->next_record();
|
|
} else {
|
|
$Uploads = 0;
|
|
}
|
|
|
|
if (check_paranoia_here('artistsadded')) {
|
|
$DB->query("SELECT COUNT(ta.ArtistID) FROM torrents_artists AS ta WHERE ta.UserID = ".$UserID);
|
|
list($ArtistsAdded) = $DB->next_record();
|
|
} else {
|
|
$ArtistsAdded = 0;
|
|
}
|
|
|
|
include(SERVER_ROOT.'/classes/class_user_rank.php');
|
|
$Rank = new USER_RANK;
|
|
|
|
$UploadedRank = $Rank->get_rank('uploaded', $Uploaded);
|
|
$DownloadedRank = $Rank->get_rank('downloaded', $Downloaded);
|
|
$UploadsRank = $Rank->get_rank('uploads', $Uploads);
|
|
$RequestRank = $Rank->get_rank('requests', $RequestsFilled);
|
|
$PostRank = $Rank->get_rank('posts', $ForumPosts);
|
|
$BountyRank = $Rank->get_rank('bounty', $TotalSpent);
|
|
$ArtistsRank = $Rank->get_rank('artists', $ArtistsAdded);
|
|
|
|
if($Downloaded == 0) {
|
|
$Ratio = 1;
|
|
} elseif($Uploaded == 0) {
|
|
$Ratio = 0.5;
|
|
} else {
|
|
$Ratio = round($Uploaded/$Downloaded, 2);
|
|
}
|
|
$OverallRank = $Rank->overall_score($UploadedRank, $DownloadedRank, $UploadsRank, $RequestRank, $PostRank, $BountyRank, $ArtistsRank, $Ratio);
|
|
|
|
?>
|
|
<div class="box">
|
|
<div class="head colhead_dark">Percentile Rankings (Hover for values)</div>
|
|
<ul class="stats nobullet">
|
|
<? if (check_paranoia_here('uploaded')) { ?>
|
|
<li title="<?=get_size($Uploaded)?>">Data uploaded: <?=number_format($UploadedRank)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('downloaded')) { ?>
|
|
<li title="<?=get_size($Downloaded)?>">Data downloaded: <?=number_format($DownloadedRank)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('uploads+')) { ?>
|
|
<li title="<?=$Uploads?>">Torrents uploaded: <?=number_format($UploadsRank)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('requestsfilled_count')) { ?>
|
|
<li title="<?=$RequestsFilled?>">Requests filled: <?=number_format($RequestRank)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('requestsvoted_bounty')) { ?>
|
|
<li title="<?=get_size($TotalSpent)?>">Bounty spent: <?=number_format($BountyRank)?></li>
|
|
<? } ?>
|
|
<li title="<?=$ForumPosts?>">Posts made: <?=number_format($PostRank)?></li>
|
|
<? if (check_paranoia_here('artistsadded')) { ?>
|
|
<li title="<?=$ArtistsAdded?>">Artists added: <?=number_format($ArtistsRank)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here(array('uploaded', 'downloaded', 'uploads+', 'requestsfilled_count', 'requestsvoted_bounty', 'artistsadded'))) { ?>
|
|
<li><strong>Overall rank: <?=number_format($OverallRank)?></strong></li>
|
|
<? } ?>
|
|
</ul>
|
|
</div>
|
|
<?
|
|
if (check_perms('users_mod', $Class) || check_perms('users_view_ips',$Class) || check_perms('users_view_keys',$Class)) {
|
|
$DB->query("SELECT COUNT(*) FROM users_history_passwords WHERE UserID='$UserID'");
|
|
list($PasswordChanges) = $DB->next_record();
|
|
if (check_perms('users_view_keys',$Class)) {
|
|
$DB->query("SELECT COUNT(*) FROM users_history_passkeys WHERE UserID='$UserID'");
|
|
list($PasskeyChanges) = $DB->next_record();
|
|
}
|
|
if (check_perms('users_view_ips',$Class)) {
|
|
$DB->query("SELECT COUNT(DISTINCT IP) FROM users_history_ips WHERE UserID='$UserID'");
|
|
list($IPChanges) = $DB->next_record();
|
|
$DB->query("SELECT COUNT(DISTINCT IP) FROM xbt_snatched WHERE uid='$UserID' AND IP != ''");
|
|
list($TrackerIPs) = $DB->next_record();
|
|
}
|
|
if (check_perms('users_view_email',$Class)) {
|
|
$DB->query("SELECT COUNT(*) FROM users_history_emails WHERE UserID='$UserID'");
|
|
list($EmailChanges) = $DB->next_record();
|
|
}
|
|
?>
|
|
<div class="box">
|
|
<div class="head colhead_dark">History</div>
|
|
<ul class="stats nobullet">
|
|
<? if (check_perms('users_view_email',$Class)) { ?>
|
|
<li>Emails: <?=number_format($EmailChanges)?> [<a href="userhistory.php?action=email2&userid=<?=$UserID?>">View</a>] [<a href="userhistory.php?action=email&userid=<?=$UserID?>">Legacy view</a>]</li>
|
|
<?
|
|
}
|
|
if (check_perms('users_view_ips',$Class)) {
|
|
?>
|
|
<li>IPs: <?=number_format($IPChanges)?> [<a href="userhistory.php?action=ips&userid=<?=$UserID?>">View</a>] [<a href="userhistory.php?action=ips&userid=<?=$UserID?>&usersonly=1">View Users</a>]</li>
|
|
<li>Tracker IPs: <?=number_format($TrackerIPs)?> [<a href="userhistory.php?action=tracker_ips&userid=<?=$UserID?>">View</a>]</li>
|
|
<?
|
|
}
|
|
if (check_perms('users_view_keys',$Class)) {
|
|
?>
|
|
<li>Passkeys: <?=number_format($PasskeyChanges)?> [<a href="userhistory.php?action=passkeys&userid=<?=$UserID?>">View</a>]</li>
|
|
<?
|
|
}
|
|
if (check_perms('users_mod', $Class)) {
|
|
?>
|
|
<li>Passwords: <?=number_format($PasswordChanges)?> [<a href="userhistory.php?action=passwords&userid=<?=$UserID?>">View</a>]</li>
|
|
<li>Stats: N/A [<a href="userhistory.php?action=stats&userid=<?=$UserID?>">View</a>]</li>
|
|
<?
|
|
|
|
}
|
|
?>
|
|
</ul>
|
|
</div>
|
|
<? } ?>
|
|
<div class="box">
|
|
<div class="head colhead_dark">Personal</div>
|
|
<ul class="stats nobullet">
|
|
<li>Class: <?=$ClassLevels[$Class]['Name']?></li>
|
|
<?
|
|
// An easy way for people to measure the paranoia of a user, for e.g. contest eligibility
|
|
if($ParanoiaLevel == 0) {
|
|
$ParanoiaLevelText = 'Off';
|
|
} elseif($ParanoiaLevel == 1) {
|
|
$ParanoiaLevelText = 'Very Low';
|
|
} elseif($ParanoiaLevel <= 5) {
|
|
$ParanoiaLevelText = 'Low';
|
|
} elseif($ParanoiaLevel <= 20) {
|
|
$ParanoiaLevelText = 'High';
|
|
} else {
|
|
$ParanoiaLevelText = 'Very high';
|
|
}
|
|
?>
|
|
<li>Paranoia level: <span title="<?=$ParanoiaLevel?>"><?=$ParanoiaLevelText?></span></li>
|
|
<? if (check_perms('users_view_email',$Class) || $OwnProfile) { ?>
|
|
<li>Email: <a href="mailto:<?=display_str($Email)?>"><?=display_str($Email)?></a>
|
|
<? if (check_perms('users_view_email',$Class)) { ?>
|
|
[<a href="user.php?action=search&email_history=on&email=<?=display_str($Email)?>" title="Search">S</a>]
|
|
<? } ?>
|
|
</li>
|
|
<? }
|
|
|
|
if (check_perms('users_view_ips',$Class)) {
|
|
?>
|
|
<li>IP: <?=display_str($IP)?> (<?=get_cc($IP)?>) [<a href="user.php?action=search&ip_history=on&ip=<?=display_str($IP)?>&matchtype=strict" title="Search">S</a>]</li>
|
|
<li>Host: <?=get_host($IP)?></li>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_view_keys',$Class) || $OwnProfile) {
|
|
?>
|
|
<li>Passkey: <?=display_str($torrent_pass)?>
|
|
<? }
|
|
if (check_perms('users_view_invites')) {
|
|
if (!$InviterID) {
|
|
$Invited="<i>Nobody</i>";
|
|
} else {
|
|
$Invited='<a href="user.php?id='.$InviterID.'">'.$InviterName.'</a>';
|
|
}
|
|
|
|
?>
|
|
<li>Invited By: <?=$Invited?></li>
|
|
<li>Invites: <?
|
|
$DB->query("SELECT count(InviterID) FROM invites WHERE InviterID = '$UserID'");
|
|
list($Pending) = $DB->next_record();
|
|
if($DisableInvites) {
|
|
echo 'X';
|
|
} else {
|
|
echo number_format($Invites);
|
|
}
|
|
echo " (".$Pending.")"
|
|
?></li>
|
|
<?
|
|
}
|
|
?>
|
|
</ul>
|
|
</div>
|
|
<?
|
|
// These stats used to be all together in one UNION'd query
|
|
// But we broke them up because they had a habit of locking each other to death.
|
|
// They all run really quickly anyways.
|
|
$DB->query("SELECT COUNT(x.uid), COUNT(DISTINCT x.fid) FROM xbt_snatched AS x INNER JOIN torrents AS t ON t.ID=x.fid WHERE x.uid='$UserID'");
|
|
list($Snatched, $UniqueSnatched) = $DB->next_record();
|
|
|
|
$DB->query("SELECT COUNT(ID) FROM torrents_comments WHERE AuthorID='$UserID'");
|
|
list($NumComments) = $DB->next_record();
|
|
|
|
$DB->query("SELECT COUNT(ID) FROM collages WHERE Deleted='0' AND UserID='$UserID'");
|
|
list($NumCollages) = $DB->next_record();
|
|
|
|
$DB->query("SELECT COUNT(DISTINCT CollageID) FROM collages_torrents AS ct JOIN collages ON CollageID = ID WHERE Deleted='0' AND ct.UserID='$UserID'");
|
|
list($NumCollageContribs) = $DB->next_record();
|
|
|
|
$DB->query("SELECT COUNT(DISTINCT GroupID) FROM torrents WHERE UserID = '$UserID'");
|
|
list($UniqueGroups) = $DB->next_record();
|
|
|
|
$DB->query("SELECT COUNT(ID) FROM torrents WHERE ((LogScore = 100 AND Format = 'FLAC') OR (Media = 'Vinyl' AND Format = 'FLAC') OR (Media = 'WEB' AND Format = 'FLAC') OR (Media = 'DVD' AND Format = 'FLAC') OR (Media = 'Soundboard' AND Format = 'FLAC') OR (Media = 'Cassette' AND Format = 'FLAC') OR (Media = 'SACD' AND Format = 'FLAC') OR (Media = 'Blu-ray' AND Format = 'FLAC') OR (Media = 'DAT' AND Format = 'FLAC')) AND UserID = '$UserID'");
|
|
list($PerfectFLACs) = $DB->next_record();
|
|
?>
|
|
<div class="box">
|
|
<div class="head colhead_dark">Community</div>
|
|
<ul class="stats nobullet">
|
|
<li>Forum Posts: <?=number_format($ForumPosts)?> [<a href="userhistory.php?action=posts&userid=<?=$UserID?>" title="View">View</a>]</li>
|
|
<? if (check_paranoia_here('torrentcomments')) { ?>
|
|
<li>Torrent Comments: <?=number_format($NumComments)?> [<a href="comments.php?id=<?=$UserID?>" title="View">View</a>]</li>
|
|
<? } elseif (check_paranoia_here('torrentcomments+')) { ?>
|
|
<li>Torrent Comments: <?=number_format($NumComments)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('collages')) { ?>
|
|
<li>Collages started: <?=number_format($NumCollages)?> [<a href="collages.php?userid=<?=$UserID?>" title="View">View</a>]</li>
|
|
<? } elseif (check_paranoia_here('collages+')) { ?>
|
|
<li>Collages started: <?=number_format($NumCollages)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('collagecontribs')) { ?>
|
|
<li>Collages contributed to: <?=number_format($NumCollageContribs)?> [<a href="collages.php?userid=<?=$UserID?>&contrib=1" title="View">View</a>]</li>
|
|
<? } elseif(check_paranoia_here('collagecontribs+')) { ?>
|
|
<li>Collages contributed to: <?=number_format($NumCollageContribs)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('requestsfilled_list')) { ?>
|
|
<li>Requests filled: <?=number_format($RequestsFilled)?> for <?=get_size($TotalBounty)?> [<a href="requests.php?type=filled&userid=<?=$UserID?>" title="View">View</a>]</li>
|
|
<? } elseif (check_paranoia_here(array('requestsfilled_count', 'requestsfilled_bounty'))) { ?>
|
|
<li>Requests filled: <?=number_format($RequestsFilled)?> for <?=get_size($TotalBounty)?></li>
|
|
<? } elseif (check_paranoia_here('requestsfilled_count')) { ?>
|
|
<li>Requests filled: <?=number_format($RequestsFilled)?></li>
|
|
<? } elseif (check_paranoia_here('requestsfilled_bounty')) { ?>
|
|
<li>Requests filled: <?=get_size($TotalBounty)?> collected</li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('requestsvoted_list')) { ?>
|
|
<li>Requests voted: <?=number_format($RequestsVoted)?> for <?=get_size($TotalSpent)?> [<a href="requests.php?type=voted&userid=<?=$UserID?>" title="View">View</a>]</li>
|
|
<? } elseif (check_paranoia_here(array('requestsvoted_count', 'requestsvoted_bounty'))) { ?>
|
|
<li>Requests voted: <?=number_format($RequestsVoted)?> for <?=get_size($TotalSpent)?></li>
|
|
<? } elseif (check_paranoia_here('requestsvoted_count')) { ?>
|
|
<li>Requests voted: <?=number_format($RequestsVoted)?></li>
|
|
<? } elseif (check_paranoia_here('requestsvoted_bounty')) { ?>
|
|
<li>Requests voted: <?=get_size($TotalSpent)?> spent</li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('uploads')) { ?>
|
|
<li>Uploaded: <?=number_format($Uploads)?> [<a href="torrents.php?type=uploaded&userid=<?=$UserID?>" title="View">View</a>]<? if(check_perms('zip_downloader')) { ?> [<a href="torrents.php?action=redownload&type=uploads&userid=<?=$UserID?>" onclick="return confirm('If you no longer have the content, your ratio WILL be affected, be sure to check the size of all albums before redownloading.');">Download</a>]<? } ?></li>
|
|
<? } elseif (check_paranoia_here('uploads+')) { ?>
|
|
<li>Uploaded: <?=number_format($Uploads)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('uniquegroups')) { ?>
|
|
<li>Unique Groups: <?=number_format($UniqueGroups)?> [<a href="torrents.php?type=uploaded&userid=<?=$UserID?>&filter=uniquegroup">View</a>]</li>
|
|
<? } elseif (check_paranoia_here('uniquegroups+')) { ?>
|
|
<li>Unique Groups: <?=number_format($UniqueGroups)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('perfectflacs')) { ?>
|
|
<li>"Perfect" FLACs: <?=number_format($PerfectFLACs)?> [<a href="torrents.php?type=uploaded&userid=<?=$UserID?>&filter=perfectflac">View</a>]</li>
|
|
<? } elseif (check_paranoia_here('perfectflacs+')) { ?>
|
|
<li>"Perfect" FLACs: <?=number_format($PerfectFLACs)?></li>
|
|
<? } ?>
|
|
<?
|
|
|
|
if (check_paranoia_here('seeding+')) {
|
|
$DB->query("SELECT COUNT(x.uid) FROM xbt_files_users AS x INNER JOIN torrents AS t ON t.ID=x.fid WHERE x.uid='$UserID' AND x.remaining=0");
|
|
list($Seeding) = $DB->next_record();
|
|
}
|
|
if (check_paranoia_here('leeching+')) {
|
|
$DB->query("SELECT COUNT(x.uid) FROM xbt_files_users AS x INNER JOIN torrents AS t ON t.ID=x.fid WHERE x.uid='$UserID' AND x.remaining>0");
|
|
list($Leeching) = $DB->next_record();
|
|
}
|
|
?>
|
|
<? if (check_paranoia_here('seeding')) { ?>
|
|
<li>Seeding: <?=number_format($Seeding)?> [<a href="torrents.php?type=seeding&userid=<?=$UserID?>" title="View">View</a>]<? if (check_perms('zip_downloader')) { ?> [<a href="torrents.php?action=redownload&type=seeding&userid=<?=$UserID?>" onclick="return confirm('If you no longer have the content, your ratio WILL be affected, be sure to check the size of all albums before redownloading.');">Download</a>]<? } ?></li>
|
|
<? } elseif (check_paranoia_here('seeding+')) { ?>
|
|
<li>Seeding: <?=number_format($Seeding)?></li>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('leeching')) { ?>
|
|
<li>Leeching: <?=number_format($Leeching)?> [<a href="torrents.php?type=leeching&userid=<?=$UserID?>" title="View">View</a>]<?=($DisableLeech == 0 && check_perms('users_view_ips')) ? "<strong> (Disabled)</strong>" : ""?></li>
|
|
<? } elseif (check_paranoia_here('leeching+')) { ?>
|
|
<li>Leeching: <?=number_format($Leeching)?></li>
|
|
<? }
|
|
?>
|
|
<? if (check_paranoia_here('snatched+')) { ?>
|
|
<li>Snatched: <?=number_format($Snatched)?>
|
|
<? if(check_perms('site_view_torrent_snatchlist', $Class)) { ?>
|
|
(<?=number_format($UniqueSnatched)?>)
|
|
<? } ?>
|
|
<? } ?>
|
|
<? if (check_paranoia_here('snatched')) { ?>
|
|
[<a href="torrents.php?type=snatched&userid=<?=$UserID?>" title="View">View</a>]<? if(check_perms('zip_downloader')) { ?> [<a href="torrents.php?action=redownload&type=snatches&userid=<?=$UserID?>" onclick="return confirm('If you no longer have the content, your ratio WILL be affected, be sure to check the size of all albums before redownloading.');">Download</a>]<? } ?>
|
|
</li>
|
|
<? }
|
|
|
|
if(check_perms('site_view_torrent_snatchlist', $Class)) {
|
|
$DB->query("SELECT COUNT(ud.UserID), COUNT(DISTINCT ud.TorrentID) FROM users_downloads AS ud INNER JOIN torrents AS t ON t.ID=ud.TorrentID WHERE ud.UserID='$UserID'");
|
|
list($NumDownloads, $UniqueDownloads) = $DB->next_record();
|
|
?>
|
|
<li>Downloaded: <?=number_format($NumDownloads)?> (<?=number_format($UniqueDownloads)?>) [<a href="torrents.php?type=downloaded&userid=<?=$UserID?>" title="View">View</a>]</li>
|
|
<?
|
|
}
|
|
|
|
if(check_paranoia_here('invitedcount')) {
|
|
$DB->query("SELECT COUNT(UserID) FROM users_info WHERE Inviter='$UserID'");
|
|
list($Invited) = $DB->next_record();
|
|
?>
|
|
<li>Invited: <?=number_format($Invited)?></li>
|
|
<? } ?>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
<div class="main_column">
|
|
<?
|
|
if ($RatioWatchEnds!='0000-00-00 00:00:00'
|
|
&& (time() < strtotime($RatioWatchEnds))
|
|
&& ($Downloaded*$RequiredRatio)>$Uploaded
|
|
) {
|
|
?>
|
|
<div class="box">
|
|
<div class="head">Ratio watch</div>
|
|
<div class="pad">This user is currently on ratio watch, and must upload <?=get_size(($Downloaded*$RequiredRatio)-$Uploaded)?> in the next <?=time_diff($RatioWatchEnds)?>, or their leeching privileges will be revoked. Amount downloaded while on ratio watch: <?=get_size($Downloaded-$RatioWatchDownload)?></div>
|
|
</div>
|
|
<? } ?>
|
|
<div class="box">
|
|
<div class="head">
|
|
<span style="float:left;">Profile<? if ($CustomTitle) { echo " - ".html_entity_decode($CustomTitle); } ?></span>
|
|
<span style="float:right;"><?=$Badges?></span>
|
|
</div>
|
|
<div class="pad">
|
|
<? if (!$Info) { ?>
|
|
This profile is currently empty.
|
|
<?
|
|
} else {
|
|
echo $Text->full_format($Info);
|
|
}
|
|
|
|
?>
|
|
</div>
|
|
</div>
|
|
<?
|
|
if ($Snatched > 4 && check_paranoia_here('snatched')) {
|
|
$RecentSnatches = $Cache->get_value('recent_snatches_'.$UserID);
|
|
if(!is_array($RecentSnatches)){
|
|
$DB->query("SELECT
|
|
g.ID,
|
|
g.Name,
|
|
g.WikiImage
|
|
FROM xbt_snatched AS s
|
|
INNER JOIN torrents AS t ON t.ID=s.fid
|
|
INNER JOIN torrents_group AS g ON t.GroupID=g.ID
|
|
WHERE s.uid='$UserID'
|
|
AND g.CategoryID='1'
|
|
AND g.WikiImage <> ''
|
|
GROUP BY g.ID
|
|
ORDER BY s.tstamp DESC
|
|
LIMIT 5");
|
|
$RecentSnatches = $DB->to_array();
|
|
|
|
$Artists = get_artists($DB->collect('ID'));
|
|
foreach($RecentSnatches as $Key => $SnatchInfo) {
|
|
$RecentSnatches[$Key]['Artist'] = display_artists($Artists[$SnatchInfo['ID']], false, true);
|
|
}
|
|
$Cache->cache_value('recent_snatches_'.$UserID, $RecentSnatches, 0); //inf cache
|
|
}
|
|
?>
|
|
<table class="recent" cellpadding="0" cellspacing="0" border="0">
|
|
<tr class="colhead">
|
|
<td colspan="5">Recent Snatches</td>
|
|
<tr>
|
|
<tr>
|
|
<?
|
|
foreach($RecentSnatches as $RS) { ?>
|
|
<td>
|
|
<a href="torrents.php?id=<?=$RS['ID']?>" title="<?=$RS['Artist']?><?=$RS['Name']?>"><img src="<?=$RS['WikiImage']?>" alt="<?=$RS['Artist']?><?=$RS['Name']?>" width="107" /></a>
|
|
</td>
|
|
<? } ?>
|
|
</tr>
|
|
</table>
|
|
<?
|
|
}
|
|
|
|
if(!isset($Uploads)) { $Uploads = 0; }
|
|
if ($Uploads > 4 && check_paranoia_here('uploads')) {
|
|
$RecentUploads = $Cache->get_value('recent_uploads_'.$UserID);
|
|
if(!is_array($RecentUploads)){
|
|
$DB->query("SELECT
|
|
g.ID,
|
|
g.Name,
|
|
g.WikiImage
|
|
FROM torrents_group AS g
|
|
INNER JOIN torrents AS t ON t.GroupID=g.ID
|
|
WHERE t.UserID='$UserID'
|
|
AND g.CategoryID='1'
|
|
AND g.WikiImage <> ''
|
|
GROUP BY g.ID
|
|
ORDER BY t.Time DESC
|
|
LIMIT 5");
|
|
$RecentUploads = $DB->to_array();
|
|
$Artists = get_artists($DB->collect('ID'));
|
|
foreach($RecentUploads as $Key => $UploadInfo) {
|
|
$RecentUploads[$Key]['Artist'] = display_artists($Artists[$UploadInfo['ID']], false, true);
|
|
}
|
|
$Cache->cache_value('recent_uploads_'.$UserID, $RecentUploads, 0); //inf cache
|
|
}
|
|
?>
|
|
<table class="recent" cellpadding="0" cellspacing="0" border="0">
|
|
<tr class="colhead">
|
|
<td colspan="5">Recent Uploads</td>
|
|
<tr>
|
|
<? foreach($RecentUploads as $RU) { ?>
|
|
<td>
|
|
<a href="torrents.php?id=<?=$RU['ID']?>" title="<?=$RU['Artist']?><?=$RU['Name']?>"><img src="<?=$RU['WikiImage']?>" alt="<?=$RU['Artist']?><?=$RU['Name']?>" width="107" /></a>
|
|
</td>
|
|
<? } ?>
|
|
</tr>
|
|
</table>
|
|
<?
|
|
}
|
|
|
|
$DB->query("SELECT ID, Name FROM collages WHERE UserID='$UserID' AND CategoryID='0' AND Deleted='0'");
|
|
list($CollageID, $Name) = $DB->next_record();
|
|
if($CollageID) {
|
|
$DB->query("SELECT ct.GroupID,
|
|
tg.WikiImage,
|
|
tg.CategoryID
|
|
FROM collages_torrents AS ct
|
|
JOIN torrents_group AS tg ON tg.ID=ct.GroupID
|
|
WHERE ct.CollageID='$CollageID'
|
|
ORDER BY ct.Sort LIMIT 5");
|
|
$Collage = $DB->to_array();
|
|
|
|
?>
|
|
<table class="recent" cellpadding="0" cellspacing="0" border="0">
|
|
<tr class="colhead">
|
|
<td colspan="5"><?=display_str($Name)?> - <a href="collages.php?id=<?=$CollageID?>">see full</a></td>
|
|
<tr>
|
|
<? foreach($Collage as $C) {
|
|
$Group = get_groups(array($C['GroupID']));
|
|
$Group = array_pop($Group['matches']);
|
|
list($GroupID, $GroupName, $GroupYear, $GroupRecordLabel, $GroupCatalogueNumber, $TagList, $ReleaseType, $Torrents, $GroupArtists) = array_values($Group);
|
|
|
|
$Name = '';
|
|
$Name .= display_artists(array('1'=>$GroupArtists), false, true);
|
|
$Name .= $GroupName;
|
|
?>
|
|
<td>
|
|
<a href="torrents.php?id=<?=$GroupID?>" title="<?=$Name?>"><img src="<?=$C['WikiImage']?>" alt="<?=$Name?>" width="107" /></a>
|
|
</td>
|
|
<? } ?>
|
|
</tr>
|
|
</table>
|
|
<?
|
|
}
|
|
|
|
|
|
if ((check_perms('users_view_invites')) && $Invited > 0) {
|
|
include(SERVER_ROOT.'/classes/class_invite_tree.php');
|
|
$Tree = new INVITE_TREE($UserID, array('visible'=>false));
|
|
?>
|
|
<div class="box">
|
|
<div class="head">Invite Tree <a href="#" onclick="$('#invitetree').toggle();return false;">(View)</a></div>
|
|
<div id="invitetree" class="hidden">
|
|
<? $Tree->make_tree(); ?>
|
|
</div>
|
|
</div>
|
|
<?
|
|
}
|
|
|
|
// Requests
|
|
if (check_paranoia_here('requestsvoted_list')) {
|
|
$DB->query("SELECT
|
|
r.ID,
|
|
r.CategoryID,
|
|
r.Title,
|
|
r.Year,
|
|
r.TimeAdded,
|
|
COUNT(rv.UserID) AS Votes,
|
|
SUM(rv.Bounty) AS Bounty
|
|
FROM requests AS r
|
|
LEFT JOIN users_main AS u ON u.ID=UserID
|
|
LEFT JOIN requests_votes AS rv ON rv.RequestID=r.ID
|
|
WHERE r.UserID = ".$UserID."
|
|
AND r.TorrentID = 0
|
|
GROUP BY r.ID
|
|
ORDER BY Votes DESC");
|
|
|
|
if($DB->record_count() > 0) {
|
|
$Requests = $DB->to_array();
|
|
?>
|
|
<div class="box">
|
|
<div class="head">Requests <a href="#" onclick="$('#requests').toggle();return false;">(View)</a></div>
|
|
<div id="requests" class="hidden">
|
|
<table cellpadding="6" cellspacing="1" border="0" class="border" width="100%">
|
|
<tr class="colhead_dark">
|
|
<td style="width:48%;">
|
|
<strong>Request Name</strong>
|
|
</td>
|
|
<td>
|
|
<strong>Vote</strong>
|
|
</td>
|
|
<td>
|
|
<strong>Bounty</strong>
|
|
</td>
|
|
<td>
|
|
<strong>Added</strong>
|
|
</td>
|
|
</tr>
|
|
<?
|
|
foreach($Requests as $Request) {
|
|
list($RequestID, $CategoryID, $Title, $Year, $TimeAdded, $Votes, $Bounty) = $Request;
|
|
|
|
$Request = get_requests(array($RequestID));
|
|
$Request = $Request['matches'][$RequestID];
|
|
if(empty($Request)) {
|
|
continue;
|
|
}
|
|
|
|
list($RequestID, $RequestorID, $RequestorName, $TimeAdded, $LastVote, $CategoryID, $Title, $Year, $Image, $Description, $CatalogueNumber, $ReleaseType,
|
|
$BitrateList, $FormatList, $MediaList, $LogCue, $FillerID, $FillerName, $TorrentID, $TimeFilled) = $Request;
|
|
|
|
$CategoryName = $Categories[$CategoryID - 1];
|
|
|
|
if($CategoryName == "Music") {
|
|
$ArtistForm = get_request_artists($RequestID);
|
|
$ArtistLink = display_artists($ArtistForm, true, true);
|
|
$FullName = $ArtistLink."<a href='requests.php?action=view&id=".$RequestID."'>".$Title." [".$Year."]</a>";
|
|
} else if($CategoryName == "Audiobooks" || $CategoryName == "Comedy") {
|
|
$FullName = "<a href='requests.php?action=view&id=".$RequestID."'>".$Title." [".$Year."]</a>";
|
|
} else {
|
|
$FullName ="<a href='requests.php?action=view&id=".$RequestID."'>".$Title."</a>";
|
|
}
|
|
|
|
$Row = (empty($Row) || $Row == 'a') ? 'b' : 'a';
|
|
?>
|
|
<tr class="row<?=$Row?>">
|
|
<td>
|
|
<?=$FullName?>
|
|
<div class="tags">
|
|
<?
|
|
$Tags = $Request['Tags'];
|
|
$TagList = array();
|
|
foreach($Tags as $TagID => $TagName) {
|
|
$TagList[] = "<a href='requests.php?tag=".$TagID."'>".display_str($TagName)."</a>";
|
|
}
|
|
$TagList = implode(', ', $TagList);
|
|
?>
|
|
<?=$TagList?>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<?=$Votes?>
|
|
<? if(check_perms('site_vote')){ ?>
|
|
<input type="hidden" id="auth" name="auth" value="<?=$LoggedUser['AuthKey']?>" />
|
|
<a href="javascript:Vote(20971520)"><strong>(+)</strong></a>
|
|
<? } ?>
|
|
</td>
|
|
<td>
|
|
<?=get_size($Bounty)?>
|
|
</td>
|
|
<td>
|
|
<?=time_diff($TimeAdded)?>
|
|
</td>
|
|
</tr>
|
|
<? } ?>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<?
|
|
}
|
|
}
|
|
?>
|
|
<br />
|
|
<? if (check_perms('users_mod', $Class)) { ?>
|
|
<form id="form" action="user.php" method="post">
|
|
<input type="hidden" name="action" value="moderate" />
|
|
<input type="hidden" name="userid" value="<?=$UserID?>" />
|
|
<input type="hidden" name="auth" value="<?=$LoggedUser['AuthKey']?>" />
|
|
|
|
<div class="box">
|
|
<div class="head">Staff Notes <a href="#" name="admincommentbutton" onclick="ChangeTo('text'); return false;">(Edit)</a></div>
|
|
<div class="pad">
|
|
<div id="admincommentlinks" class="AdminComment box" style="width:98%;"><?=$Text->full_format($AdminComment)?></div>
|
|
<textarea id="admincomment" onkeyup="resize('admincomment');" class="AdminComment hidden" name="AdminComment" cols="65" rows="26" style="width:98%;"><?=display_str($AdminComment)?></textarea>
|
|
<a href="#" name="admincommentbutton" onclick="ChangeTo('text'); return false;">Toggle Edit</a>
|
|
<script type="text/javascript">
|
|
resize('admincomment');
|
|
</script>
|
|
</div>
|
|
</div>
|
|
|
|
<table>
|
|
<tr>
|
|
<td class="colhead" colspan="2">User Info</td>
|
|
</tr>
|
|
<? if (check_perms('users_edit_usernames', $Class)) { ?>
|
|
<tr>
|
|
<td class="label">Username:</td>
|
|
<td><input type="text" size="20" name="Username" value="<?=display_str($Username)?>" /></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_edit_titles')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">CustomTitle:</td>
|
|
<td><input type="text" size="50" name="Title" value="<?=display_str($CustomTitle)?>" /></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_promote_below', $Class) || check_perms('users_promote_to', $Class-1)) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Class:</td>
|
|
<td>
|
|
<select name="Class">
|
|
<?
|
|
foreach ($ClassLevels as $CurClass) {
|
|
if (check_perms('users_promote_below', $Class) && $CurClass['ID']>=$LoggedUser['Class']) { break; }
|
|
if ($CurClass['ID']>$LoggedUser['Class']) { break; }
|
|
if ($Class===$CurClass['Level']) { $Selected='selected="selected"'; } else { $Selected=""; }
|
|
?>
|
|
<option value="<?=$CurClass['ID']?>" <?=$Selected?>><?=$CurClass['Name'].' ('.$CurClass['Level'].')'?></option>
|
|
<? } ?>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_give_donor')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Donor:</td>
|
|
<td><input type="checkbox" name="Donor" <? if ($Donor == 1) { ?>checked="checked" <? } ?> /></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
if (check_perms('users_promote_below') || check_perms('users_promote_to')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Artist:</td>
|
|
<td><input type="checkbox" name="Artist" <? if ($Artist == 1) { ?>checked="checked" <? } ?> /></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
if (check_perms('users_make_invisible')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Visible:</td>
|
|
<td><input type="checkbox" name="Visible" <? if ($Visible == 1) { ?>checked="checked" <? } ?> /></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_edit_ratio',$Class) || (check_perms('users_edit_own_ratio') && $UserID == $LoggedUser['ID'])) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Uploaded:</td>
|
|
<td>
|
|
<input type="hidden" name="OldUploaded" value="<?=$Uploaded?>" />
|
|
<input type="text" size="20" name="Uploaded" value="<?=$Uploaded?>" />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label">Downloaded:</td>
|
|
<td>
|
|
<input type="hidden" name="OldDownloaded" value="<?=$Downloaded?>" />
|
|
<input type="text" size="20" name="Downloaded" value="<?=$Downloaded?>" />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label">Merge Stats <strong>From:</strong></td>
|
|
<td>
|
|
<input type="text" size="40" name="MergeStatsFrom" />
|
|
</td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_edit_invites')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Invites:</td>
|
|
<td><input type="text" size="5" name="Invites" value="<?=$Invites?>" /></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('admin_manage_fls') || (check_perms('users_mod') && $OwnProfile)) {
|
|
?>
|
|
<tr>
|
|
<td class="label">First Line Support:</td>
|
|
<td><input type="text" size="50" name="SupportFor" value="<?=display_str($SupportFor)?>" /></td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_edit_reset_keys')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Reset:</td>
|
|
<td>
|
|
<input type="checkbox" name="ResetRatioWatch" id="ResetRatioWatch" /> <label for="ResetRatioWatch">Ratio Watch</label> |
|
|
<input type="checkbox" name="ResetPasskey" id="ResetPasskey" /> <label for="ResetPasskey">Passkey</label> |
|
|
<input type="checkbox" name="ResetAuthkey" id="ResetAuthkey" /> <label for="ResetAuthkey">Authkey</label> |
|
|
<input type="checkbox" name="ResetIPHistory" id="ResetIPHistory" /> <label for="ResetIPHistory">IP History</label> |
|
|
<input type="checkbox" name="ResetEmailHistory" id="ResetEmailHistory" /> <label for="ResetEmailHistory">Email History</label>
|
|
<br />
|
|
<input type="checkbox" name="ResetSnatchList" id="ResetSnatchList" /> <label for="ResetSnatchList">Snatch List</label> |
|
|
<input type="checkbox" name="ResetDownloadList" id="ResetDownloadList" /> <label for="ResetDownloadList">Download List</label>
|
|
</td>
|
|
</tr>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_mod')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Reset all EAC v0.95 Logs To:</td>
|
|
<td>
|
|
<select name="095logs">
|
|
<option value=""></option>
|
|
<option value="99">99</option>
|
|
<option value="100">100</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<? }
|
|
|
|
if (check_perms('users_edit_password')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">New Password:</td>
|
|
<td>
|
|
<input type="text" size="30" id="change_password" name="ChangePassword" />
|
|
</td>
|
|
</tr>
|
|
<? } ?>
|
|
</table><br />
|
|
|
|
<? if (check_perms('users_warn')) { ?>
|
|
<table>
|
|
<tr class="colhead">
|
|
<td colspan="2">Warn User</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label">Warned:</td>
|
|
<td>
|
|
<input type="checkbox" name="Warned" <? if ($Warned != '0000-00-00 00:00:00') { ?>checked="checked"<? } ?> />
|
|
</td>
|
|
</tr>
|
|
<? if ($Warned=='0000-00-00 00:00:00') { // user is not warned ?>
|
|
<tr>
|
|
<td class="label">Expiration:</td>
|
|
<td>
|
|
<select name="WarnLength">
|
|
<option value="">---</option>
|
|
<option value="1"> 1 Week</option>
|
|
<option value="2"> 2 Weeks</option>
|
|
<option value="4"> 4 Weeks</option>
|
|
<option value="8"> 8 Weeks</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<? } else { // user is warned ?>
|
|
<tr>
|
|
<td class="label">Extension:</td>
|
|
<td>
|
|
<select name="ExtendWarning">
|
|
<option>---</option>
|
|
<option value="1"> 1 Week</option>
|
|
<option value="2"> 2 Weeks</option>
|
|
<option value="4"> 4 Weeks</option>
|
|
<option value="8"> 8 Weeks</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<? } ?>
|
|
<tr>
|
|
<td class="label">Reason:</td>
|
|
<td>
|
|
<input type="text" size="60" name="WarnReason" />
|
|
</td>
|
|
</tr>
|
|
<? } ?>
|
|
</table><br />
|
|
<table>
|
|
<tr class="colhead"><td colspan="2">User Privileges</td></tr>
|
|
<? if (check_perms('users_disable_posts') || check_perms('users_disable_any')) {
|
|
$DB->query("SELECT DISTINCT Email, IP FROM users_history_emails WHERE UserID = ".$UserID." ORDER BY Time ASC");
|
|
$Emails = $DB->to_array();
|
|
?>
|
|
<tr>
|
|
<td class="label">Disable:</td>
|
|
<td>
|
|
<input type="checkbox" name="DisableAvatar" id="DisableAvatar"<? if ($DisableAvatar==1) { ?>checked="checked"<? } ?> /> <label for="DisableAvatar">Avatar</label>
|
|
<? if (check_perms('users_disable_any')) { ?> |
|
|
<input type="checkbox" name="DisableInvites" id="DisableInvites"<? if ($DisableInvites==1) { ?>checked="checked"<? } ?> /> <label for="DisableInvites">Invites</label> |
|
|
<input type="checkbox" name="DisablePosting" id="DisablePosting"<? if ($DisablePosting==1) { ?>checked="checked"<? } ?> /> <label for="DisablePosting">Posting</label> |
|
|
<input type="checkbox" name="DisableForums" id="DisableForums"<? if ($DisableForums==1) { ?>checked="checked"<? } ?> /> <label for="DisableForums">Forums</label> |
|
|
<input type="checkbox" name="DisableTagging" id="DisableTagging"<? if ($DisableTagging==1) { ?>checked="checked"<? } ?> /> <label for="DisableTagging">Tagging</label> |
|
|
<input type="checkbox" name="DisableRequests" id="DisableRequests"<? if ($DisableRequests==1) { ?>checked="checked"<? } ?> /> <label for="DisableRequests">Requests</label>
|
|
<br />
|
|
<input type="checkbox" name="DisableUpload" id="DisableUpload"<? if ($DisableUpload==1) { ?>checked="checked"<? } ?> /> <label for="DisableUpload">Upload</label> |
|
|
<input type="checkbox" name="DisableWiki" id="DisableWiki"<? if ($DisableWiki==1) { ?>checked="checked"<? } ?> /> <label for="DisableWiki">Wiki</label> |
|
|
<input type="checkbox" name="DisableLeech" id="DisableLeech"<? if ($DisableLeech==0) { ?>checked="checked"<? } ?> /><label for="DisableLeech">Leech</label> |
|
|
<input type="checkbox" name="DisablePM" id="DisablePM"<? if ($DisablePM==1) { ?>checked="checked"<? } ?> /><label for="DisablePM">PM</label> |
|
|
<input type="checkbox" name="DisableIRC" id="DisableIRC"<? if ($DisableIRC==1) { ?>checked="checked"<? } ?> /><label for="DisableIRC">IRC</label>
|
|
<??>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label">Hacked:</td>
|
|
<td>
|
|
<input type="checkbox" name="SendHackedMail" id="SendHackedMail" /> <label for="SendHackedMail">Send hacked account email</label> to
|
|
<select name="HackedEmail">
|
|
<?
|
|
foreach($Emails as $Email) {
|
|
list($Address, $IP) = $Email;
|
|
?>
|
|
<option value="<?=display_str($Address)?>"><?=display_str($Address)?> - <?=display_str($IP)?></option>
|
|
<? } ?>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<? } ?>
|
|
<?
|
|
}
|
|
|
|
if (check_perms('users_disable_any')) {
|
|
?>
|
|
<tr>
|
|
<td class="label">Account:</td>
|
|
<td>
|
|
<select name="UserStatus">
|
|
<option value="0" <? if ($Enabled==0) { ?>selected="selected"<? } ?>>Unconfirmed</option>
|
|
<option value="1" <? if ($Enabled==1) { ?>selected="selected"<? } ?>>Enabled</option>
|
|
<option value="2" <? if ($Enabled==2) { ?>selected="selected"<? } ?>>Disabled</option>
|
|
<? if (check_perms('users_delete_users')) { ?>
|
|
<optgroup label="-- WARNING --"></optgroup>
|
|
<option value="delete">Delete Account</option>
|
|
<? } ?>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label">User Reason:</td>
|
|
<td>
|
|
<input type="text" size="60" name="UserReason" />
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label">Restricted Forums (comma-delimited):</td>
|
|
<td>
|
|
<input type="text" size="60" name="RestrictedForums" value="<?=display_str($RestrictedForums)?>" />
|
|
</td>
|
|
</tr>
|
|
|
|
<? } ?>
|
|
</table><br />
|
|
<? if(check_perms('users_logout')) { ?>
|
|
<table>
|
|
<tr class="colhead"><td colspan="2">Session</td></tr>
|
|
<tr>
|
|
<td class="label">Reset session:</td>
|
|
<td><input type="checkbox" name="ResetSession" id="ResetSession" /></td>
|
|
</tr>
|
|
<tr>
|
|
<td class="label">Log out:</td>
|
|
<td><input type="checkbox" name="LogOut" id="LogOut" /></td>
|
|
</tr>
|
|
|
|
</table>
|
|
<? } ?>
|
|
<table>
|
|
<tr class="colhead"><td colspan="2">Submit</td></tr>
|
|
<tr>
|
|
<td class="label">Reason:</td>
|
|
<td>
|
|
<textarea rows="1" cols="50" name="Reason" id="Reason" onkeyup="resize('Reason');"></textarea>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td align="right" colspan="2">
|
|
<input type="submit" value="Save Changes" />
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</form>
|
|
<? } ?>
|
|
</div>
|
|
</div>
|
|
<? show_footer(); ?>
|