mirror of
https://github.com/WhatCD/Gazelle.git
synced 2025-01-31 02:21:36 +00:00
Empty commit
This commit is contained in:
parent
e95f99a496
commit
0b0c229b4a
@ -1,17 +1,17 @@
|
|||||||
INSTALLATION NOTES
|
INSTALLATION NOTES
|
||||||
1. Set up MySQL and memcached. We run memcached with the command:
|
1. Set up MySQL and memcached. We run memcached with the command:
|
||||||
memcached -d -m 5120 -s /var/run/memcached.sock -a 0777 -t16 -C -u root
|
memcached -d -m 5120 -s /var/run/memcached.sock -a 0777 -t16 -C -u root
|
||||||
This gives it 5 gigs of RAM, you probably want to set that a bit lower!
|
This gives it 5 gigs of RAM; you probably want to set that a bit lower!
|
||||||
2. Run gazelle.sql (preferably as root) to create the database, the table, and the default data.
|
2. Run gazelle.sql (preferably as root) to create the database, the table, and the default data.
|
||||||
3. Install sphinx - we recommend you use the included sphinx.conf
|
3. Install sphinx - we recommend you use the included sphinx.conf
|
||||||
For documentation, read http://www.sphinxsearch.com/docs/current.html
|
For documentation, read http://www.sphinxsearch.com/docs/current.html
|
||||||
|
|
||||||
After you've installed, create the indices:
|
After you've installed sphinx, create the indices:
|
||||||
/usr/local/bin/indexer -c /etc/sphinx/sphinx.conf --all
|
/usr/local/bin/indexer -c /etc/sphinx/sphinx.conf --all
|
||||||
|
|
||||||
4. Move classes/config.template to classes/config.php. Edit the config.php as needed.
|
4. Move classes/config.template to classes/config.php. Edit the config.php as needed.
|
||||||
We use http://grc.com/passwords.html for our passwords - you'll be generating a lot of these.
|
We use http://grc.com/passwords.html for our passwords - you'll be generating a lot of these.
|
||||||
5. Sign up. The first user is made a sysop!
|
5. Sign up. The first user is made a SysOp!
|
||||||
6. Set up cron jobs. You need a cron job for the schedule, a cron job for
|
6. Set up cron jobs. You need a cron job for the schedule, a cron job for
|
||||||
the peerupdate (all groups are cached, but the peer counts change often,
|
the peerupdate (all groups are cached, but the peer counts change often,
|
||||||
so peerupdate is a script to update them), and the two sphinx indices.
|
so peerupdate is a script to update them), and the two sphinx indices.
|
||||||
@ -23,7 +23,7 @@ These are our cron jobs:
|
|||||||
5 0,12 * * * /usr/local/bin/indexer -c /etc/sphinx/sphinx.conf --rotate --all
|
5 0,12 * * * /usr/local/bin/indexer -c /etc/sphinx/sphinx.conf --rotate --all
|
||||||
|
|
||||||
7. You're probably going to want geoip information, so first you need to fill in the geoip_country tables by visiting /tools.php?action=update_geoip .
|
7. You're probably going to want geoip information, so first you need to fill in the geoip_country tables by visiting /tools.php?action=update_geoip .
|
||||||
After that finishes parsing information from maxmind, you'll may want to map users to countries by running:
|
After that finishes parsing information from maxmind, you may want to map users to countries by running:
|
||||||
"INSERT INTO users_geodistribution (Code, Users) SELECT g.Code, COUNT(u.ID) AS Users FROM geoip_country AS g JOIN users_main AS u ON INET_ATON(u.IP) BETWEEN g.StartIP AND g.EndIP WHERE u.Enabled='1' GROUP BY g.Code ORDER BY Users DESC"
|
"INSERT INTO users_geodistribution (Code, Users) SELECT g.Code, COUNT(u.ID) AS Users FROM geoip_country AS g JOIN users_main AS u ON INET_ATON(u.IP) BETWEEN g.StartIP AND g.EndIP WHERE u.Enabled='1' GROUP BY g.Code ORDER BY Users DESC"
|
||||||
This will fill in the table needed for stats.
|
This will fill in the table needed for stats.
|
||||||
|
|
||||||
|
@ -1212,22 +1212,19 @@ function format_username($UserID, $Badges = false, $IsWarned = true, $IsEnabled
|
|||||||
return "Unknown [$UserID]";
|
return "Unknown [$UserID]";
|
||||||
}
|
}
|
||||||
|
|
||||||
$str = '';
|
$Str = '';
|
||||||
|
|
||||||
if ($Title) {
|
if ($Title) {
|
||||||
$str .= '<strong>';
|
$Str .= '<strong><a href="user.php?id='.$UserID.'">'.$UserInfo['Username'].'</a></strong>';
|
||||||
}
|
} else {
|
||||||
|
$Str .= '<a href="user.php?id='.$UserID.'">'.$UserInfo['Username'].'</a>';
|
||||||
$str.='<a href="user.php?id='.$UserID.'">'.$UserInfo['Username'].'</a>';
|
|
||||||
if ($Title) {
|
|
||||||
$str .= '</strong>';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($Badges) {
|
if ($Badges) {
|
||||||
$str.=($UserInfo['Donor'] == 1) ? '<a href="donate.php"><img src="'.STATIC_SERVER.'common/symbols/donor.png" alt="Donor" title="Donor" /></a>' : '';
|
$Str .= ($UserInfo['Donor'] == 1) ? '<a href="donate.php"><img src="'.STATIC_SERVER.'common/symbols/donor.png" alt="Donor" title="Donor" /></a>' : '';
|
||||||
}
|
}
|
||||||
$str.=($IsWarned && $UserInfo['Warned']!='0000-00-00 00:00:00') ? '<a href="wiki.php?action=article&id=218"><img src="'.STATIC_SERVER.'common/symbols/warned.png" alt="Warned" title="Warned" /></a>' : '';
|
$Str .= ($IsWarned && $UserInfo['Warned'] != '0000-00-00 00:00:00') ? '<a href="wiki.php?action=article&id=218"><img src="'.STATIC_SERVER.'common/symbols/warned.png" alt="Warned" title="Warned" /></a>' : '';
|
||||||
$str.=($IsEnabled && $UserInfo['Enabled'] == 2) ? '<a href="rules.php"><img src="'.STATIC_SERVER.'common/symbols/disabled.png" alt="Banned" title="Be good, and you won\'t end up like this user" /></a>' : '';
|
$Str .= ($IsEnabled && $UserInfo['Enabled'] == 2) ? '<a href="rules.php"><img src="'.STATIC_SERVER.'common/symbols/disabled.png" alt="Banned" title="Be good, and you won\'t end up like this user" /></a>' : '';
|
||||||
|
|
||||||
if ($Badges) {
|
if ($Badges) {
|
||||||
$ClassesDisplay = array();
|
$ClassesDisplay = array();
|
||||||
@ -1236,30 +1233,34 @@ function format_username($UserID, $Badges = false, $IsWarned = true, $IsEnabled
|
|||||||
$ClassesDisplay[] = '<span class="secondary_class" title="'.$Classes[$PermID]['Name'].'">'.$PermHTML.'</span>';
|
$ClassesDisplay[] = '<span class="secondary_class" title="'.$Classes[$PermID]['Name'].'">'.$PermHTML.'</span>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$str .= ((!empty($ClassesDisplay))?' ':'').implode(' ', $ClassesDisplay);
|
if(!empty($ClassesDisplay)) {
|
||||||
|
$Str .= implode(' ', $ClassesDisplay);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($Title && $Class) {
|
if ($Class) {
|
||||||
$str .= '<strong>';
|
if ($Title) {
|
||||||
|
$Str .= ' <strong>('.make_class_string($UserInfo['PermissionID']).')</strong>';
|
||||||
|
} else {
|
||||||
|
$Str .= ' ('.make_class_string($UserInfo['PermissionID']).')';
|
||||||
}
|
}
|
||||||
$str.=($Class) ? ' ('.make_class_string($UserInfo['PermissionID']).')' : '';
|
|
||||||
if ($Title && $Class) {
|
|
||||||
$str .= '</strong>';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($Title) {
|
if ($Title) {
|
||||||
// Image proxy CTs
|
// Image proxy CTs
|
||||||
if(check_perms('site_proxy_images') && !empty($UserInfo['Title'])) {
|
if(check_perms('site_proxy_images') && !empty($UserInfo['Title'])) {
|
||||||
$UserInfo['Title'] = preg_replace_callback('~src=("?)(http.+?)(["\s>])~', function($Matches) {
|
$UserInfo['Title'] = preg_replace_callback('~src=("?)(http.+?)(["\s>])~',
|
||||||
|
function($Matches) {
|
||||||
return 'src='.$Matches[1].'http'.($SSL?'s':'').'://'.SITE_URL.'/image.php?c=1&i='.urlencode($Matches[2]).$Matches[3];
|
return 'src='.$Matches[1].'http'.($SSL?'s':'').'://'.SITE_URL.'/image.php?c=1&i='.urlencode($Matches[2]).$Matches[3];
|
||||||
}, $UserInfo['Title']);
|
},
|
||||||
|
$UserInfo['Title']);
|
||||||
}
|
}
|
||||||
|
|
||||||
$str.='</strong>';
|
|
||||||
if ($UserInfo['Title']) {
|
if ($UserInfo['Title']) {
|
||||||
$str.= ' <span class="user_title">('.$UserInfo['Title'].')</span>';
|
$Str .= ' <span class="user_title">('.$UserInfo['Title'].')</span>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $str;
|
return $Str;
|
||||||
}
|
}
|
||||||
|
|
||||||
function make_class_string($ClassID) {
|
function make_class_string($ClassID) {
|
||||||
@ -2436,7 +2437,7 @@ function freeleech_groups($GroupIDs, $FreeNeutral = 1, $FreeLeechType = 0) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Used to check if keys in $_POST and $_GET are all set
|
* Used to check if keys in $_POST and $_GET are all set
|
||||||
* This reduces if statement redundancy for alot of variables
|
* This reduces 'if' statement redundancy for a lot of variables
|
||||||
*/
|
*/
|
||||||
function isset_request($Request, $Keys=NULL, $AllowEmpty = False, $Error=0) {
|
function isset_request($Request, $Keys=NULL, $AllowEmpty = False, $Error=0) {
|
||||||
if(isset($Keys)) {
|
if(isset($Keys)) {
|
||||||
@ -2468,9 +2469,9 @@ function isset_request($Request, $Keys=NULL, $AllowEmpty = False, $Error=0) {
|
|||||||
$Debug->set_flag('completed module execution');
|
$Debug->set_flag('completed module execution');
|
||||||
|
|
||||||
/* Required in the absence of session_start() for providing that pages will change
|
/* Required in the absence of session_start() for providing that pages will change
|
||||||
upon hit rather than being browser cache'd for changing content.
|
upon hit rather than being browser cached for changing content.
|
||||||
|
|
||||||
Old versions of Internet explorer choke when downloading binary files over HTTPS with disabled cache.
|
Old versions of Internet Explorer choke when downloading binary files over HTTPS with disabled cache.
|
||||||
Define the following constant in files that handle file downloads */
|
Define the following constant in files that handle file downloads */
|
||||||
if(!defined('IE_WORKAROUND_NO_CACHE_HEADERS')) {
|
if(!defined('IE_WORKAROUND_NO_CACHE_HEADERS')) {
|
||||||
header('Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0');
|
header('Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0');
|
||||||
|
@ -122,7 +122,7 @@
|
|||||||
<li id="stats_required"><a href="rules.php?p=ratio">Required</a>: <span class="stat"><?=number_format($LoggedUser['RequiredRatio'], 2)?></span></li>
|
<li id="stats_required"><a href="rules.php?p=ratio">Required</a>: <span class="stat"><?=number_format($LoggedUser['RequiredRatio'], 2)?></span></li>
|
||||||
<? }
|
<? }
|
||||||
if($LoggedUser['FLTokens'] > 0) { ?>
|
if($LoggedUser['FLTokens'] > 0) { ?>
|
||||||
<li id="fl_tokens"><a href="wiki.php?action=article&id=754">Tokens: </a><span class="stat"><a href="userhistory.php?action=token_history&userid=<?=$LoggedUser['ID']?>"><?=$LoggedUser['FLTokens']?></a></span></li>
|
<li id="fl_tokens"><a href="wiki.php?action=article&id=754">Tokens: </a><span class="stat"><a href="userhistory.php?action=token_history&userid=<?=$LoggedUser['ID']?>"><?=$LoggedUser['FLTokens']?></a></span></li>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</ul>
|
</ul>
|
||||||
<?
|
<?
|
||||||
@ -451,7 +451,7 @@
|
|||||||
<li id="searchbar_wiki">
|
<li id="searchbar_wiki">
|
||||||
<span class="hidden">Wiki: </span>
|
<span class="hidden">Wiki: </span>
|
||||||
<form action="wiki.php" method="get">
|
<form action="wiki.php" method="get">
|
||||||
<input type="hidden" name="action" value="search">
|
<input type="hidden" name="action" value="search" />
|
||||||
<input
|
<input
|
||||||
onfocus="if (this.value == 'Wiki') this.value='';"
|
onfocus="if (this.value == 'Wiki') this.value='';"
|
||||||
onblur="if (this.value == '') this.value='Wiki';"
|
onblur="if (this.value == '') this.value='Wiki';"
|
||||||
|
@ -201,7 +201,7 @@ function compare($X, $Y){
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($LoggedUser['DiscogView']) || (isset($LoggedUser['HideTypes']) && in_array($ReleaseID, $LoggedUser['HideTypes']))) {
|
if (!empty($LoggedUser['DiscogView']) || (isset($LoggedUser['HideTypes']) && in_array($ReleaseID, $LoggedUser['HideTypes']))) {
|
||||||
$ToggleStr = " onClick=\"$('.releases_$ReleaseID').show(); return true;\"";
|
$ToggleStr = " onclick=\"$('.releases_$ReleaseID').show(); return true;\"";
|
||||||
} else {
|
} else {
|
||||||
$ToggleStr = '';
|
$ToggleStr = '';
|
||||||
}
|
}
|
||||||
@ -440,7 +440,7 @@ function compare($X, $Y){
|
|||||||
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download"><?=$Torrent['HasFile'] ? 'DL' : 'Missing'?></a>
|
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download"><?=$Torrent['HasFile'] ? 'DL' : 'Missing'?></a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?> ]
|
<? } ?> ]
|
||||||
</span>
|
</span>
|
||||||
» <a href="torrents.php?id=<?=$GroupID?>&torrentid=<?=$TorrentID?>"><?=torrent_info($Torrent)?></a>
|
» <a href="torrents.php?id=<?=$GroupID?>&torrentid=<?=$TorrentID?>"><?=torrent_info($Torrent)?></a>
|
||||||
|
@ -156,7 +156,7 @@
|
|||||||
<?=$Text->full_format($Body)?>
|
<?=$Text->full_format($Body)?>
|
||||||
<? if($ThreadID) { ?>
|
<? if($ThreadID) { ?>
|
||||||
<br /><br />
|
<br /><br />
|
||||||
<em><a href="forums.php?action=viewthread&threadid=<?=$ThreadID?>">Discuss this post here</a></em>
|
<em><a href="forums.php?action=viewthread&threadid=<?=$ThreadID?>">Discuss this post here</a></em>
|
||||||
<? if(check_perms('admin_manage_blog')) { ?>
|
<? if(check_perms('admin_manage_blog')) { ?>
|
||||||
<a href="blog.php?action=deadthread&id=<?=$BlogID?>&auth=<?=$LoggedUser['AuthKey']?>">[Remove link]</a>
|
<a href="blog.php?action=deadthread&id=<?=$BlogID?>&auth=<?=$LoggedUser['AuthKey']?>">[Remove link]</a>
|
||||||
<? }
|
<? }
|
||||||
|
@ -205,7 +205,7 @@ function compare($X, $Y){
|
|||||||
<span>[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
<span>[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
||||||
</span>
|
</span>
|
||||||
@ -242,7 +242,7 @@ function compare($X, $Y){
|
|||||||
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
||||||
</span>
|
</span>
|
||||||
@ -392,14 +392,14 @@ function compare($X, $Y){
|
|||||||
</div>
|
</div>
|
||||||
<? if ($NumGroups > $CollageCovers) { ?>
|
<? if ($NumGroups > $CollageCovers) { ?>
|
||||||
<div class="linkbox pager" style="clear: left;" id="pageslinksdiv">
|
<div class="linkbox pager" style="clear: left;" id="pageslinksdiv">
|
||||||
<span id="firstpage" class="invisible"><a href="#" class="pageslink" onClick="collageShow.page(0, this); return false;"><< First</a> | </span>
|
<span id="firstpage" class="invisible"><a href="#" class="pageslink" onclick="collageShow.page(0, this); return false;"><< First</a> | </span>
|
||||||
<span id="prevpage" class="invisible"><a href="#" id="prevpage" class="pageslink" onClick="collageShow.prevPage(); return false;">< Prev</a> | </span>
|
<span id="prevpage" class="invisible"><a href="#" id="prevpage" class="pageslink" onclick="collageShow.prevPage(); return false;">< Prev</a> | </span>
|
||||||
<? for ($i=0; $i < $NumGroups/$CollageCovers; $i++) { ?>
|
<? for ($i=0; $i < $NumGroups/$CollageCovers; $i++) { ?>
|
||||||
<span id="pagelink<?=$i?>" class="<?=(($i>4)?'hidden':'')?><?=(($i==0)?' selected':'')?>"><a href="#" class="pageslink" onClick="collageShow.page(<?=$i?>, this); return false;"><?=$CollageCovers*$i+1?>-<?=min($NumGroups,$CollageCovers*($i+1))?></a><?=($i != ceil($NumGroups/$CollageCovers)-1)?' | ':''?></span>
|
<span id="pagelink<?=$i?>" class="<?=(($i>4)?'hidden':'')?><?=(($i==0)?' selected':'')?>"><a href="#" class="pageslink" onclick="collageShow.page(<?=$i?>, this); return false;"><?=$CollageCovers*$i+1?>-<?=min($NumGroups,$CollageCovers*($i+1))?></a><?=($i != ceil($NumGroups/$CollageCovers)-1)?' | ':''?></span>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<span id="nextbar" class="<?=($NumGroups/$CollageCovers > 5)?'hidden':''?>"> | </span>
|
<span id="nextbar" class="<?=($NumGroups/$CollageCovers > 5)?'hidden':''?>"> | </span>
|
||||||
<span id="nextpage"><a href="#" class="pageslink" onClick="collageShow.nextPage(); return false;">Next ></a></span>
|
<span id="nextpage"><a href="#" class="pageslink" onclick="collageShow.nextPage(); return false;">Next ></a></span>
|
||||||
<span id="lastpage" class="<?=ceil($NumGroups/$CollageCovers)==2?'invisible':''?>"> | <a href="#" id="lastpage" class="pageslink" onClick="collageShow.page(<?=ceil($NumGroups/$CollageCovers)-1?>, this); return false;">Last >></a></span>
|
<span id="lastpage" class="<?=ceil($NumGroups/$CollageCovers)==2?'invisible':''?>"> | <a href="#" id="lastpage" class="pageslink" onclick="collageShow.page(<?=ceil($NumGroups/$CollageCovers)-1?>, this); return false;">Last >></a></span>
|
||||||
</div>
|
</div>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
collageShow.init(<?=json_encode($CollagePages)?>);
|
collageShow.init(<?=json_encode($CollagePages)?>);
|
||||||
|
@ -28,43 +28,43 @@
|
|||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
Staff have the final decision, if they say stop and you continue, expect at least to be banned from the IRC server.
|
Staff have the final decision, if they say stop and you continue, expect at least to be banned from the IRC network.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Be respectful to IRC Operators and Administrators. These people are site staff who volunteer their time for little compensation. They are there for the benefit of all and to aid in conflict resolution, do not waste their time.
|
Be respectful to IRC Operators and Administrators. These people are site staff who volunteer their time for little compensation. They are there for the benefit of all and to aid in conflict resolution; do not waste their time.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Do not link shock sites or anything NSFW (not safe for work) without a warning. If in doubt, ask a staff member in <?=BOT_HELP_CHAN?> about it.
|
Do not link shock sites or anything NSFW (not safe for work) without a warning. If in doubt, ask a staff member in <?=BOT_HELP_CHAN?> about it.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Excessive swearing will get you kicked, keep swearing to a minimum.
|
Excessive swearing will get you kicked; keep swearing to a minimum.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Do not leave your Caps Lock on all the time. It gets annoying, and you will likely get yourself kicked.
|
Do not leave your Caps Lock on all the time. It gets annoying, and you will likely get yourself kicked.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
No arguing. You can't win an argument over the internet, so you're just wasting your time trying.
|
No arguing. You can't win an argument over the Internet, so you're just wasting your time trying.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
No prejudice, especially related to race, religion, politics, ethnic background, etc. It is highly suggested to avoid this entirely.
|
No prejudice, especially related to race, religion, politics, ethnic background, etc. It is highly suggested to avoid this entirely.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Flooding is irritating and will merit you a kick. This includes but is not limited to: automatic now playing scripts, pasting large amounts of text, and multiple consecutive lines with no relevance to the conversation at hand.
|
Flooding is irritating and will warrant you a kick. This includes, but is not limited to, automatic "now playing" scripts, pasting large amounts of text, and multiple consecutive lines with no relevance to the conversation at hand.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Impersonation of other members (particularly staff members) will not go unpunished. If you are uncertain of a users identity, check their vhost.
|
Impersonation of other members (particularly staff members) will not go unpunished. If you are uncertain of a user's identity, check their vhost.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Spamming is strictly forbidden. This includes but is not limited to: personal sites, online auctions, and torrent uploads.
|
Spamming is strictly forbidden. This includes, but is not limited to, personal sites, online auctions, and torrent uploads.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Obsessive annoyance both to other users and staff will not be tolerated.
|
Obsessive annoyance both to other users and staff will not be tolerated.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
Don't PM, DCC, or Query anyone you don't know or have never talked to without asking, this applies specifically to staff.
|
Do not PM, DCC, or Query anyone you don't know or have never talked to without asking; this applies specifically to staff.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
No language other than English is permitted in the official IRC channels. If we can't understand it, we can't moderate it.
|
No language other than English is permitted in the official IRC channels. If we cannot understand it, we cannot moderate it.
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
The offering, selling, trading and giving away of invites to this or any other site on our IRC network is <strong>strictly forbidden</strong>.
|
The offering, selling, trading and giving away of invites to this or any other site on our IRC network is <strong>strictly forbidden</strong>.
|
||||||
@ -97,23 +97,22 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="box pad" style="padding:10px 0px 10px 0px;">
|
<div class="box pad" style="padding:10px 0px 10px 0px;">
|
||||||
<div style="padding:0px 10px 10px 20px;">
|
<div style="padding:0px 10px 10px 20px;">
|
||||||
<p>If you have an IRC client, visit <a href="wiki.php?action=article&name=IRC+-+How+to+join">this wiki entry</a> for more information how to connect. (IRC Applet users are automatically identified with Drone.)</p>
|
<p>If you have an IRC client, visit <a href="wiki.php?action=article&name=IRC+-+How+to+join">this wiki entry</a> for information on how to connect. (IRC applet users are automatically identified with Drone.)</p>
|
||||||
</div>
|
</div>
|
||||||
<center>
|
<center>
|
||||||
<applet codebase="static/irc/" code="IRCApplet.class" archive="irc.jar,sbox.jar" width=800 height=600>
|
<applet codebase="static/irc/" code="IRCApplet.class" archive="irc.jar,sbox.jar" width="800" height="600">
|
||||||
<param name="nick" value="<?=$nick?>">
|
<param name="nick" value="<?=$nick?>" />
|
||||||
<param name="alternatenick" value="WhatGuest????">
|
<param name="alternatenick" value="WhatGuest????" />
|
||||||
<param name="name" value="Java IRC User">
|
<param name="name" value="Java IRC User" />
|
||||||
<param name="host" value="<?=BOT_SERVER?>">
|
<param name="host" value="<?=BOT_SERVER?>" />
|
||||||
<param name="multiserver" value="true">
|
<param name="multiserver" value="true" />
|
||||||
<param name="autorejoin" value="false">
|
<param name="autorejoin" value="false" />
|
||||||
|
|
||||||
|
<param name="gui" value="sbox" />
|
||||||
<param name="gui" value="sbox">
|
<param name="pixx:highlight" value="true" />
|
||||||
<param name="pixx:highlight" value="true">
|
<param name="pixx:highlightnick" value="true" />
|
||||||
<param name="pixx:highlightnick" value="true">
|
<param name="pixx:prefixops" value="true" />
|
||||||
<param name="pixx:prefixops" value="true">
|
<param name="sbox:scrollspeed" value="5" />
|
||||||
<param name="sbox:scrollspeed" value="5">
|
|
||||||
</applet>
|
</applet>
|
||||||
</center>
|
</center>
|
||||||
</div>
|
</div>
|
||||||
|
@ -251,7 +251,7 @@ function compare($X, $Y){
|
|||||||
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
||||||
</span>
|
</span>
|
||||||
@ -288,7 +288,7 @@ function compare($X, $Y){
|
|||||||
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && ($Torrent['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($Torrent['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
||||||
</span>
|
</span>
|
||||||
@ -531,7 +531,7 @@ function compare($X, $Y){
|
|||||||
</div>
|
</div>
|
||||||
<? if(check_perms('site_collages_manage') && !$Locked) { ?>
|
<? if(check_perms('site_collages_manage') && !$Locked) { ?>
|
||||||
<div class="box box_addtorrent">
|
<div class="box box_addtorrent">
|
||||||
<div class="head"><strong>Add torrent</strong><span style="float: right"><a href="#" onClick="$('#addtorrent').toggle(); $('#batchadd').toggle(); this.innerHTML = (this.innerHTML == '[Batch Add]'?'[Individual Add]':'[Batch Add]'); return false;">[Batch Add]</a></span></div>
|
<div class="head"><strong>Add torrent</strong><span style="float: right"><a href="#" onclick="$('#addtorrent').toggle(); $('#batchadd').toggle(); this.innerHTML = (this.innerHTML == '[Batch Add]'?'[Individual Add]':'[Batch Add]'); return false;">[Batch Add]</a></span></div>
|
||||||
<div class="pad" id="addtorrent">
|
<div class="pad" id="addtorrent">
|
||||||
<form action="collages.php" method="post">
|
<form action="collages.php" method="post">
|
||||||
<input type="hidden" name="action" value="add_torrent" />
|
<input type="hidden" name="action" value="add_torrent" />
|
||||||
@ -619,14 +619,14 @@ function compare($X, $Y){
|
|||||||
</div>
|
</div>
|
||||||
<? if ($NumGroups > $CollageCovers) { ?>
|
<? if ($NumGroups > $CollageCovers) { ?>
|
||||||
<div class="linkbox pager" style="clear: left;" id="pageslinksdiv">
|
<div class="linkbox pager" style="clear: left;" id="pageslinksdiv">
|
||||||
<span id="firstpage" class="invisible"><a href="#" class="pageslink" onClick="collageShow.page(0, this); return false;"><< First</a> | </span>
|
<span id="firstpage" class="invisible"><a href="#" class="pageslink" onclick="collageShow.page(0, this); return false;"><< First</a> | </span>
|
||||||
<span id="prevpage" class="invisible"><a href="#" id="prevpage" class="pageslink" onClick="collageShow.prevPage(); return false;">< Prev</a> | </span>
|
<span id="prevpage" class="invisible"><a href="#" id="prevpage" class="pageslink" onclick="collageShow.prevPage(); return false;">< Prev</a> | </span>
|
||||||
<? for ($i=0; $i < $NumGroups/$CollageCovers; $i++) { ?>
|
<? for ($i=0; $i < $NumGroups/$CollageCovers; $i++) { ?>
|
||||||
<span id="pagelink<?=$i?>" class="<?=(($i>4)?'hidden':'')?><?=(($i==0)?' selected':'')?>"><a href="#" class="pageslink" onClick="collageShow.page(<?=$i?>, this); return false;"><?=$CollageCovers*$i+1?>-<?=min($NumGroups,$CollageCovers*($i+1))?></a><?=($i != ceil($NumGroups/$CollageCovers)-1)?' | ':''?></span>
|
<span id="pagelink<?=$i?>" class="<?=(($i>4)?'hidden':'')?><?=(($i==0)?' selected':'')?>"><a href="#" class="pageslink" onclick="collageShow.page(<?=$i?>, this); return false;"><?=$CollageCovers*$i+1?>-<?=min($NumGroups,$CollageCovers*($i+1))?></a><?=($i != ceil($NumGroups/$CollageCovers)-1)?' | ':''?></span>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<span id="nextbar" class="<?=($NumGroups/$CollageCovers > 5)?'hidden':''?>"> | </span>
|
<span id="nextbar" class="<?=($NumGroups/$CollageCovers > 5)?'hidden':''?>"> | </span>
|
||||||
<span id="nextpage"><a href="#" class="pageslink" onClick="collageShow.nextPage(); return false;">Next ></a></span>
|
<span id="nextpage"><a href="#" class="pageslink" onclick="collageShow.nextPage(); return false;">Next ></a></span>
|
||||||
<span id="lastpage" class="<?=ceil($NumGroups/$CollageCovers)==2?'invisible':''?>"> | <a href="#" id="lastpage" class="pageslink" onClick="collageShow.page(<?=ceil($NumGroups/$CollageCovers)-1?>, this); return false;">Last >></a></span>
|
<span id="lastpage" class="<?=ceil($NumGroups/$CollageCovers)==2?'invisible':''?>"> | <a href="#" id="lastpage" class="pageslink" onclick="collageShow.page(<?=ceil($NumGroups/$CollageCovers)-1?>, this); return false;">Last >></a></span>
|
||||||
</div>
|
</div>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
collageShow.init(<?=json_encode($CollagePages)?>);
|
collageShow.init(<?=json_encode($CollagePages)?>);
|
||||||
|
@ -21,16 +21,16 @@ function notify ($Channel, $Message) {
|
|||||||
break;
|
break;
|
||||||
case '404':
|
case '404':
|
||||||
$Title = "Error 404";
|
$Title = "Error 404";
|
||||||
$Description = "You just tried to go to a page that doesn't really exist.";
|
$Description = "You just tried to go to a page that doesn't exist.";
|
||||||
break;
|
break;
|
||||||
case '0':
|
case '0':
|
||||||
$Title = "Invalid Input";
|
$Title = "Invalid Input";
|
||||||
$Description = "Something was wrong with the input provided with your request and the server is refusing to fulfill it.";
|
$Description = "Something was wrong with the input provided with your request, and the server is refusing to fulfill it.";
|
||||||
notify(STATUS_CHAN,'PHP-0');
|
notify(STATUS_CHAN,'PHP-0');
|
||||||
break;
|
break;
|
||||||
case '-1':
|
case '-1':
|
||||||
$Title = "Invalid request";
|
$Title = "Invalid request";
|
||||||
$Description = "Something was wrong with your request and the server is refusing to fulfill it.";
|
$Description = "Something was wrong with your request, and the server is refusing to fulfill it.";
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if(!empty($Error)) {
|
if(!empty($Error)) {
|
||||||
|
@ -64,7 +64,7 @@
|
|||||||
}
|
}
|
||||||
$DB->query($SQL);
|
$DB->query($SQL);
|
||||||
if (list($Title) = $DB->next_record()) {
|
if (list($Title) = $DB->next_record()) {
|
||||||
$Title = " > <a href=\"forums.php?action=viewthread&threadid=$ThreadID\">$Title</a>";
|
$Title = " > <a href=\"forums.php?action=viewthread&threadid=$ThreadID\">$Title</a>";
|
||||||
} else {
|
} else {
|
||||||
$Title = '';
|
$Title = '';
|
||||||
$ThreadID = '';
|
$ThreadID = '';
|
||||||
@ -287,7 +287,7 @@
|
|||||||
<?=cut_string($Title, 80); ?>
|
<?=cut_string($Title, 80); ?>
|
||||||
<? }
|
<? }
|
||||||
if ($Type == 'body') { ?>
|
if ($Type == 'body') { ?>
|
||||||
<a href="#" onClick="$('#post_<?=$PostID?>_text').toggle(); return false;">(show)</a> <span style="float: right;" class="last_read" title="Jump to post"><a href="forums.php?action=viewthread&threadid=<?=$ID?><? if(!empty($PostID)) { echo '&postid='.$PostID.'#post'.$PostID; } ?>"></a></span>
|
<a href="#" onclick="$('#post_<?=$PostID?>_text').toggle(); return false;">(show)</a> <span style="float: right;" class="last_read" title="Jump to post"><a href="forums.php?action=viewthread&threadid=<?=$ID?><? if(!empty($PostID)) { echo '&postid='.$PostID.'#post'.$PostID; } ?>"></a></span>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
|
@ -17,7 +17,7 @@
|
|||||||
error(403);
|
error(403);
|
||||||
}
|
}
|
||||||
|
|
||||||
$URL = "https://".SSL_SITE_URL."/forums.php?action=viewthread&postid=$PostID#post$PostID";
|
$URL = "https://".SSL_SITE_URL."/forums.php?action=viewthread&postid=$PostID#post$PostID";
|
||||||
if ($Length != 'verbal') {
|
if ($Length != 'verbal') {
|
||||||
$Time = ((int)$Length) * (7 * 24 * 60 * 60);
|
$Time = ((int)$Length) * (7 * 24 * 60 * 60);
|
||||||
warn_user($UserID, $Time, "$URL - " . $Reason);
|
warn_user($UserID, $Time, "$URL - " . $Reason);
|
||||||
|
@ -157,15 +157,19 @@
|
|||||||
<h3>Search this thread:</h3>
|
<h3>Search this thread:</h3>
|
||||||
<form action="forums.php" method="get">
|
<form action="forums.php" method="get">
|
||||||
<table cellpadding="6" cellspacing="1" border="0" class="layout border">
|
<table cellpadding="6" cellspacing="1" border="0" class="layout border">
|
||||||
<input type="hidden" name="action" value="search" />
|
|
||||||
<input type="hidden" name="threadid" value="<?=$ThreadID?>" />
|
|
||||||
<tr>
|
<tr>
|
||||||
<td><strong>Search for:</strong></td><td><input type="text" id="searchbox" name="search" size="70" /></td>
|
<td><strong>Search for:</strong></td><td><input type="text" id="searchbox" name="search" size="70" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td><strong>Username:</strong></td><td><input type="text" id="username" name="user" size="70" /></td>
|
<td><strong>Username:</strong></td><td><input type="text" id="username" name="user" size="70" /></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr><td colspan="2" style="text-align: center"><input type="submit" name="submit" value="Search" /></td></tr>
|
<tr>
|
||||||
|
<td colspan="2" style="text-align: center">
|
||||||
|
<input type="hidden" name="action" value="search" />
|
||||||
|
<input type="hidden" name="threadid" value="<?=$ThreadID?>" />
|
||||||
|
<input type="submit" name="submit" value="Search" />
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</form>
|
</form>
|
||||||
<br />
|
<br />
|
||||||
@ -465,7 +469,7 @@
|
|||||||
<?
|
<?
|
||||||
if(!$ThreadInfo['IsLocked'] || check_perms('site_moderate_forums')) {
|
if(!$ThreadInfo['IsLocked'] || check_perms('site_moderate_forums')) {
|
||||||
if(check_forumperm($ForumID, 'Write') && !$LoggedUser['DisablePosting']) {
|
if(check_forumperm($ForumID, 'Write') && !$LoggedUser['DisablePosting']) {
|
||||||
//TODO: Preview, come up with a standard, make it look like post or just a block of formatted bbcode, but decide and write some proper html
|
//TODO: Preview, come up with a standard, make it look like post or just a block of formatted BBcode, but decide and write some proper XHTML
|
||||||
?>
|
?>
|
||||||
<br />
|
<br />
|
||||||
<h3>Post reply</h3>
|
<h3>Post reply</h3>
|
||||||
@ -576,7 +580,7 @@
|
|||||||
<? $OpenGroup = true;
|
<? $OpenGroup = true;
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<option value="<?=$Forum['ID']?>"<? if($ThreadInfo['ForumID'] == $Forum['ID']) { echo ' selected="selected"';} ?>><?=$Forum['Name']?></option>
|
<option value="<?=$Forum['ID']?>"<? if($ThreadInfo['ForumID'] == $Forum['ID']) { echo ' selected="selected"';} ?>><?=display_str($Forum['Name'])?></option>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</optgroup>
|
</optgroup>
|
||||||
</select>
|
</select>
|
||||||
|
@ -93,7 +93,7 @@
|
|||||||
if(empty($HeavyInfo['DisableAvatars'])) {
|
if(empty($HeavyInfo['DisableAvatars'])) {
|
||||||
if(!empty($Avatar)) {
|
if(!empty($Avatar)) {
|
||||||
if(check_perms('site_proxy_images')) {
|
if(check_perms('site_proxy_images')) {
|
||||||
$Avatar = 'http'.($SSL?'s':'').'://'.SITE_URL.'/image.php?c=1&i='.urlencode($Avatar);
|
$Avatar = 'http'.($SSL?'s':'').'://'.SITE_URL.'/image.php?c=1&i='.urlencode($Avatar);
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<img src="<?=$Avatar?>" alt="<?=$Username?>'s avatar" width="50px" />
|
<img src="<?=$Avatar?>" alt="<?=$Username?>'s avatar" width="50px" />
|
||||||
|
@ -376,7 +376,7 @@
|
|||||||
if ($Tag == 'vanity.house') {
|
if ($Tag == 'vanity.house') {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$TagLinks[] = "<a href=\"torrents.php?action=basic&taglist=$Tag\">$Tag</a> ";
|
$TagLinks[] = "<a href=\"torrents.php?action=basic&taglist=$Tag\">$Tag</a> ";
|
||||||
}
|
}
|
||||||
$TagStr = "<br />\n<div class=\"tags\">".implode(', ', $TagLinks).'</div>';
|
$TagStr = "<br />\n<div class=\"tags\">".implode(', ', $TagLinks).'</div>';
|
||||||
}
|
}
|
||||||
|
@ -85,7 +85,7 @@
|
|||||||
case "Request":
|
case "Request":
|
||||||
$RequestID = $MessageParts[$i + 1];
|
$RequestID = $MessageParts[$i + 1];
|
||||||
if (is_numeric($RequestID)) {
|
if (is_numeric($RequestID)) {
|
||||||
$Message = $Message.' '.$MessageParts[$i].' <a href="requests.php?action=view&id='.$RequestID.'"> '.$RequestID.'</a>';
|
$Message = $Message.' '.$MessageParts[$i].' <a href="requests.php?action=view&id='.$RequestID.'"> '.$RequestID.'</a>';
|
||||||
$i++;
|
$i++;
|
||||||
} else {
|
} else {
|
||||||
$Message = $Message.' '.$MessageParts[$i];
|
$Message = $Message.' '.$MessageParts[$i];
|
||||||
|
@ -4,14 +4,14 @@
|
|||||||
?>
|
?>
|
||||||
<form name="recoverform" id="recoverform" method="post" action="" onsubmit="return formVal();">
|
<form name="recoverform" id="recoverform" method="post" action="" onsubmit="return formVal();">
|
||||||
<div style="width:320px;">
|
<div style="width:320px;">
|
||||||
<font class="titletext">Reset your password - Step 1</font><br /><br />
|
<span class="titletext">Reset your password - Step 1</span><br /><br />
|
||||||
<?
|
<?
|
||||||
if(empty($Sent) || (!empty($Sent) && $Sent!=1)) {
|
if(empty($Sent) || (!empty($Sent) && $Sent!=1)) {
|
||||||
if(!empty($Err)) {
|
if(!empty($Err)) {
|
||||||
?>
|
?>
|
||||||
<font color="red"><strong><?=$Err ?></strong></font><br /><br />
|
<strong class="important_text"><?=$Err ?></strong><br /><br />
|
||||||
<? } ?>
|
<? } ?>
|
||||||
An email will be sent to your email address with information on how to reset your password<br /><br />
|
An email will be sent to your email address with information on how to reset your password.<br /><br />
|
||||||
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center">
|
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<td align="right">Email </td>
|
<td align="right">Email </td>
|
||||||
@ -22,7 +22,7 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<? } else { ?>
|
<? } else { ?>
|
||||||
An email has been sent to you, please follow the directions in that email to reset your password.
|
An email has been sent to you; please follow the directions in that email to reset your password.
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
@ -7,13 +7,13 @@
|
|||||||
<form name="recoverform" id="recoverform" method="post" action="" onsubmit="return formVal();">
|
<form name="recoverform" id="recoverform" method="post" action="" onsubmit="return formVal();">
|
||||||
<input type="hidden" name="key" value="<?=display_str($_REQUEST['key'])?>" />
|
<input type="hidden" name="key" value="<?=display_str($_REQUEST['key'])?>" />
|
||||||
<div style="width:500px;">
|
<div style="width:500px;">
|
||||||
<font class="titletext">Reset your password - Final Step</font><br /><br />
|
<span class="titletext">Reset your password - Final Step</span><br /><br />
|
||||||
<?
|
<?
|
||||||
if(empty($Reset)) {
|
if(empty($Reset)) {
|
||||||
if(!empty($Err)) {
|
if(!empty($Err)) {
|
||||||
?>
|
?>
|
||||||
<font color="red"><strong><?=display_str($Err)?></strong></font><br /><br />
|
<strong class="important_text"><?=display_str($Err)?></strong><br /><br />
|
||||||
<? } ?> A strong password is between 8 and 40 characters long, contains at least 1 lowercase and uppercase letter, contains at least a number or symbol<br /><br />
|
<? } ?> A strong password is between 8 and 40 characters long, contains at least 1 lowercase and uppercase letter, and contains at least a number or symbol.<br /><br />
|
||||||
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center" width="100%">
|
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center" width="100%">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<td align="right" style="width:100px;">Password </td>
|
<td align="right" style="width:100px;">Password </td>
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
?>
|
?>
|
||||||
<div style="width:500px;">
|
<div style="width:500px;">
|
||||||
<form method="get" action="register.php">
|
<form method="get" action="register.php">
|
||||||
Please enter your invite code into the box bellow.<br /><br />
|
Please enter your invite code into the box below.<br /><br />
|
||||||
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center">
|
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<td align="right">Invite </td>
|
<td align="right">Invite </td>
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
} elseif(OPEN_REGISTRATION || !empty($_REQUEST['invite'])) {
|
} elseif(OPEN_REGISTRATION || !empty($_REQUEST['invite'])) {
|
||||||
$Val->SetFields('username',true,'regex', 'You did not enter a valid username.',array('regex'=>'/^[a-z0-9_?]{1,20}$/iD'));
|
$Val->SetFields('username',true,'regex', 'You did not enter a valid username.',array('regex'=>'/^[a-z0-9_?]{1,20}$/iD'));
|
||||||
$Val->SetFields('email',true,'email', 'You did not enter a valid email address.');
|
$Val->SetFields('email',true,'email', 'You did not enter a valid email address.');
|
||||||
$Val->SetFields('password',true,'regex','A strong password is between 8 and 40 characters long, contains at least 1 lowercase and uppercase letter contains at least a number or symbol',array('regex'=>'/(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/'));
|
$Val->SetFields('password',true,'regex','A strong password is between 8 and 40 characters long, contains at least 1 lowercase and uppercase letter, and contains at least a number or symbol',array('regex'=>'/(?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$/'));
|
||||||
$Val->SetFields('confirm_password',true,'compare', 'Your passwords do not match.',array('comparefield'=>'password'));
|
$Val->SetFields('confirm_password',true,'compare', 'Your passwords do not match.',array('comparefield'=>'password'));
|
||||||
$Val->SetFields('readrules',true,'checkbox', 'You did not check the box that says you will read the rules.');
|
$Val->SetFields('readrules',true,'checkbox', 'You did not check the box that says you will read the rules.');
|
||||||
$Val->SetFields('readwiki',true,'checkbox', 'You did not check the box that says you will read the wiki.');
|
$Val->SetFields('readwiki',true,'checkbox', 'You did not check the box that says you will read the wiki.');
|
||||||
|
@ -15,14 +15,14 @@
|
|||||||
}
|
}
|
||||||
if(!empty($Err)) {
|
if(!empty($Err)) {
|
||||||
?>
|
?>
|
||||||
<font color="red"><strong><?=$Err?></strong></font><br /><br />
|
<strong class="important_text"><?=$Err?></strong><br /><br />
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center">
|
<table class="layout" cellpadding="2" cellspacing="1" border="0" align="center">
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<td align="right" style="width:100px;">Username </td>
|
<td align="right" style="width:100px;">Username </td>
|
||||||
<td align="left">
|
<td align="left">
|
||||||
<input type="text" name="username" id="username" class="inputtext" value="<?=(!empty($_REQUEST['username']) ? display_str($_REQUEST['username']) : '')?>" />
|
<input type="text" name="username" id="username" class="inputtext" value="<?=(!empty($_REQUEST['username']) ? display_str($_REQUEST['username']) : '')?>" />
|
||||||
<p>Use common sense when choosing your username. Offensive usernames will not be tolerated. Also, do not choose a username that can be associated with your real name. If you do so, we will not be changing it for you.</p>
|
<p>Use common sense when choosing your username. Offensive usernames will not be tolerated. <strong>Do not choose a username that can be associated with your real name.</strong> If you do so, we will not be changing it for you.</p>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
@ -36,7 +36,7 @@
|
|||||||
<tr valign="top">
|
<tr valign="top">
|
||||||
<td align="right">Verify Password </td>
|
<td align="right">Verify Password </td>
|
||||||
<td align="left"><input type="password" name="confirm_password" id="new_pass_2" class="inputtext" /> <b id="pass_match"/>
|
<td align="left"><input type="password" name="confirm_password" id="new_pass_2" class="inputtext" /> <b id="pass_match"/>
|
||||||
<p>A strong password is 8 characters or longer, contains at least 1 lowercase and uppercase letter, contains at least a number or a symbol.</p>
|
<p>A strong password is 8 characters or longer, contains at least 1 lowercase and uppercase letter, and contains at least a number or a symbol.</p>
|
||||||
|
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -60,7 +60,11 @@
|
|||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<? } else { ?>
|
<? } else { ?>
|
||||||
|
<<<<<<< HEAD
|
||||||
An email has been sent to the address that you provided. After you confirm your email address you will be able to log into your account.
|
An email has been sent to the address that you provided. After you confirm your email address you will be able to log into your account.
|
||||||
|
=======
|
||||||
|
An email has been sent to the address that you provided. After you confirm your email address, you will be able to log into your account.
|
||||||
|
>>>>>>> 3631ffa... Fixes a bunch of XHTML errors (e.g. unencoded ampersands) and other typos
|
||||||
|
|
||||||
<? if($NewInstall) { echo "Since this is a new installation, you can log in directly without having to confirm your account."; }
|
<? if($NewInstall) { echo "Since this is a new installation, you can log in directly without having to confirm your account."; }
|
||||||
} ?>
|
} ?>
|
||||||
|
@ -148,7 +148,7 @@
|
|||||||
<br />
|
<br />
|
||||||
|
|
||||||
<div class="box pad center">
|
<div class="box pad center">
|
||||||
<p><strong>It will greatly increase the turnover rate of the updates if you can fill in as much of the following details in as possible</strong></p>
|
<p><strong>It will greatly increase the turnover rate of the updates if you can fill in as much of the following details as possible.</strong></p>
|
||||||
<form action="" method="post">
|
<form action="" method="post">
|
||||||
<input type="hidden" name="action" value="takereport" />
|
<input type="hidden" name="action" value="takereport" />
|
||||||
<input type="hidden" name="auth" value="<?=$LoggedUser['AuthKey']?>" />
|
<input type="hidden" name="auth" value="<?=$LoggedUser['AuthKey']?>" />
|
||||||
|
@ -101,7 +101,7 @@
|
|||||||
<table cellpadding="5" id="report_<?=$ReportID?>">
|
<table cellpadding="5" id="report_<?=$ReportID?>">
|
||||||
<tr>
|
<tr>
|
||||||
<td><strong><a href="<?=$Reference?>">Report</a></strong></td>
|
<td><strong><a href="<?=$Reference?>">Report</a></strong></td>
|
||||||
<td><strong><?=$Type['title']?></strong> was reported by <a href="user.php?id=<?=$SnitchID?>"><?=$SnitchName?></a> <?=time_diff($ReportedTime)?> <a href="reports.php?action=compose&to=<?=$SnitchID?>&reportid=<?=$ReportID?>&type=<?=$Short?>&thingid=<?=$ThingID?>">[Contact]</a></td>
|
<td><strong><?=$Type['title']?></strong> was reported by <a href="user.php?id=<?=$SnitchID?>"><?=$SnitchName?></a> <?=time_diff($ReportedTime)?> <a href="reports.php?action=compose&to=<?=$SnitchID?>&reportid=<?=$ReportID?>&type=<?=$Short?>&thingid=<?=$ThingID?>">[Contact]</a></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
||||||
|
@ -83,7 +83,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
foreach($Channels as $Channel) {
|
foreach($Channels as $Channel) {
|
||||||
send_irc("PRIVMSG ".$Channel." :".$ReportID." - ".$LoggedUser['Username']." just reported a ".$Short.": http://".NONSSL_SITE_URL."/".$Link." : ".$Reason);
|
send_irc("PRIVMSG ".$Channel." :".$ReportID." - ".$LoggedUser['Username']." just reported a ".$Short.": https://".SSL_SITE_URL."/".$Link." : ".$Reason);
|
||||||
}
|
}
|
||||||
|
|
||||||
$Cache->delete_value('num_other_reports');
|
$Cache->delete_value('num_other_reports');
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="label">
|
<td class="label">
|
||||||
Image(s)<?=($ReportType['report_fields']['image'] == '1' ? ' <strong><font color="red">(Required)</font></strong>' : '')?>
|
Image(s)<?=($ReportType['report_fields']['image'] == '1' ? ' <strong class="important_text">(Required)</strong>' : '')?>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<input id="image" type="text" name="image" size="50" value="<?=(!empty($_POST['image']) ? display_str($_POST['image']) : '')?>" />
|
<input id="image" type="text" name="image" size="50" value="<?=(!empty($_POST['image']) ? display_str($_POST['image']) : '')?>" />
|
||||||
@ -46,7 +46,7 @@
|
|||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="label">
|
<td class="label">
|
||||||
Track Number(s)<?=($ReportType['report_fields']['track'] == '1' || $ReportType['report_fields']['track'] == '2' ? ' <strong><font color="red">(Required)</font></strong>' : '')?>
|
Track Number(s)<?=($ReportType['report_fields']['track'] == '1' || $ReportType['report_fields']['track'] == '2' ? ' <strong class="important_text">(Required)</strong>' : '')?>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<input id="track" type="text" name="track" size="8" value="<?=(!empty($_POST['track']) ? display_str($_POST['track']) : '')?>" /><?=($ReportType['report_fields']['track'] == '1' ? '<input id="all_tracks" type="checkbox" onclick="AllTracks()" /> All' : '')?>
|
<input id="track" type="text" name="track" size="8" value="<?=(!empty($_POST['track']) ? display_str($_POST['track']) : '')?>" /><?=($ReportType['report_fields']['track'] == '1' ? '<input id="all_tracks" type="checkbox" onclick="AllTracks()" /> All' : '')?>
|
||||||
@ -58,7 +58,7 @@
|
|||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="label">
|
<td class="label">
|
||||||
Link(s) to external source<?=($ReportType['report_fields']['link'] == '1' ? ' <strong><font color="red">(Required)</font></strong>' : '')?>
|
Link(s) to external source<?=($ReportType['report_fields']['link'] == '1' ? ' <strong class="important_text">(Required)</strong>' : '')?>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<input id="link" type="text" name="link" size="50" value="<?=(!empty($_POST['link']) ? display_str($_POST['link']) : '')?>" />
|
<input id="link" type="text" name="link" size="50" value="<?=(!empty($_POST['link']) ? display_str($_POST['link']) : '')?>" />
|
||||||
@ -70,7 +70,7 @@
|
|||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="label">
|
<td class="label">
|
||||||
Permalink to <strong>relevant other</strong> torrent(s)<?=($ReportType['report_fields']['sitelink'] == '1' ? ' <strong><font color="red">(Required)</font></strong>' : '')?>
|
Permalink to <strong>relevant other</strong> torrent(s)<?=($ReportType['report_fields']['sitelink'] == '1' ? ' <strong class="important_text">(Required)</strong>' : '')?>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<input id="sitelink" type="text" name="sitelink" size="50" value="<?=(!empty($_POST['sitelink']) ? display_str($_POST['sitelink']) : '')?>" />
|
<input id="sitelink" type="text" name="sitelink" size="50" value="<?=(!empty($_POST['sitelink']) ? display_str($_POST['sitelink']) : '')?>" />
|
||||||
@ -82,7 +82,7 @@
|
|||||||
?>
|
?>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="label">
|
<td class="label">
|
||||||
Comments <strong><font color="red">(Required)</font></strong>
|
Comments <strong class="important_text">(Required)</strong>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<textarea id="extra" rows="5" cols="60" name="extra"><?=display_str($_POST['extra'])?></textarea>
|
<textarea id="extra" rows="5" cols="60" name="extra"><?=display_str($_POST['extra'])?></textarea>
|
||||||
|
@ -59,7 +59,7 @@
|
|||||||
'report_messages' => array(
|
'report_messages' => array(
|
||||||
'This report type is only for the very urgent reports, usually for personal information being found within a torrent.',
|
'This report type is only for the very urgent reports, usually for personal information being found within a torrent.',
|
||||||
'Abusing the Urgent reports could result in a warning or worse',
|
'Abusing the Urgent reports could result in a warning or worse',
|
||||||
'As by default this report type gives the staff absolutely no information about the problem, please be as clear as possible in your comments as to the problem'
|
'As this report type gives the staff absolutely no information about the problem, please be as clear as possible in your comments about what the problem is.'
|
||||||
),
|
),
|
||||||
'report_fields' => array(
|
'report_fields' => array(
|
||||||
'sitelink' => '0',
|
'sitelink' => '0',
|
||||||
@ -581,7 +581,7 @@
|
|||||||
'warn' => '1',
|
'warn' => '1',
|
||||||
'delete' => '1',
|
'delete' => '1',
|
||||||
'pm' => '[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.10.1]2.10.1[/url]. Cassettes are allowed under strict conditions.
|
'pm' => '[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.10.1]2.10.1[/url]. Cassettes are allowed under strict conditions.
|
||||||
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.10.1.1]2.10.1.1[/url]. Releases available only on cassette may be uploaded under special strict conditions (see [url=http://'.NONSSL_SITE_URL.'/wiki.php?action=article&id=593]this wiki[/url] for information on cassette ripping). Cassette-sourced uploads must be approved by staff first (see [url=http://'.NONSSL_SITE_URL.'/wiki.php?action=article&id=681]this wiki[/url] for details on the approval process). This also applies to soundboard releases where a tape generation can be found in the lineage (either the tape is not in the first generation or there are multiple tape generations). See [url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.6.6]2.6.6[/url] for more information.
|
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.10.1.1]2.10.1.1[/url]. Releases available only on cassette may be uploaded under special strict conditions (see [url=http://'.NONSSL_SITE_URL.'/wiki.php?action=article&id=593]this wiki[/url] for information on cassette ripping). Cassette-sourced uploads must be approved by staff first (see [url=http://'.NONSSL_SITE_URL.'/wiki.php?action=article&id=681]this wiki[/url] for details on the approval process). This also applies to soundboard releases where a tape generation can be found in the lineage (either the tape is not in the first generation or there are multiple tape generations). See [url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.6.6]2.6.6[/url] for more information.
|
||||||
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.10.1.2]2.10.1.2[/url]. You must contact a moderator privately for approval before uploading. Include proof in the form of discography information from a reputable source as well as the spectrals for 2 songs in your message.
|
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.10.1.2]2.10.1.2[/url]. You must contact a moderator privately for approval before uploading. Include proof in the form of discography information from a reputable source as well as the spectrals for 2 songs in your message.
|
||||||
Your torrent was reported because it contains an unapproved cassette rip.'
|
Your torrent was reported because it contains an unapproved cassette rip.'
|
||||||
)
|
)
|
||||||
@ -619,7 +619,7 @@
|
|||||||
'upload' => '0',
|
'upload' => '0',
|
||||||
'warn' => '0',
|
'warn' => '0',
|
||||||
'delete' => '0',
|
'delete' => '0',
|
||||||
'pm' => '[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.3]2.2.10.3[/url]. A FLAC upload with an EAC or XLD rip log that scores 100% on the log checker replaces one with a lower score... . Note: A FLAC upload with a log that scores 95% for not defeating the audio cache may be rescored to 100% following the procedure outlined in [url=http://'.NONSSL_SITE_URL.'/wiki.php?action=article&id=219]this wiki[/url].
|
'pm' => '[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.3]2.2.10.3[/url]. A FLAC upload with an EAC or XLD rip log that scores 100% on the log checker replaces one with a lower score... . Note: A FLAC upload with a log that scores 95% for not defeating the audio cache may be rescored to 100% following the procedure outlined in [url=http://'.NONSSL_SITE_URL.'/wiki.php?action=article&id=219]this wiki[/url].
|
||||||
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.5]2.2.10.5[/url]. XLD and EAC logs in languages other than English require a manual log checker score adjustment by staff.
|
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.5]2.2.10.5[/url]. XLD and EAC logs in languages other than English require a manual log checker score adjustment by staff.
|
||||||
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.6.2]2.2.10.6.2[/url]. If you created a CD range rip that has matching CRCs for test and copy, and where every track has an AccurateRip score of 2 or more, then you may submit your torrent for manual score adjustment.
|
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.6.2]2.2.10.6.2[/url]. If you created a CD range rip that has matching CRCs for test and copy, and where every track has an AccurateRip score of 2 or more, then you may submit your torrent for manual score adjustment.
|
||||||
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.9.2]2.2.10.9.2[/url]. If you find that an appended log has not been scored properly, please report the torrent and use the log rescore option.
|
[url=http://'.NONSSL_SITE_URL.'/rules.php?p=upload#r2.2.10.9.2]2.2.10.9.2[/url]. If you find that an appended log has not been scored properly, please report the torrent and use the log rescore option.
|
||||||
|
@ -249,7 +249,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if($Warning > 0) {
|
if($Warning > 0) {
|
||||||
$PM .= "\nThis has resulted in a [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&id=218]".$Warning." week warning.[/url]\n";
|
$PM .= "\nThis has resulted in a [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&id=218]".$Warning." week warning.[/url]\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
if($Upload) {
|
if($Upload) {
|
||||||
|
@ -155,7 +155,7 @@
|
|||||||
<tr id="artist_tr">
|
<tr id="artist_tr">
|
||||||
<td class="label">Artist(s)</td>
|
<td class="label">Artist(s)</td>
|
||||||
<td id="artistfields">
|
<td id="artistfields">
|
||||||
<p id="vawarning" class="hidden">Please use the multiple artists feature rather than adding 'Various Artists' as an artist, read <a href='wiki.php?action=article&id=369'>this</a> for more information on why.</p>
|
<p id="vawarning" class="hidden">Please use the multiple artists feature rather than adding 'Various Artists' as an artist, read <a href='wiki.php?action=article&id=369'>this</a> for more information on why.</p>
|
||||||
<?
|
<?
|
||||||
|
|
||||||
if(!empty($ArtistForm)) {
|
if(!empty($ArtistForm)) {
|
||||||
@ -343,7 +343,7 @@
|
|||||||
<a href="torrents.php?id=<?=$GroupID?>">https://what.cd/torrents.php?id=<?=$GroupID?></a><br />
|
<a href="torrents.php?id=<?=$GroupID?>">https://what.cd/torrents.php?id=<?=$GroupID?></a><br />
|
||||||
This request <?=($NewRequest?'will be':'is')?> associated with the above torrent group.
|
This request <?=($NewRequest?'will be':'is')?> associated with the above torrent group.
|
||||||
<? if (!$NewRequest) { ?>
|
<? if (!$NewRequest) { ?>
|
||||||
If this is incorrect, please <a href="reports.php?action=report&type=request&id=<?=$RequestID?>">report this request</a> so that staff can fix it.
|
If this is incorrect, please <a href="reports.php?action=report&type=request&id=<?=$RequestID?>">report this request</a> so that staff can fix it.
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<input type="hidden" name="groupid" value="<?=$GroupID?>" />
|
<input type="hidden" name="groupid" value="<?=$GroupID?>" />
|
||||||
</td>
|
</td>
|
||||||
|
@ -438,8 +438,10 @@
|
|||||||
<tr id="format_list">
|
<tr id="format_list">
|
||||||
<td class="label">Formats</td>
|
<td class="label">Formats</td>
|
||||||
<td>
|
<td>
|
||||||
<input type="checkbox" id="toggle_formats" onchange="Toggle('formats', 0);" <?=(!$Submitted || !empty($FormatArray) && count($FormatArray) == count($Formats) ? ' checked="checked"' : '')?>/> <label for="toggle_formats">All</label>
|
<input type="checkbox" id="toggle_formats" onchange="Toggle('formats', 0);" <?=(!$Submitted || !empty($FormatArray) && count($FormatArray) == count($Formats) ? ' checked="checked"' : '')?>/>
|
||||||
<input type="checkbox" id="formats_strict" name="formats_strict"<?=(!empty($_GET['formats_strict']) ? ' checked="checked"' : '')?> /> <label for="formats_strict">Only selected</label>
|
<label for="toggle_formats">All</label>
|
||||||
|
<input type="checkbox" id="formats_strict" name="formats_strict"<?=(!empty($_GET['formats_strict']) ? ' checked="checked"' : '')?> />
|
||||||
|
<label for="formats_strict">Only specified</label>
|
||||||
<? foreach ($Formats as $Key => $Val) {
|
<? foreach ($Formats as $Key => $Val) {
|
||||||
if($Key % 8 == 0) echo "<br />";?>
|
if($Key % 8 == 0) echo "<br />";?>
|
||||||
<input type="checkbox" name="formats[]" value="<?=$Key?>" id="format_<?=$Key?>"
|
<input type="checkbox" name="formats[]" value="<?=$Key?>" id="format_<?=$Key?>"
|
||||||
@ -451,8 +453,10 @@
|
|||||||
<tr id="bitrate_list">
|
<tr id="bitrate_list">
|
||||||
<td class="label">Bitrates</td>
|
<td class="label">Bitrates</td>
|
||||||
<td>
|
<td>
|
||||||
<input type="checkbox" id="toggle_bitrates" onchange="Toggle('bitrates', 0);"<?=(!$Submitted || !empty($BitrateArray) && count($BitrateArray) == count($Bitrates) ? ' checked="checked"' : '')?> /> <label for="toggle_bitrates">All</label>
|
<input type="checkbox" id="toggle_bitrates" onchange="Toggle('bitrates', 0);"<?=(!$Submitted || !empty($BitrateArray) && count($BitrateArray) == count($Bitrates) ? ' checked="checked"' : '')?> />
|
||||||
<input type="checkbox" id="bitrate_strict" name="bitrate_strict"<?=(!empty($_GET['bitrate_strict']) ? ' checked="checked"' : '')?>/> <label for="bitrate_strict">Only selected</label>
|
<label for="toggle_bitrates">All</label>
|
||||||
|
<input type="checkbox" id="bitrate_strict" name="bitrate_strict"<?=(!empty($_GET['bitrate_strict']) ? ' checked="checked"' : '')?>/>
|
||||||
|
<label for="bitrate_strict">Only specified</label>
|
||||||
<? foreach ($Bitrates as $Key => $Val) {
|
<? foreach ($Bitrates as $Key => $Val) {
|
||||||
if($Key % 8 == 0) echo "<br />";?>
|
if($Key % 8 == 0) echo "<br />";?>
|
||||||
<input type="checkbox" name="bitrates[]" value="<?=$Key?>" id="bitrate_<?=$Key?>"
|
<input type="checkbox" name="bitrates[]" value="<?=$Key?>" id="bitrate_<?=$Key?>"
|
||||||
@ -464,8 +468,10 @@
|
|||||||
<tr id="media_list">
|
<tr id="media_list">
|
||||||
<td class="label">Media</td>
|
<td class="label">Media</td>
|
||||||
<td>
|
<td>
|
||||||
<input type="checkbox" id="toggle_media" onchange="Toggle('media', 0);"<?=(!$Submitted || !empty($MediaArray) && count($MediaArray) == count($Media) ? ' checked="checked"' : '')?> /> <label for="toggle_media">All</label>
|
<input type="checkbox" id="toggle_media" onchange="Toggle('media', 0);"<?=(!$Submitted || !empty($MediaArray) && count($MediaArray) == count($Media) ? ' checked="checked"' : '')?> />
|
||||||
<input type="checkbox" id="media_strict" name="media_strict"<?=(!empty($_GET['media_strict']) ? ' checked="checked"' : '')?> /> <label for="media_strict">Only selected</label>
|
<label for="toggle_media">All</label>
|
||||||
|
<input type="checkbox" id="media_strict" name="media_strict"<?=(!empty($_GET['media_strict']) ? ' checked="checked"' : '')?> />
|
||||||
|
<label for="media_strict">Only specified</label>
|
||||||
<? foreach ($Media as $Key => $Val) {
|
<? foreach ($Media as $Key => $Val) {
|
||||||
if($Key % 8 == 0) echo "<br />";?>
|
if($Key % 8 == 0) echo "<br />";?>
|
||||||
<input type="checkbox" name="media[]" value="<?=$Key?>" id="media_<?=$Key?>"
|
<input type="checkbox" name="media[]" value="<?=$Key?>" id="media_<?=$Key?>"
|
||||||
|
@ -72,7 +72,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(time_ago($UploadTime) < 3600 && $UploaderID != $FillerID && !check_perms('site_moderate_requests')) {
|
if(time_ago($UploadTime) < 3600 && $UploaderID != $FillerID && !check_perms('site_moderate_requests')) {
|
||||||
$Err = "There is a one hour grace period for new uploads, to allow the torrent's uploader to fill the request";
|
$Err = "There is a one hour grace period for new uploads to allow the torrent's uploader to fill the request.";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -94,10 +94,10 @@
|
|||||||
|
|
||||||
|
|
||||||
if(!empty($OldTorrentID)) {
|
if(!empty($OldTorrentID)) {
|
||||||
$Err = "This request has already been filled";
|
$Err = "This request has already been filled.";
|
||||||
}
|
}
|
||||||
if($RequestCategoryID != 0 && $TorrentCategoryID != $RequestCategoryID) {
|
if($RequestCategoryID != 0 && $TorrentCategoryID != $RequestCategoryID) {
|
||||||
$Err = "This torrent is of a different category than the request";
|
$Err = "This torrent is of a different category than the request. If the request is actually miscategorized, please contact staff.";
|
||||||
}
|
}
|
||||||
|
|
||||||
$CategoryName = $Categories[$RequestCategoryID - 1];
|
$CategoryName = $Categories[$RequestCategoryID - 1];
|
||||||
@ -116,7 +116,7 @@
|
|||||||
//if($Format == "FLAC" && $LogCue && !$WEBOverride && !$VinylOverride) {
|
//if($Format == "FLAC" && $LogCue && !$WEBOverride && !$VinylOverride) {
|
||||||
if($Format == "FLAC" && $LogCue && $Media == 'CD') {
|
if($Format == "FLAC" && $LogCue && $Media == 'CD') {
|
||||||
if(strpos($LogCue, "Log") && !$HasLog) {
|
if(strpos($LogCue, "Log") && !$HasLog) {
|
||||||
$Err = "This request requires a log";
|
$Err = "This request requires a log.";
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -124,33 +124,33 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
//if(strpos($LogCue, "Cue") && !$HasCue) {
|
//if(strpos($LogCue, "Cue") && !$HasCue) {
|
||||||
// $Err = "This request requires a cue";
|
// $Err = "This request requires a cue.";
|
||||||
//}
|
//}
|
||||||
|
|
||||||
if(strpos($LogCue, "%")) {
|
if(strpos($LogCue, "%")) {
|
||||||
preg_match("/\d+/", $LogCue, $Matches);
|
preg_match("/\d+/", $LogCue, $Matches);
|
||||||
if((int) $LogScore < (int) $Matches[0]) {
|
if((int) $LogScore < (int) $Matches[0]) {
|
||||||
$Err = "This torrent's log score is too low";
|
$Err = "This torrent's log score is too low.";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($BitrateList === "Other") {
|
if ($BitrateList === "Other") {
|
||||||
if ($Bitrate === "Lossless" || $Bitrate === "APS (VBR)" || $Bitrate === "V2 (VBR)" || $Bitrate === "V1 (VBR)" || $Bitrate === "256" || $Bitrate === "APX (VBR)" || $Bitrate === "V0 (VBR)" || $Bitrate === "q8.x (VBR)" || $Bitrate === "320" || $Bitrate === "24bit Lossless")
|
if ($Bitrate === "Lossless" || $Bitrate === "APS (VBR)" || $Bitrate === "V2 (VBR)" || $Bitrate === "V1 (VBR)" || $Bitrate === "256" || $Bitrate === "APX (VBR)" || $Bitrate === "V0 (VBR)" || $Bitrate === "q8.x (VBR)" || $Bitrate === "320" || $Bitrate === "24bit Lossless")
|
||||||
$Err = $Bitrate." is not allowed bitrate for this request";
|
$Err = $Bitrate." is not an allowed bitrate for this request.";
|
||||||
} else if($BitrateList && $BitrateList != "Any") {
|
} else if($BitrateList && $BitrateList != "Any") {
|
||||||
if(strpos($BitrateList, $Bitrate) === false) {
|
if(strpos($BitrateList, $Bitrate) === false) {
|
||||||
$Err = $Bitrate." is not an allowed bitrate for this request";
|
$Err = $Bitrate." is not an allowed bitrate for this request.";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if($FormatList && $FormatList != "Any") {
|
if($FormatList && $FormatList != "Any") {
|
||||||
if(strpos($FormatList, $Format) === false) {
|
if(strpos($FormatList, $Format) === false) {
|
||||||
$Err = $Format." is not an allowed format for this request";
|
$Err = $Format." is not an allowed format for this request.";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if($MediaList && $MediaList != "Any") {
|
if($MediaList && $MediaList != "Any") {
|
||||||
if(strpos($MediaList, $Media) === false) {
|
if(strpos($MediaList, $Media) === false) {
|
||||||
$Err = $Media." is not allowed media for this request";
|
$Err = $Media." is not allowed media for this request.";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -181,7 +181,7 @@
|
|||||||
$UserIDs = $DB->to_array();
|
$UserIDs = $DB->to_array();
|
||||||
foreach ($UserIDs as $User) {
|
foreach ($UserIDs as $User) {
|
||||||
list($VoterID) = $User;
|
list($VoterID) = $User;
|
||||||
send_pm($VoterID, 0, db_string("The request '".$FullName."' has been filled"), db_string("One of your requests - [url=http://".NONSSL_SITE_URL."/requests.php?action=view&id=".$RequestID."]".$FullName."[/url] - has been filled. You can view it at [url]http://".NONSSL_SITE_URL."/torrents.php?torrentid=".$TorrentID), '');
|
send_pm($VoterID, 0, db_string("The request '".$FullName."' has been filled"), db_string("One of your requests - [url=http://".NONSSL_SITE_URL."/requests.php?action=view&id=".$RequestID."]".$FullName."[/url] - has been filled. You can view it at [url]http://".NONSSL_SITE_URL."/torrents.php?torrentid=".$TorrentID."[/url]"), '');
|
||||||
}
|
}
|
||||||
|
|
||||||
$RequestVotes = get_votes_array($RequestID);
|
$RequestVotes = get_votes_array($RequestID);
|
||||||
|
@ -52,15 +52,15 @@
|
|||||||
} else {
|
} else {
|
||||||
$DB->query("UPDATE users_main SET Uploaded = Uploaded - ".$RequestVotes['TotalBounty']." WHERE ID = ".$FillerID);
|
$DB->query("UPDATE users_main SET Uploaded = Uploaded - ".$RequestVotes['TotalBounty']." WHERE ID = ".$FillerID);
|
||||||
}
|
}
|
||||||
send_pm($FillerID, 0, db_string("A request you filled has been unfilled"), db_string("The request '[url=http://".NONSSL_SITE_URL."/requests.php?action=view&id=".$RequestID."]".$FullName."[/url]' was unfilled by [url=http://".NONSSL_SITE_URL."/user.php?id=".$LoggedUser['ID']."]".$LoggedUser['Username']."[/url] for the reason: ".$_POST['reason']));
|
send_pm($FillerID, 0, db_string("A request you filled has been unfilled"), db_string("The request '[url=http://".NONSSL_SITE_URL."/requests.php?action=view&id=".$RequestID."]".$FullName."[/url]' was unfilled by [url=http://".NONSSL_SITE_URL."/user.php?id=".$LoggedUser['ID']."]".$LoggedUser['Username']."[/url] for the reason: ".$_POST['reason']));
|
||||||
|
|
||||||
$Cache->delete_value('user_stats_'.$FillerID);
|
$Cache->delete_value('user_stats_'.$FillerID);
|
||||||
|
|
||||||
if($UserID != $LoggedUser['ID']) {
|
if($UserID != $LoggedUser['ID']) {
|
||||||
send_pm($UserID, 0, db_string("A request you created has been unfilled"), db_string("The request '[url=http://".NONSSL_SITE_URL."/requests.php?action=view&id=".$RequestID."]".$FullName."[/url]' was unfilled by [url=http://".NONSSL_SITE_URL."/user.php?id=".$LoggedUser['ID']."]".$LoggedUser['Username']."[/url] for the reason: ".$_POST['reason']));
|
send_pm($UserID, 0, db_string("A request you created has been unfilled"), db_string("The request '[url=http://".NONSSL_SITE_URL."/requests.php?action=view&id=".$RequestID."]".$FullName."[/url]' was unfilled by [url=http://".NONSSL_SITE_URL."/user.php?id=".$LoggedUser['ID']."]".$LoggedUser['Username']."[/url] for the reason: ".$_POST['reason']));
|
||||||
}
|
}
|
||||||
|
|
||||||
write_log("Request $RequestID ($FullName), with a ".get_size($RequestVotes['TotalBounty'])." bounty, was un-filled by user ".$LoggedUser['ID']." (".$LoggedUser['Username'].") for the reason: ".$_POST['reason']);
|
write_log("Request $RequestID ($FullName), with a ".get_size($RequestVotes['TotalBounty'])." bounty, was unfilled by user ".$LoggedUser['ID']." (".$LoggedUser['Username'].") for the reason: ".$_POST['reason']);
|
||||||
|
|
||||||
$Cache->delete_value('request_'.$RequestID);
|
$Cache->delete_value('request_'.$RequestID);
|
||||||
$Cache->delete_value('request_artists_'.$RequestID);
|
$Cache->delete_value('request_artists_'.$RequestID);
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
show_header('Uploading Rules');
|
show_header('Uploading Rules');
|
||||||
?>
|
?>
|
||||||
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script>
|
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.0/jquery.min.js"></script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">//<![CDATA[
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
var original_value = $('#search_string').val();
|
var original_value = $('#search_string').val();
|
||||||
$('#search_string').keyup(function() {
|
$('#search_string').keyup(function() {
|
||||||
@ -37,10 +37,14 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
</script>
|
//]]></script>
|
||||||
<!-- Uploading Rules -->
|
<!-- Uploading Rules -->
|
||||||
<div class="thin">
|
<div class="thin">
|
||||||
|
<div class="header">
|
||||||
|
<h2>Uploading</h2>
|
||||||
|
</div>
|
||||||
<!-- Uploading Rules Index Links -->
|
<!-- Uploading Rules Index Links -->
|
||||||
|
<br />
|
||||||
<input type="text" id="search_string" value="Filter (empty to reset)" />
|
<input type="text" id="search_string" value="Filter (empty to reset)" />
|
||||||
<span id="Index">Example: The search term <strong>FLAC</strong> returns all rules containing <strong>FLAC</strong>. The search term <strong>FLAC+trump</strong> returns all rules containing both <strong>FLAC</strong> and <strong>trump</strong>.</span>
|
<span id="Index">Example: The search term <strong>FLAC</strong> returns all rules containing <strong>FLAC</strong>. The search term <strong>FLAC+trump</strong> returns all rules containing both <strong>FLAC</strong> and <strong>trump</strong>.</span>
|
||||||
<br />
|
<br />
|
||||||
@ -58,7 +62,7 @@
|
|||||||
<li id="h2k"><a href="#h2">2. <strong>Music</strong></a>
|
<li id="h2k"><a href="#h2">2. <strong>Music</strong></a>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="h2.1k"><a href="#h2.1">2.1. <strong>General</strong></a></li>
|
<li id="h2.1k"><a href="#h2.1">2.1. <strong>General</strong></a></li>
|
||||||
<li id="h2.2k"><a href="#h2.2">2.2. <strong>Duplicates & Trumping</strong></a>
|
<li id="h2.2k"><a href="#h2.2">2.2. <strong>Duplicates & Trumping</strong></a>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.9k"><a href="#r2.2.9">2.2.9. <strong>Lossy rules</strong></a></li>
|
<li id="r2.2.9k"><a href="#r2.2.9">2.2.9. <strong>Lossy rules</strong></a></li>
|
||||||
<li id="r2.2.10k"><a href="#r2.2.10">2.2.10. <strong>Lossless rules</strong></a></li>
|
<li id="r2.2.10k"><a href="#r2.2.10">2.2.10. <strong>Lossless rules</strong></a></li>
|
||||||
@ -80,22 +84,22 @@
|
|||||||
<li id="h2.10k"><a href="#h2.10">2.10. <strong>Cassettes</strong></a></li>
|
<li id="h2.10k"><a href="#h2.10">2.10. <strong>Cassettes</strong></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="h3k"><a href="#h3">3. <strong>Comedy (Audio) & Audiobooks</strong></a></li>
|
<li id="h3k"><a href="#h3">3. <strong>Comedy (Audio) & Audiobooks</strong></a></li>
|
||||||
<li id="h4k"><a href="#h4">4. <strong>Applications</strong></a>
|
<li id="h4k"><a href="#h4">4. <strong>Applications</strong></a>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="h4.1k"><a href="#h4.1">4.1. <strong>General</strong></a></li>
|
<li id="h4.1k"><a href="#h4.1">4.1. <strong>General</strong></a></li>
|
||||||
<li id="h4.2k"><a href="#h4.2">4.2. <strong>Duplicates & Trumping</strong></a></li>
|
<li id="h4.2k"><a href="#h4.2">4.2. <strong>Duplicates & Trumping</strong></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="h5k"><a href="#h5">5. <strong>Comic Books</strong></a>
|
<li id="h5k"><a href="#h5">5. <strong>Comic Books</strong></a>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="h5.1k"><a href="#h5.1">5.1. <strong>General</strong></a></li>
|
<li id="h5.1k"><a href="#h5.1">5.1. <strong>General</strong></a></li>
|
||||||
<li id="h5.2k"><a href="#h5.2">5.2. <strong>Multi-comic</strong></a></li>
|
<li id="h5.2k"><a href="#h5.2">5.2. <strong>Multi-comic</strong></a></li>
|
||||||
<li id="h5.3k"><a href="#h5.3">5.3. <strong>Duplicates & Trumping</strong></a></li>
|
<li id="h5.3k"><a href="#h5.3">5.3. <strong>Duplicates & Trumping</strong></a></li>
|
||||||
<li id="h5.4k"><a href="#h5.4">5.4. <strong>Formatting</strong></a></li>
|
<li id="h5.4k"><a href="#h5.4">5.4. <strong>Formatting</strong></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="h6k"><a href="#h6">6. <strong>ebooks, eLearning Books & Sheet Music</strong></a></li>
|
<li id="h6k"><a href="#h6">6. <strong>ebooks, eLearning Books & Sheet Music</strong></a></li>
|
||||||
<li id="h7k"><a href="#h7">7. <strong>eLearning Videos</strong></a></li>
|
<li id="h7k"><a href="#h7">7. <strong>eLearning Videos</strong></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@ -106,7 +110,7 @@
|
|||||||
<h4 id="Intro"><a href="#Introk"><strong>↑</strong></a> Introduction</h4>
|
<h4 id="Intro"><a href="#Introk"><strong>↑</strong></a> Introduction</h4>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<p>The uploading rules below are overwhelmingly long and detailed for a reason. The length is necessary to explain the rules clearly and thoroughly. A summary of each rule is in <span style="font-weight: bold;">bold text</span> before the actual rule for easier reading. You may also find the corresponding rule sections in the <a href="#Index">Index</a>. The corresponding <a href="#">↑</a> (move one level up) and <a href="#Index">rule section links</a> (move down into the document) help provide quick navigation.</p>
|
<p>The uploading rules below are overwhelmingly long and detailed for a reason. The length is necessary to explain the rules clearly and thoroughly. A summary of each rule is in <span style="font-weight: bold;">bold text</span> before the actual rule for easier reading. You may also find the corresponding rule sections in the <a href="#Index">Index</a>. The corresponding <a href="#">↑</a> (move one level up) and <a href="#Index">rule section links</a> (move down into the document) help provide quick navigation.</p>
|
||||||
<p>Before you upload anything, if you are still unsure of what a rule means, PLEASE ask your questions at any of the following points of site user support: <a href="staff.php">First-Line Support</a>, <a href="forums.php?action=viewforum&forumid=8">The Help Forum</a>, or <a href="wiki.php?action=article&name=IRC">#what.cd-help on IRC</a>. Privately message a <a href="staff.php">moderator</a> on the site if other support has directed you to a moderator or if support has been unhelpful in your particular case. If you find any dead links in the upload rules, let a <a href="staff.php">staff member</a> know so it can be promptly fixed.</p>
|
<p>Before you upload anything, if you are still unsure of what a rule means, PLEASE ask your questions at any of the following points of site user support: <a href="staff.php">First-Line Support</a>, <a href="forums.php?action=viewforum&forumid=8">The Help Forum</a>, or <a href="wiki.php?action=article&name=IRC">#what.cd-help on IRC</a>. Privately message a <a href="staff.php">moderator</a> on the site if other support has directed you to a moderator or if support has been unhelpful in your particular case. If you find any dead links in the upload rules, let a <a href="staff.php">staff member</a> know so it can be promptly fixed.</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<h4 id="h1"><a href="#h1k"><strong>↑</strong></a> <a href="#h1">1.</a> Uploading Rules</h4>
|
<h4 id="h1"><a href="#h1k"><strong>↑</strong></a> <a href="#h1">1.</a> Uploading Rules</h4>
|
||||||
@ -119,12 +123,13 @@
|
|||||||
<li id="r1.1.3"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.3">1.1.3.</a> <strong>No freely available content in non-music sections.</strong> If you could just download something from the web, so can everyone else. Each main section explains in greater detail what "freely available" means in the context of that section. See <a href="#r2.1.9">2.1.9</a> in regards to freely available music. See <a href="#r4.1.3">4.1.3</a> in regards to freely available applications.</li>
|
<li id="r1.1.3"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.3">1.1.3.</a> <strong>No freely available content in non-music sections.</strong> If you could just download something from the web, so can everyone else. Each main section explains in greater detail what "freely available" means in the context of that section. See <a href="#r2.1.9">2.1.9</a> in regards to freely available music. See <a href="#r4.1.3">4.1.3</a> in regards to freely available applications.</li>
|
||||||
<li id="r1.1.4"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.4">1.1.4.</a> <strong>Seed complete copies of your uploads.</strong> Do not upload a torrent unless you intend to seed until there are at least 1.0 distributed copies. Seeding past this minimum is strongly encouraged.</li>
|
<li id="r1.1.4"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.4">1.1.4.</a> <strong>Seed complete copies of your uploads.</strong> Do not upload a torrent unless you intend to seed until there are at least 1.0 distributed copies. Seeding past this minimum is strongly encouraged.</li>
|
||||||
<li id="r1.1.5"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.5">1.1.5.</a> <strong>No advertisements.</strong> Do not advertise other sites or groups in torrent descriptions, torrent directories, torrent file names, or torrent contents. We have no advertising and neither should you. Exceptions: Additional information about an artist, album, or band is acceptable, and is not considered advertising. Also, .nfo files in scene releases are not considered advertising.</li>
|
<li id="r1.1.5"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.5">1.1.5.</a> <strong>No advertisements.</strong> Do not advertise other sites or groups in torrent descriptions, torrent directories, torrent file names, or torrent contents. We have no advertising and neither should you. Exceptions: Additional information about an artist, album, or band is acceptable, and is not considered advertising. Also, .nfo files in scene releases are not considered advertising.</li>
|
||||||
<li id="r1.1.6"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.6">1.1.6.</a> <strong>Archived files in uploads are not allowed.</strong> Exceptions: The sections that allow archived files (e.g., zip, rar, iso, etc.) are the following:</li>
|
<li id="r1.1.6"><a href="#h1.1"><strong>↑_</strong></a> <a href="#r1.1.6">1.1.6.</a> <strong>Archived files in uploads are not allowed.</strong> Exceptions: The sections that allow archived files (e.g., zip, rar, iso, etc.) are the following:
|
||||||
<ul>
|
<ul>
|
||||||
<li>Comic Books (.cbr and .cbz).</li>
|
<li>Comic Books (.cbr and .cbz).</li>
|
||||||
<li>Scene released torrents in non-music categories.</li>
|
<li>Scene released torrents in non-music categories.</li>
|
||||||
<li>Sheet music may be individually archived.</li>
|
<li>Sheet music may be individually archived.</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<h5 id="h1.2"><a href="#h1.2k"><strong>↑</strong></a> <a href="#h1.2">1.2.</a> Specifically Banned</h5>
|
<h5 id="h1.2"><a href="#h1.2k"><strong>↑</strong></a> <a href="#h1.2">1.2.</a> Specifically Banned</h5>
|
||||||
@ -167,16 +172,16 @@
|
|||||||
</li>
|
</li>
|
||||||
<li id="r2.1.2"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.2">2.1.2.</a> <strong>No transcodes or re-encodes of lossy releases are acceptable here.</strong>
|
<li id="r2.1.2"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.2">2.1.2.</a> <strong>No transcodes or re-encodes of lossy releases are acceptable here.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.1.2.1"><a href="#r2.1.2"><strong>↑_</strong></a> <a href="#r2.1.2.1">2.1.2.1.</a> <strong>The only acceptable transcodes are releases that were transcoded from a lossless source (e.g., CD, SBD, DAT, Vinyl, SACD, or LPCM).</strong> Please refer to <a href="wiki.php?action=article&id=14">this wiki</a> for more information on transcodes and how to detect them.</li>
|
<li id="r2.1.2.1"><a href="#r2.1.2"><strong>↑_</strong></a> <a href="#r2.1.2.1">2.1.2.1.</a> <strong>The only acceptable transcodes are releases that were transcoded from a lossless source (e.g., CD, SBD, DAT, Vinyl, SACD, or LPCM).</strong> Please refer to <a href="wiki.php?action=article&id=14">this wiki</a> for more information on transcodes and how to detect them.</li>
|
||||||
<li id="r2.1.2.2"><a href="#r2.1.2"><strong>↑_</strong></a> <a href="#r2.1.2.2">2.1.2.2.</a> <strong>Official lossy-mastered releases are not considered transcodes.</strong> They are allowed on the site. See <a href="wiki.php?action=article&id=364">this wiki</a> for further information.</li>
|
<li id="r2.1.2.2"><a href="#r2.1.2"><strong>↑_</strong></a> <a href="#r2.1.2.2">2.1.2.2.</a> <strong>Official lossy-mastered releases are not considered transcodes.</strong> They are allowed on the site. See <a href="wiki.php?action=article&id=364">this wiki</a> for further information.</li>
|
||||||
<li id="r2.1.2.3"><a href="#r2.1.2"><strong>↑_</strong></a> <a href="#r2.1.2.3">2.1.2.3.</a> <strong>Releases from Bandcamp, Beatport, and similar online retailers are considered official lossy-mastered releases when lossy mastered by the artist or label.</strong> A non-lossy mastered release from any source may trump a lossy mastered release from a WEB source. And if the same WEB retailer revises their release and subsequently supplies a non-lossy mastered release, the new source may trump the original upload.</li>
|
<li id="r2.1.2.3"><a href="#r2.1.2"><strong>↑_</strong></a> <a href="#r2.1.2.3">2.1.2.3.</a> <strong>Releases from Bandcamp, Beatport, and similar online retailers are considered official lossy-mastered releases when lossy mastered by the artist or label.</strong> A non-lossy mastered release from any source may trump a lossy mastered release from a WEB source. And if the same WEB retailer revises their release and subsequently supplies a non-lossy mastered release, the new source may trump the original upload.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.1.3"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.3">2.1.3.</a> <strong>Music releases must have an average bitrate of at least 192 kbps regardless of the format.</strong> Exceptions: The following VBR encodes may go under the 192 kbps limit: LAME V2 (VBR), V1 (VBR), V0 (VBR), APS (VBR), APX (VBR), MP3 192 (VBR), and AAC ~192 (VBR) to AAC ~256 (VBR) releases. See <a href="wiki.php?action=article&id=11">this wiki</a> for more information on encoding options.</li>
|
<li id="r2.1.3"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.3">2.1.3.</a> <strong>Music releases must have an average bitrate of at least 192 kbps regardless of the format.</strong> Exceptions: The following VBR encodes may go under the 192 kbps limit: LAME V2 (VBR), V1 (VBR), V0 (VBR), APS (VBR), APX (VBR), MP3 192 (VBR), and AAC ~192 (VBR) to AAC ~256 (VBR) releases. See <a href="wiki.php?action=article&id=11">this wiki</a> for more information on encoding options.</li>
|
||||||
<li id="r2.1.4"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.4">2.1.4.</a> <strong>Bitrates must accurately reflect encoder presets or the average bitrate of the audio files.</strong> You are responsible for supplying correct format and bitrate information on the <a href="upload.php">upload page</a>. See <a href="wiki.php?action=article&id=714">this wiki</a> for further information.</li>
|
<li id="r2.1.4"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.4">2.1.4.</a> <strong>Bitrates must accurately reflect encoder presets or the average bitrate of the audio files.</strong> You are responsible for supplying correct format and bitrate information on the <a href="upload.php">upload page</a>. See <a href="wiki.php?action=article&id=714">this wiki</a> for further information.</li>
|
||||||
<li id="r2.1.5"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.5">2.1.5.</a> <strong>Albums must not be ripped or uploaded as a single track.</strong>
|
<li id="r2.1.5"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.5">2.1.5.</a> <strong>Albums must not be ripped or uploaded as a single track.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.1.5.1"><a href="#r2.1.5"><strong>↑_</strong></a> <a href="#r2.1.5.1">2.1.5.1.</a> <strong>If the tracks on the original CD were separate, you must rip them to separate files.</strong> Unsplit rips may be present on the site but are NOT the preferred format for lossless rips. Any unsplit FLAC rips lacking a cue sheet will be deleted outright. Any unsplit FLAC rip that includes a cue sheet will be trumpable by a properly split FLAC torrent. CDs with single tracks can be uploaded without prior splitting. See <a href="wiki.php?action=article&id=947">this wiki</a> for information on unsplit rips. Information about splitting rips can be <a href="wiki.php?action=article&id=111">found here</a>. Users who upload unsplit rips will be warned.</li>
|
<li id="r2.1.5.1"><a href="#r2.1.5"><strong>↑_</strong></a> <a href="#r2.1.5.1">2.1.5.1.</a> <strong>If the tracks on the original CD were separate, you must rip them to separate files.</strong> Unsplit rips may be present on the site but are NOT the preferred format for lossless rips. Any unsplit FLAC rips lacking a cue sheet will be deleted outright. Any unsplit FLAC rip that includes a cue sheet will be trumpable by a properly split FLAC torrent. CDs with single tracks can be uploaded without prior splitting. See <a href="wiki.php?action=article&id=947">this wiki</a> for information on unsplit rips. Information about splitting rips can be <a href="wiki.php?action=article&id=111">found here</a>. Users who upload unsplit rips will be warned.</li>
|
||||||
<li id="r2.1.5.2"><a href="#r2.1.5"><strong>↑_</strong></a> <a href="#r2.1.5.2">2.1.5.2.</a> <strong>Gapless DJ or professional mixes released as MP3+CUE images are allowed as unseparated album images on the site.</strong> This includes scene DJ mixes. You cannot take a previously split collection of tracks and upload it as an unsplit mix because the original form of those audio tracks was not a single unsplit file. Such torrents will be removed when reported. Split and unsplit versions do not count as duplicates of one another and may coexist.</li>
|
<li id="r2.1.5.2"><a href="#r2.1.5"><strong>↑_</strong></a> <a href="#r2.1.5.2">2.1.5.2.</a> <strong>Gapless DJ or professional mixes released as MP3+CUE images are allowed as unseparated album images on the site.</strong> This includes scene DJ mixes. You cannot take a previously split collection of tracks and upload it as an unsplit mix because the original form of those audio tracks was not a single unsplit file. Such torrents will be removed when reported. Split and unsplit versions do not count as duplicates of one another and may coexist.</li>
|
||||||
<li id="r2.1.5.3"><a href="#r2.1.5"><strong>↑_</strong></a> <a href="#r2.1.5.3">2.1.5.3.</a> <strong>For albums that contain separate tracks, unsplit MP3 albums are allowed for continuous albums and mixes only and must include a cue sheet.</strong> If there is no reason for the album to be uploaded unsplit, or if the torrent is lacking a cue sheet, it will be deleted. Exception: If the retail version of an unsplit MP3 album is sold without a cue sheet, you may upload the unsplit rip without a cue sheet.</li>
|
<li id="r2.1.5.3"><a href="#r2.1.5"><strong>↑_</strong></a> <a href="#r2.1.5.3">2.1.5.3.</a> <strong>For albums that contain separate tracks, unsplit MP3 albums are allowed for continuous albums and mixes only and must include a cue sheet.</strong> If there is no reason for the album to be uploaded unsplit, or if the torrent is lacking a cue sheet, it will be deleted. Exception: If the retail version of an unsplit MP3 album is sold without a cue sheet, you may upload the unsplit rip without a cue sheet.</li>
|
||||||
</ul>
|
</ul>
|
||||||
@ -192,18 +197,18 @@
|
|||||||
<li id="r2.1.8"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.8">2.1.8.</a> <strong>Music not sourced from vinyl must not contain pops, clicks, or skips.</strong> They will be deleted for rip/encode errors if reported. Music sourced from vinyl must follow the rules <a href="#h2.5">found here</a>.</li>
|
<li id="r2.1.8"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.8">2.1.8.</a> <strong>Music not sourced from vinyl must not contain pops, clicks, or skips.</strong> They will be deleted for rip/encode errors if reported. Music sourced from vinyl must follow the rules <a href="#h2.5">found here</a>.</li>
|
||||||
<li id="r2.1.9"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.9">2.1.9.</a> <strong>Freely available music is allowed.</strong> Uploaded music may be freely available on the web (come from official sources such as record labels, band websites, or the <a href="http://www.archive.org/index.php">Internet Archive</a>). Uploads can come from other torrent sites, but you are responsible for determining the audio quality of the music (i.e., that it is not transcoded, that it does not contain an edited log, that it is not a user compilation, etc.). Users are highly encouraged to provide a link to the source of their upload when uploading freely available music. However, this is not required and the lack of such a link to further information is not grounds for reporting a torrent. All freely available music must conform to both quality rules and formatting rules. This means it must be tagged correctly, not be a transcode, have separate tracks, and so forth. Freely available music uploads should have the "WEB" media format if no other source media (e.g., CD, DVD, etc.) can be established for the files.</li>
|
<li id="r2.1.9"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.9">2.1.9.</a> <strong>Freely available music is allowed.</strong> Uploaded music may be freely available on the web (come from official sources such as record labels, band websites, or the <a href="http://www.archive.org/index.php">Internet Archive</a>). Uploads can come from other torrent sites, but you are responsible for determining the audio quality of the music (i.e., that it is not transcoded, that it does not contain an edited log, that it is not a user compilation, etc.). Users are highly encouraged to provide a link to the source of their upload when uploading freely available music. However, this is not required and the lack of such a link to further information is not grounds for reporting a torrent. All freely available music must conform to both quality rules and formatting rules. This means it must be tagged correctly, not be a transcode, have separate tracks, and so forth. Freely available music uploads should have the "WEB" media format if no other source media (e.g., CD, DVD, etc.) can be established for the files.</li>
|
||||||
<li id="r2.1.10"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.10">2.1.10.</a> <strong>Clearly label water-marked or voice-over releases.</strong> Watermarks or voice-overs must be clearly indicated in the torrent description. The torrent will be deleted for quality misrepresentation if this information is not noted.</li>
|
<li id="r2.1.10"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.10">2.1.10.</a> <strong>Clearly label water-marked or voice-over releases.</strong> Watermarks or voice-overs must be clearly indicated in the torrent description. The torrent will be deleted for quality misrepresentation if this information is not noted.</li>
|
||||||
<li id="r2.1.11"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.11">2.1.11.</a> <strong>Music ripped from the radio (Satellite or FM), television, the web, or podcasts are not allowed.</strong> See <a href="wiki.php?action=article&id=948">this wiki</a> for the difference between web rips and the WEB category.</li>
|
<li id="r2.1.11"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.11">2.1.11.</a> <strong>Music ripped from the radio (Satellite or FM), television, the web, or podcasts are not allowed.</strong> See <a href="wiki.php?action=article&id=948">this wiki</a> for the difference between web rips and the WEB category.</li>
|
||||||
<li id="r2.1.12"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.12">2.1.12.</a> <strong>No unofficial audience recordings may be uploaded.</strong> These include but are not limited to AUD (Audience), IEM (In Ear Monitor), ALD (Assistive Listening Device), Mini-Disc, and Matrix-sourced recordings (see <a href="#r2.6.3">2.6.3</a>).</li>
|
<li id="r2.1.12"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.12">2.1.12.</a> <strong>No unofficial audience recordings may be uploaded.</strong> These include but are not limited to AUD (Audience), IEM (In Ear Monitor), ALD (Assistive Listening Device), Mini-Disc, and Matrix-sourced recordings (see <a href="#r2.6.3">2.6.3</a>).</li>
|
||||||
<li id="r2.1.13"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.13">2.1.13.</a> <strong>Tape (VHS, Video-8, etc.) music sources are not allowed, except for cassette rips and certain soundboards.</strong> See <a href="#h2.6">2.6</a> for further information.</li>
|
<li id="r2.1.13"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.13">2.1.13.</a> <strong>Tape (VHS, Video-8, etc.) music sources are not allowed, except for cassette rips and certain soundboards.</strong> See <a href="#h2.6">2.6</a> for further information.</li>
|
||||||
<li id="r2.1.14"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.14">2.1.14.</a> <strong>The WEB media category is for digital downloads only.</strong> Digital downloads released only on the internet from internet sources cannot be given the CD media label on the <a href="upload.php">upload page</a>. This includes downloads from the iTunes Store, LiveDownloads, Beatport, Amazon.com, Rhapsody, and other web stores. Scene releases with no source information must be labeled as WEB. Freely available music with no source information must also be labeled as WEB. If possible, indicate the source of your files (e.g., the specific web store) in the torrent description. You are responsible for determining whether the downloaded files conform to What.CD's rules for music quality. Note: Do not confuse WEB-sourced files with web rips (see <a href="wiki.php?action=article&id=948">this wiki</a>). WEB media torrents are not always web rips (meaning <a href="wiki.php?action=article&id=14">transcodes</a>). Please check the spectrals before assuming that they are web rips.</li>
|
<li id="r2.1.14"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.14">2.1.14.</a> <strong>The WEB media category is for digital downloads only.</strong> Digital downloads released only on the internet from internet sources cannot be given the CD media label on the <a href="upload.php">upload page</a>. This includes downloads from the iTunes Store, LiveDownloads, Beatport, Amazon.com, Rhapsody, and other web stores. Scene releases with no source information must be labeled as WEB. Freely available music with no source information must also be labeled as WEB. If possible, indicate the source of your files (e.g., the specific web store) in the torrent description. You are responsible for determining whether the downloaded files conform to What.CD's rules for music quality. Note: Do not confuse WEB-sourced files with web rips (see <a href="wiki.php?action=article&id=948">this wiki</a>). WEB media torrents are not always web rips (meaning <a href="wiki.php?action=article&id=14">transcodes</a>). Please check the spectrals before assuming that they are web rips.</li>
|
||||||
<li id="r2.1.15"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.15">2.1.15.</a> <strong>WEB uploads must be uploaded at the bit depths and sampling rates they were sold at.</strong> WEB uploads of the same audio with different sampling rates or bit depths may coexist if that is how they are sold or distributed. This means that if, for example, an album is sold with a bit depth of 24 bits and a sampling rate of 88.2 kHz, it must be uploaded directly with no modifications to the audio stream. An existing WEB upload of the same material with a bit depth of 24 and a sampling rate of 96 kHz may coexist with the new 24/88.2 upload but does not trump it. See <a href="#r2.1.6.2">2.1.6.2</a> for more information.</li>
|
<li id="r2.1.15"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.15">2.1.15.</a> <strong>WEB uploads must be uploaded at the bit depths and sampling rates they were sold at.</strong> WEB uploads of the same audio with different sampling rates or bit depths may coexist if that is how they are sold or distributed. This means that if, for example, an album is sold with a bit depth of 24 bits and a sampling rate of 88.2 kHz, it must be uploaded directly with no modifications to the audio stream. An existing WEB upload of the same material with a bit depth of 24 and a sampling rate of 96 kHz may coexist with the new 24/88.2 upload but does not trump it. See <a href="#r2.1.6.2">2.1.6.2</a> for more information.</li>
|
||||||
<li id="r2.1.16"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.16">2.1.16.</a> <strong>User-made compilations are not allowed.</strong>
|
<li id="r2.1.16"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.16">2.1.16.</a> <strong>User-made compilations are not allowed.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.1.16.1"><a href="#r2.1.16"><strong>↑_</strong></a> <a href="#r2.1.16.1">2.1.16.1.</a> <strong>These are defined as compilations made by the uploader or anyone else who does not officially represent the artist or the label. </strong> Compilations must be reasonably official. For example, "34 of my favourite Grateful Dead songs" is not a reasonably official collection. Compiling a release from a list, such as a Top 100 Billboard Chart, is not allowed. User-made and unofficial multichannel mixes are also not allowed. See <a href="wiki.php?action=article&id=973">this wiki</a> for more information.</li>
|
<li id="r2.1.16.1"><a href="#r2.1.16"><strong>↑_</strong></a> <a href="#r2.1.16.1">2.1.16.1.</a> <strong>These are defined as compilations made by the uploader or anyone else who does not officially represent the artist or the label. </strong> Compilations must be reasonably official. For example, "34 of my favourite Grateful Dead songs" is not a reasonably official collection. Compiling a release from a list, such as a Top 100 Billboard Chart, is not allowed. User-made and unofficial multichannel mixes are also not allowed. See <a href="wiki.php?action=article&id=973">this wiki</a> for more information.</li>
|
||||||
<li id="r2.1.16.2"><a href="#r2.1.16"><strong>↑_</strong></a> <a href="#r2.1.16.2">2.1.16.2.</a> <strong>Exceptions: Bootlegs are allowed if they meet quality standards for music and are proven to be retail releases in either a digital or physical form.</strong> Bootlegs/mixtapes assembled and available from internet-only sources (e.g., music blogs, message boards, etc.) are not considered official enough for this site.</li>
|
<li id="r2.1.16.2"><a href="#r2.1.16"><strong>↑_</strong></a> <a href="#r2.1.16.2">2.1.16.2.</a> <strong>Exceptions: Bootlegs are allowed if they meet quality standards for music and are proven to be retail releases in either a digital or physical form.</strong> Bootlegs/mixtapes assembled and available from internet-only sources (e.g., music blogs, message boards, etc.) are not considered official enough for this site.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.1.17"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.17">2.1.17.</a> <strong>No comedy, audiobook, or spoken word releases may be uploaded as music.</strong> These torrents must not be grouped with other formats from the same release (i.e., they need to have individual torrent pages). See <a href="#r3.2">3.2</a> and <a href="wiki.php?action=article&id=955">this wiki</a> for more information.</li>
|
<li id="r2.1.17"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.17">2.1.17.</a> <strong>No comedy, audiobook, or spoken word releases may be uploaded as music.</strong> These torrents must not be grouped with other formats from the same release (i.e., they need to have individual torrent pages). See <a href="#r3.2">3.2</a> and <a href="wiki.php?action=article&id=955">this wiki</a> for more information.</li>
|
||||||
<li id="r2.1.18"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.18">2.1.18.</a> <strong>Sound Sample Packs must be uploaded as applications.</strong> See <a href="#r4.1.9">4.1.9</a> for more information.</li>
|
<li id="r2.1.18"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.18">2.1.18.</a> <strong>Sound Sample Packs must be uploaded as applications.</strong> See <a href="#r4.1.9">4.1.9</a> for more information.</li>
|
||||||
<li id="r2.1.19"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.19">2.1.19.</a> <strong>All music torrents must represent a complete release, and may not be missing tracks (or discs in the case of a multi-disc release).</strong>
|
<li id="r2.1.19"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.19">2.1.19.</a> <strong>All music torrents must represent a complete release, and may not be missing tracks (or discs in the case of a multi-disc release).</strong>
|
||||||
<ul>
|
<ul>
|
||||||
@ -213,21 +218,21 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.1.20"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.20">2.1.20.</a> <strong>User made discographies may not be uploaded.</strong> Multi-album torrents are not allowed on the site under any circumstances. That means no discographies, Pitchfork compilations, etc. If releases (e.g., CD singles) were never released as a bundled set, do not upload them together. Live Soundboard material should be uploaded as one torrent per night, per show, or per venue. Including more than one show in a torrent results in a multi-album torrent. Exceptions: Only official boxsets and official compilation collections can contain multiple albums.</li>
|
<li id="r2.1.20"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.20">2.1.20.</a> <strong>User made discographies may not be uploaded.</strong> Multi-album torrents are not allowed on the site under any circumstances. That means no discographies, Pitchfork compilations, etc. If releases (e.g., CD singles) were never released as a bundled set, do not upload them together. Live Soundboard material should be uploaded as one torrent per night, per show, or per venue. Including more than one show in a torrent results in a multi-album torrent. Exceptions: Only official boxsets and official compilation collections can contain multiple albums.</li>
|
||||||
<li id="r2.1.21"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.21">2.1.21.</a> <strong><a href="wiki.php?action=article&id=386">Pre-emphasis</a> is allowed in lossless torrents only.</strong> Lossless FLAC torrents with pre-emphasis are allowed on the site. They are allowed to coexist with lossless de-emphasized torrents (both in their separate album edition groups). In contrast, lossy formats may not have pre-emphasis and will be deleted if uploaded.</li>
|
<li id="r2.1.21"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.21">2.1.21.</a> <strong><a href="wiki.php?action=article&id=386">Pre-emphasis</a> is allowed in lossless torrents only.</strong> Lossless FLAC torrents with pre-emphasis are allowed on the site. They are allowed to coexist with lossless de-emphasized torrents (both in their separate album edition groups). In contrast, lossy formats may not have pre-emphasis and will be deleted if uploaded.</li>
|
||||||
<li id="r2.1.22"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.22">2.1.22.</a> <strong>Edition Information must be provided for digitally-sourced torrents.</strong> Digitally-sourced (including CD-sourced) rips of albums that were first released before the availability of their source medium must have accurate edition information. For example, if a CD rip is of an album whose original release date was 1957, predating the creation and distribution of CDs, then the uploader must make note of the correct year in which the CD was pressed, and preferably note the catalog identification as well. Rips for which Edition Information cannot be provided must be marked as an "Unknown Release." Under no circumstances may you guess or feign knowledge of the Edition Information. See <a href="wiki.php?action=article&id=367">this wiki</a> for more information on album editions.</li>
|
<li id="r2.1.22"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.22">2.1.22.</a> <strong>Edition Information must be provided for digitally-sourced torrents.</strong> Digitally-sourced (including CD-sourced) rips of albums that were first released before the availability of their source medium must have accurate edition information. For example, if a CD rip is of an album whose original release date was 1957, predating the creation and distribution of CDs, then the uploader must make note of the correct year in which the CD was pressed, and preferably note the catalog identification as well. Rips for which Edition Information cannot be provided must be marked as an "Unknown Release." Under no circumstances may you guess or feign knowledge of the Edition Information. See <a href="wiki.php?action=article&id=367">this wiki</a> for more information on album editions.</li>
|
||||||
<li id="r2.1.23"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.23">2.1.23.</a> <strong>This audio layer must comply with the Redbook standard for audio data. If there is no Redbook audio on the game disc, you may not upload a rip of the disc. Be prepared to provide extensive information on any audio that is ripped from a gaming disc (see this wiki for information about providing proofs).</strong>
|
<li id="r2.1.23"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.23">2.1.23.</a> <strong>This audio layer must comply with the Redbook standard for audio data. If there is no Redbook audio on the game disc, you may not upload a rip of the disc. Be prepared to provide extensive information on any audio that is ripped from a gaming disc (see <a href="wiki.php?action=article&id=953">this wiki</a> for information about providing proofs).</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.1.23.1"><a href="#r2.1.23"><strong>↑_</strong></a> <a href="#r2.1.23.1">2.1.23.1.</a> <strong>This audio layer must comply with the Redbook standard for audio data. </strong>f there is no Redbook audio on the game disc, you may not upload a rip of the disc. Be prepared to provide extensive information on any audio that is ripped from a gaming disc (see <a href="wiki.php?action=article&id=953" wiki for information about providing proofs).</li>
|
<li id="r2.1.23.1"><a href="#r2.1.23"><strong>↑_</strong></a> <a href="#r2.1.23.1">2.1.23.1.</a> <strong>This audio layer must comply with the Redbook standard for audio data. </strong>f there is no Redbook audio on the game disc, you may not upload a rip of the disc. Be prepared to provide extensive information on any audio that is ripped from a gaming disc (see <a href="wiki.php?action=article&id=953">this wiki</a> for information about providing proofs).</li>
|
||||||
<li id="r2.1.23.2"><a href="#r2.1.23"><strong>↑_</strong></a> <a href="#r2.1.23.2">2.1.23.2.</a> <strong>The audio must meet the minimum requirements for music on the site (see <a href="#r2.1.3">2.1.3</a> and <a href="#r2.1.6">2.1.6</a>).</strong> </li>
|
<li id="r2.1.23.2"><a href="#r2.1.23"><strong>↑_</strong></a> <a href="#r2.1.23.2">2.1.23.2.</a> <strong>The audio must meet the minimum requirements for music on the site (see <a href="#r2.1.3">2.1.3</a> and <a href="#r2.1.6">2.1.6</a>).</strong> </li>
|
||||||
<li id="r2.1.23.3"><a href="#r2.1.23"><strong>↑_</strong></a> <a href="#r2.1.23.3">2.1.23.3.</a> <strong>Officially-released game soundtracks, which adhere to Redbook standards, are always allowed.</strong> </li>
|
<li id="r2.1.23.3"><a href="#r2.1.23"><strong>↑_</strong></a> <a href="#r2.1.23.3">2.1.23.3.</a> <strong>Officially-released game soundtracks, which adhere to Redbook standards, are always allowed.</strong> </li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.1.24"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.24">2.1.24.</a> <strong>Lossy AAC torrents may only be uploaded when they represent exclusive content not currently available in any other format (e.g., an iTunes WEB exclusive release).</strong> </li>
|
<li id="r2.1.24"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.24">2.1.24.</a> <strong>Lossy AAC torrents may only be uploaded when they represent exclusive content not currently available in any other format (e.g., an iTunes WEB exclusive release).</strong> </li>
|
||||||
<li id="r2.1.25"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.25">2.1.25.</a> <strong>No HDCD content may be uploaded to the site.</strong> There are inherent problems with ripping this format, and other forms of high-resolution audio are both more prevalent and preferred at this time (i.e., vinyl, SACD, Blu-ray, etc.). Any CD bearing the HDCD logo can still be ripped using the usual methods for ripping normal audio CDs. See <a href="wiki.php?action=article&id=875">this wiki</a> for more details on the media format.</li>
|
<li id="r2.1.25"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.25">2.1.25.</a> <strong>No HDCD content may be uploaded to the site.</strong> There are inherent problems with ripping this format, and other forms of high-resolution audio are both more prevalent and preferred at this time (i.e., vinyl, SACD, Blu-ray, etc.). Any CD bearing the HDCD logo can still be ripped using the usual methods for ripping normal audio CDs. See <a href="wiki.php?action=article&id=875">this wiki</a> for more details on the media format.</li>
|
||||||
<li id="r2.1.26"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.26">2.1.26.</a> <strong> Downsampling of digital sources is allowed for certain media types.</strong> Downsampling of CD sources is strictly prohibited. Downsampling of WEB sources is allowed for audio files sampled at 96 kHz and above. If the WEB source is already sampled at a rate of either 44.1 kHz or 48 kHz you may not downsample the audio files any further. Downsampling of SACD, DVD, or Blu-ray sources is allowed in certain cases. See <a href="#r2.8.5">2.8.5</a>, <a href="#r2.7.3">2.7.3</a>, and <a href="#r2.9.5">2.9.5</a> for more information.</li>
|
<li id="r2.1.26"><a href="#h2.1"><strong>↑_</strong></a> <a href="#r2.1.26">2.1.26.</a> <strong> Downsampling of digital sources is allowed for certain media types.</strong> Downsampling of CD sources is strictly prohibited. Downsampling of WEB sources is allowed for audio files sampled at 96 kHz and above. If the WEB source is already sampled at a rate of either 44.1 kHz or 48 kHz you may not downsample the audio files any further. Downsampling of SACD, DVD, or Blu-ray sources is allowed in certain cases. See <a href="#r2.8.5">2.8.5</a>, <a href="#r2.7.3">2.7.3</a>, and <a href="#r2.9.5">2.9.5</a> for more information.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<h5 id="h2.2"><a href="#h2.2k"><strong>↑</strong></a> <a href="#h2.2">2.2.</a> Duplicates & Trumping</h5>
|
<h5 id="h2.2"><a href="#h2.2k"><strong>↑</strong></a> <a href="#h2.2">2.2.</a> Duplicates & Trumping</h5>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.0"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.0">2.2.0.</a> <strong>Overview</strong>
|
<li id="r2.2.0"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.0">2.2.0.</a> <strong>Overview</strong>
|
||||||
@ -243,10 +248,10 @@
|
|||||||
<li id="r2.2.5"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.5">2.2.5.</a> <strong>Scene and non-scene torrents for the same release, in the same bitrate and format, are dupes.</strong> The Scene label does not make the torrents unique from one another. If a scene V2 (VBR) of an album from CD is already uploaded, you may not upload another V2 (VBR) of the same album from CD.</li>
|
<li id="r2.2.5"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.5">2.2.5.</a> <strong>Scene and non-scene torrents for the same release, in the same bitrate and format, are dupes.</strong> The Scene label does not make the torrents unique from one another. If a scene V2 (VBR) of an album from CD is already uploaded, you may not upload another V2 (VBR) of the same album from CD.</li>
|
||||||
<li id="r2.2.6"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.6">2.2.6.</a> <strong>All vinyl torrents must be ripped at the correct speed.</strong> You must rip all vinyl albums at the speed with which they were intended to be played (see <a href="#r2.5.7">2.5.7</a>).</li>
|
<li id="r2.2.6"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.6">2.2.6.</a> <strong>All vinyl torrents must be ripped at the correct speed.</strong> You must rip all vinyl albums at the speed with which they were intended to be played (see <a href="#r2.5.7">2.5.7</a>).</li>
|
||||||
<li id="r2.2.7"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.7">2.2.7.</a> <strong>Complete or untouched releases replace incomplete or watermarked versions.</strong> Watermarked promos containing voice-overs and similar imperfections can be trumped by a non-watermarked release. Releases missing hidden or pre-gap tracks can be replaced by proper rips that include the entire range of tracks. These hidden or pre-gap tracks should be in their own file, not appended to the beginning of track one. Releases where the hidden or pre-gap track is appended to the first track can be trumped by one where the track is in a separate file.</li>
|
<li id="r2.2.7"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.7">2.2.7.</a> <strong>Complete or untouched releases replace incomplete or watermarked versions.</strong> Watermarked promos containing voice-overs and similar imperfections can be trumped by a non-watermarked release. Releases missing hidden or pre-gap tracks can be replaced by proper rips that include the entire range of tracks. These hidden or pre-gap tracks should be in their own file, not appended to the beginning of track one. Releases where the hidden or pre-gap track is appended to the first track can be trumped by one where the track is in a separate file.</li>
|
||||||
<li id="r2.2.8"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.8">2.2.8.</a> <strong>Torrents that have been inactive (e.g., not seeded) for two weeks may be trumped by the identical torrent (e.g., reseeded) or by a brand new rip or encode (see <a href="wiki.php?action=article&id=663">this wiki</a> for the torrent inactivity rules) of the album.</strong> If you have the original torrent files for the inactive torrent, it is preferable to reseed those original files instead of uploading a new torrent. Uploading a replacement torrent should be done only when the files from the original torrent cannot be recovered or are unavailable.</li>
|
<li id="r2.2.8"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.8">2.2.8.</a> <strong>Torrents that have been inactive (e.g., not seeded) for two weeks may be trumped by the identical torrent (e.g., reseeded) or by a brand new rip or encode (see <a href="wiki.php?action=article&id=663">this wiki</a> for the torrent inactivity rules) of the album.</strong> If you have the original torrent files for the inactive torrent, it is preferable to reseed those original files instead of uploading a new torrent. Uploading a replacement torrent should be done only when the files from the original torrent cannot be recovered or are unavailable.</li>
|
||||||
<li id="r2.2.9"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.9">2.2.9.</a> <strong>Lossy rules</strong>
|
<li id="r2.2.9"><a href="#h2.2"><strong>↑_</strong></a> <a href="#r2.2.9">2.2.9.</a> <strong>Lossy rules</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.9.1"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.1">2.2.9.1.</a> <strong>Higher bitrate CBR (Constant Bitrate) and ABR (Average Bitrate) torrents replace lower ones.</strong> Once a CBR (Constant Bitrate) rip has been uploaded, no CBR rips of that bitrate or lower can be uploaded. In the same manner, once an ABR (Average Bitrate) rip has been uploaded, no ABR rips of that bitrate or lower can be uploaded. For example, if a 320 kbps CBR rip is already on the site, you are not allowed to upload a 256 kbps CBR. ABR and CBR may be interchangeably trumped. A CBR can trump a lower bitrate ABR and an ABR may trump a lower bitrate CBR. You may not upload a 192 kbps CBR if a 256 kbps ABR of the same release is already up. See <a href="wiki.php?action=article&id=125">this wiki</a> for more information.</li>
|
<li id="r2.2.9.1"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.1">2.2.9.1.</a> <strong>Higher bitrate CBR (Constant Bitrate) and ABR (Average Bitrate) torrents replace lower ones.</strong> Once a CBR (Constant Bitrate) rip has been uploaded, no CBR rips of that bitrate or lower can be uploaded. In the same manner, once an ABR (Average Bitrate) rip has been uploaded, no ABR rips of that bitrate or lower can be uploaded. For example, if a 320 kbps CBR rip is already on the site, you are not allowed to upload a 256 kbps CBR. ABR and CBR may be interchangeably trumped. A CBR can trump a lower bitrate ABR and an ABR may trump a lower bitrate CBR. You may not upload a 192 kbps CBR if a 256 kbps ABR of the same release is already up. See <a href="wiki.php?action=article&id=125">this wiki</a> for more information.</li>
|
||||||
<li id="r2.2.9.2"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.2">2.2.9.2.</a> <strong>Lossy format torrents with .log files do not replace equivalent existing torrents.</strong> If you want to upload a lossy format (e.g., MP3) torrent that contains a log, when that format already exists in the same medium and album edition (but without the log), your new torrent will be considered a dupe. For example, a V2 (VBR) MP3 torrent with a log cannot replace a V2 (VBR) MP3 without a log. The same standard applies for lossy audio torrents with .m3u, .cue, and other additions such as artwork. Exceptions: If an existing torrent contains encode/rip errors, you may upload another copy that does not have errors. The bad torrent needs to be reported (with clear information about which tracks and what time points are affected) or your torrent will be deleted as a dupe. Also, see <a href="#r2.3.8">2.3.8</a> through <a href="#r2.3.16">2.3.16</a> for replacing poorly named and tagged torrents.</li>
|
<li id="r2.2.9.2"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.2">2.2.9.2.</a> <strong>Lossy format torrents with .log files do not replace equivalent existing torrents.</strong> If you want to upload a lossy format (e.g., MP3) torrent that contains a log, when that format already exists in the same medium and album edition (but without the log), your new torrent will be considered a dupe. For example, a V2 (VBR) MP3 torrent with a log cannot replace a V2 (VBR) MP3 without a log. The same standard applies for lossy audio torrents with .m3u, .cue, and other additions such as artwork. Exceptions: If an existing torrent contains encode/rip errors, you may upload another copy that does not have errors. The bad torrent needs to be reported (with clear information about which tracks and what time points are affected) or your torrent will be deleted as a dupe. Also, see <a href="#r2.3.8">2.3.8</a> through <a href="#r2.3.16">2.3.16</a> for replacing poorly named and tagged torrents.</li>
|
||||||
<li id="r2.2.9.3"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.3">2.2.9.3.</a> <strong>V0 (VBR), V2 (VBR), and 320 CBR MP3 are allowed at any time.</strong> You may upload a V0 (VBR), V2 (VBR) or 320 CBR MP3 as long as another rip with the same bitrate and format doesn't already exist. So if a V0 (VBR) is on the site, you may still upload a V2 (VBR) or 320 CBR MP3 of the same release.</li>
|
<li id="r2.2.9.3"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.3">2.2.9.3.</a> <strong>V0 (VBR), V2 (VBR), and 320 CBR MP3 are allowed at any time.</strong> You may upload a V0 (VBR), V2 (VBR) or 320 CBR MP3 as long as another rip with the same bitrate and format doesn't already exist. So if a V0 (VBR) is on the site, you may still upload a V2 (VBR) or 320 CBR MP3 of the same release.</li>
|
||||||
<li id="r2.2.9.4"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.4">2.2.9.4.</a> <strong>V2 (VBR) replaces APS (VBR), and both replace CBR rips under 256 kbps, 192 (ABR), and rips averaging 192 (VBR) to 210 (VBR).</strong> Once a rip with either the V2 (VBR) or APS (VBR) LAME encoding preset has been uploaded, you are not allowed to upload any CBR torrents under 256 kbps bitrate. Furthermore, a V2 (VBR) or APS (VBR) rip will trump all indiscriminate VBR rips of similar bitrate. A V2 (VBR) rip will replace a 192 (VBR) rip or 210 (VBR) rip, for example. Also, a V2 (VBR) will replace a 192 (ABR) torrent.</li>
|
<li id="r2.2.9.4"><a href="#r2.2.9"><strong>↑_</strong></a> <a href="#r2.2.9.4">2.2.9.4.</a> <strong>V2 (VBR) replaces APS (VBR), and both replace CBR rips under 256 kbps, 192 (ABR), and rips averaging 192 (VBR) to 210 (VBR).</strong> Once a rip with either the V2 (VBR) or APS (VBR) LAME encoding preset has been uploaded, you are not allowed to upload any CBR torrents under 256 kbps bitrate. Furthermore, a V2 (VBR) or APS (VBR) rip will trump all indiscriminate VBR rips of similar bitrate. A V2 (VBR) rip will replace a 192 (VBR) rip or 210 (VBR) rip, for example. Also, a V2 (VBR) will replace a 192 (ABR) torrent.</li>
|
||||||
@ -266,23 +271,23 @@
|
|||||||
<li id="r2.2.10.1"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.1">2.2.10.1.</a> <strong>All FLAC CD rips must come from official CD sources.</strong>
|
<li id="r2.2.10.1"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.1">2.2.10.1.</a> <strong>All FLAC CD rips must come from official CD sources.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.10.1.1"><a href="#r2.2.10.1"><strong>↑_</strong></a> <a href="#r2.2.10.1.1">2.2.10.1.1.</a> <strong>Rips must be taken from commercially pressed or official (e.g., artist- or label-approved) CD sources.</strong> They may not come from CD-R copies of the same pressed CDs.</li>
|
<li id="r2.2.10.1.1"><a href="#r2.2.10.1"><strong>↑_</strong></a> <a href="#r2.2.10.1.1">2.2.10.1.1.</a> <strong>Rips must be taken from commercially pressed or official (e.g., artist- or label-approved) CD sources.</strong> They may not come from CD-R copies of the same pressed CDs.</li>
|
||||||
<li id="r2.2.10.1.2"><a href="#r2.2.10.1"><strong>↑_</strong></a> <a href="#r2.2.10.1.2">2.2.10.1.2.</a> <strong>Exceptions: If the release is only distributed on CD-R by the label or artist, then that is acceptable.</strong> See <a href="wiki.php?action=article&id=954">this wiki</a> for more information on CD-R releases.</li>
|
<li id="r2.2.10.1.2"><a href="#r2.2.10.1"><strong>↑_</strong></a> <a href="#r2.2.10.1.2">2.2.10.1.2.</a> <strong>Exceptions: If the release is only distributed on CD-R by the label or artist, then that is acceptable.</strong> See <a href="wiki.php?action=article&id=954">this wiki</a> for more information on CD-R releases.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.2.10.2"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.2">2.2.10.2.</a> <strong>A FLAC torrent without a log (or with a log from a non-EAC or non-XLD ripping tool like dBpoweramp or Rubyripper) may be trumped by a FLAC torrent with a log from an approved ripping tool that scores either 100% or <100% because of non-audio deductions.</strong> For example, an <a href="http://www.exactaudiocopy.de/">EAC</a> log that scores 50% (because of CRC mismatches or other audio deductions) cannot trump a Rubyripper log. See <a href="wiki.php?action=article&id=921">this wiki</a> for more information on approved ripping tools. Also, see <a href="wiki.php?action=article&id=693">this wiki</a> for setting up <a href="http://www.exactaudiocopy.de/">EAC</a> and <a href="wiki.php?action=article&id=706">this wiki</a> for ripping with <a href="http://www.exactaudiocopy.de/">EAC</a>. See <a href="wiki.php?action=article&id=146">this wiki</a> for ripping with <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a>. Please make sure the log file has the .log extension so that it can display properly on the torrent page.</li>
|
<li id="r2.2.10.2"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.2">2.2.10.2.</a> <strong>A FLAC torrent without a log (or with a log from a non-EAC or non-XLD ripping tool like dBpoweramp or Rubyripper) may be trumped by a FLAC torrent with a log from an approved ripping tool that scores either 100% or <100% because of non-audio deductions.</strong> For example, an <a href="http://www.exactaudiocopy.de/">EAC</a> log that scores 50% (because of CRC mismatches or other audio deductions) cannot trump a Rubyripper log. See <a href="wiki.php?action=article&id=921">this wiki</a> for more information on approved ripping tools. Also, see <a href="wiki.php?action=article&id=693">this wiki</a> for setting up <a href="http://www.exactaudiocopy.de/">EAC</a> and <a href="wiki.php?action=article&id=706">this wiki</a> for ripping with <a href="http://www.exactaudiocopy.de/">EAC</a>. See <a href="wiki.php?action=article&id=146">this wiki</a> for ripping with <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a>. Please make sure the log file has the .log extension so that it can display properly on the torrent page.</li>
|
||||||
<li id="r2.2.10.3"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.3">2.2.10.3.</a> <strong>A FLAC upload with an <a href="http://www.exactaudiocopy.de/">EAC</a> or <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a> rip log that scores 100% on the <a href="logchecker.php">log checker</a> replaces one with a lower score.</strong> No log scoring less than 100% can trump an already existing one that scores under 100%. For example, a FLAC+log rip that scores 50% in the log checker cannot be trumped by a FLAC+log rip that scores 80%. What.CD recommends <a href="wiki.php?action=article&id=693">this guide for EAC</a>, and <a href="wiki.php?action=article&id=146">this guide for XLD</a>. See <a href="wiki.php?action=article&id=155">this wiki</a> for more information on the site log checker. Note: A FLAC upload with a log that scores 95% for not defeating the audio cache may be rescored to 100% following the procedure outlined in <a href="wiki.php?action=article&id=219">this wiki</a>.</li>
|
<li id="r2.2.10.3"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.3">2.2.10.3.</a> <strong>A FLAC upload with an <a href="http://www.exactaudiocopy.de/">EAC</a> or <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a> rip log that scores 100% on the <a href="logchecker.php">log checker</a> replaces one with a lower score.</strong> No log scoring less than 100% can trump an already existing one that scores under 100%. For example, a FLAC+log rip that scores 50% in the log checker cannot be trumped by a FLAC+log rip that scores 80%. What.CD recommends <a href="wiki.php?action=article&id=693">this guide for EAC</a>, and <a href="wiki.php?action=article&id=146">this guide for XLD</a>. See <a href="wiki.php?action=article&id=155">this wiki</a> for more information on the site log checker. Note: A FLAC upload with a log that scores 95% for not defeating the audio cache may be rescored to 100% following the procedure outlined in <a href="wiki.php?action=article&id=219">this wiki</a>.</li>
|
||||||
<li id="r2.2.10.4"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.4">2.2.10.4.</a> <strong>A FLAC upload with <span style="font-weight: bold;">only non-audio deductions</span> in the log (see <a href="wiki.php?action=article&id=888">this wiki</a>) may replace a FLAC upload with a log that scores 0% or contains audio deductions.</strong> For example, a range rip that has AccurateRip scores of two or higher and assorted non-audio deductions (e.g., burst mode, audio cache, pre-gaps, C2 pointers, etc.) can trump a log that has audio deductions for mismatching CRCs.</li>
|
<li id="r2.2.10.4"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.4">2.2.10.4.</a> <strong>A FLAC upload with <span style="font-weight: bold;">only non-audio deductions</span> in the log (see <a href="wiki.php?action=article&id=888">this wiki</a>) may replace a FLAC upload with a log that scores 0% or contains audio deductions.</strong> For example, a range rip that has AccurateRip scores of two or higher and assorted non-audio deductions (e.g., burst mode, audio cache, pre-gaps, C2 pointers, etc.) can trump a log that has audio deductions for mismatching CRCs.</li>
|
||||||
<li id="r2.2.10.5"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.5">2.2.10.5.</a> <strong><a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a> and <a href="http://www.exactaudiocopy.de/">EAC</a> logs in languages other than English require a manual log checker score adjustment by staff.</strong> The current log checker cannot parse non-English logs made by <a href="http://www.exactaudiocopy.de/">EAC</a> and <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a>. However, a special exception is made for foreign-language logs since the rip quality is equivalent to English logs. Please report your torrent with the RP link and select "Log Rescore Request" for the reason of the report so staff can check your torrent manually. <span style="font-weight: bold;">Do not translate the log yourself</span> (see <a href="#r2.2.10.9">2.2.10.9</a>).</li>
|
<li id="r2.2.10.5"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.5">2.2.10.5.</a> <strong><a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a> and <a href="http://www.exactaudiocopy.de/">EAC</a> logs in languages other than English require a manual log checker score adjustment by staff.</strong> The current log checker cannot parse non-English logs made by <a href="http://www.exactaudiocopy.de/">EAC</a> and <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a>. However, a special exception is made for foreign-language logs since the rip quality is equivalent to English logs. Please report your torrent with the RP link and select "Log Rescore Request" for the reason of the report so staff can check your torrent manually. <span style="font-weight: bold;">Do not translate the log yourself</span> (see <a href="#r2.2.10.9">2.2.10.9</a>).</li>
|
||||||
<li id="r2.2.10.6"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.6">2.2.10.6.</a> <strong>Range rips of hidden tracks or regular range rips (acceptable under strict conditions) require manual score adjustment.</strong>
|
<li id="r2.2.10.6"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.6">2.2.10.6.</a> <strong>Range rips of hidden tracks or regular range rips (acceptable under strict conditions) require manual score adjustment.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.10.6.1"><a href="#r2.2.10.6"><strong>↑_</strong></a> <a href="#r2.2.10.6.1">2.2.10.6.1.</a> <strong>The new log checker cannot accurately score range-ripped hidden tracks appended to proper rip logs.</strong> If you have created a 100% rip with a hidden track, but the log checker has decreased your score for the hidden track, report the torrent and the log score will be corrected by staff.</li>
|
<li id="r2.2.10.6.1"><a href="#r2.2.10.6"><strong>↑_</strong></a> <a href="#r2.2.10.6.1">2.2.10.6.1.</a> <strong>The new log checker cannot accurately score range-ripped hidden tracks appended to proper rip logs.</strong> If you have created a 100% rip with a hidden track, but the log checker has decreased your score for the hidden track, report the torrent and the log score will be corrected by staff.</li>
|
||||||
<li id="r2.2.10.6.2"><a href="#r2.2.10.6"><strong>↑_</strong></a> <a href="#r2.2.10.6.2">2.2.10.6.2.</a> <strong>If you created a CD range rip that has matching CRCs for test and copy, and where every track has an AccurateRip score of 2 or more, then you may submit your torrent for manual score adjustment.</strong> It will be rescored, assuming no other problems, to 99%.</li>
|
<li id="r2.2.10.6.2"><a href="#r2.2.10.6"><strong>↑_</strong></a> <a href="#r2.2.10.6.2">2.2.10.6.2.</a> <strong>If you created a CD range rip that has matching CRCs for test and copy, and where every track has an AccurateRip score of 2 or more, then you may submit your torrent for manual score adjustment.</strong> It will be rescored, assuming no other problems, to 99%.</li>
|
||||||
<li id="r2.2.10.6.3"><a href="#r2.2.10.6"><strong>↑_</strong></a> <a href="#r2.2.10.6.3">2.2.10.6.3.</a> <strong>The CD image rip must be split with <a href="http://www.cuetools.net/wiki/CUETools">CUETools</a>, <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a>, or <a href="http://www.exactaudiocopy.de/">EAC</a>.</strong> No other splitter is acceptable for a score adjustment. You will not receive a score adjustment for copy-only range rips approved with AccurateRip, nor for range rips done with test and copy without AccurateRip enabled. See <a href="wiki.php?action=article&id=111">this wiki</a> for information on splitting image rips with <a href="http://www.exactaudiocopy.de/">EAC</a>.</li>
|
<li id="r2.2.10.6.3"><a href="#r2.2.10.6"><strong>↑_</strong></a> <a href="#r2.2.10.6.3">2.2.10.6.3.</a> <strong>The CD image rip must be split with <a href="http://www.cuetools.net/wiki/CUETools">CUETools</a>, <a href="http://tmkk.pv.land.to/xld/index_e.html">XLD</a>, or <a href="http://www.exactaudiocopy.de/">EAC</a>.</strong> No other splitter is acceptable for a score adjustment. You will not receive a score adjustment for copy-only range rips approved with AccurateRip, nor for range rips done with test and copy without AccurateRip enabled. See <a href="wiki.php?action=article&id=111">this wiki</a> for information on splitting image rips with <a href="http://www.exactaudiocopy.de/">EAC</a>.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.2.10.7"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.7">2.2.10.7.</a> <strong>A 100% log rip lacking a cue sheet can be replaced by another 100% log rip with a noncompliant cue sheet.</strong> See <a href="wiki.php?action=article&id=168">this wiki</a> for more information on cue sheets.
|
<li id="r2.2.10.7"><a href="#r2.2.10"><strong>↑_</strong></a> <a href="#r2.2.10.7">2.2.10.7.</a> <strong>A 100% log rip lacking a cue sheet can be replaced by another 100% log rip with a noncompliant cue sheet.</strong> See <a href="wiki.php?action=article&id=168">this wiki</a> for more information on cue sheets.
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.10.7.1"><a href="#r2.2.10.7"><strong>↑_</strong></a> <a href="#r2.2.10.7.1">2.2.10.7.1.</a> <strong>A 100% log rip without a cue sheet can be replaced by a 100% log rip with a noncompliant cue sheet ONLY when the included cue sheet is materially different from "a cue generated from the ripping log." Examples of a material difference include additional or correct indices, properly detected pre-gap lengths, and <a href="wiki.php?action=article&id=386">pre-emphasis</a> flags.</strong> If you upload a torrent with a cue sheet that provides nothing additional beyond what is contained in the rip log of the preexisting torrent, it will be deleted as a dupe.</li>
|
<li id="r2.2.10.7.1"><a href="#r2.2.10.7"><strong>↑_</strong></a> <a href="#r2.2.10.7.1">2.2.10.7.1.</a> <strong>A 100% log rip without a cue sheet can be replaced by a 100% log rip with a noncompliant cue sheet ONLY when the included cue sheet is materially different from "a cue generated from the ripping log." Examples of a material difference include additional or correct indices, properly detected pre-gap lengths, and <a href="wiki.php?action=article&id=386">pre-emphasis</a> flags.</strong> If you upload a torrent with a cue sheet that provides nothing additional beyond what is contained in the rip log of the preexisting torrent, it will be deleted as a dupe.</li>
|
||||||
<li id="r2.2.10.7.2"><a href="#r2.2.10.7"><strong>↑_</strong></a> <a href="#r2.2.10.7.2">2.2.10.7.2.</a> <strong>Exceptions: An <a href="http://www.exactaudiocopy.de/">EAC</a> 0.95 rip with a 100% log and no cue file, uploaded before September 14, 2010, may be trumped by a torrent that scores 100% under the current log checker requirements.</strong> </li>
|
<li id="r2.2.10.7.2"><a href="#r2.2.10.7"><strong>↑_</strong></a> <a href="#r2.2.10.7.2">2.2.10.7.2.</a> <strong>Exceptions: An <a href="http://www.exactaudiocopy.de/">EAC</a> 0.95 rip with a 100% log and no cue file, uploaded before September 14, 2010, may be trumped by a torrent that scores 100% under the current log checker requirements.</strong> </li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
@ -301,11 +306,11 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.11.1"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.1">2.2.11.1.</a> <strong>Different editions and source media count as separate releases.</strong>
|
<li id="r2.2.11.1"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.1">2.2.11.1.</a> <strong>Different editions and source media count as separate releases.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.2.11.1.1"><a href="#r2.2.11.1"><strong>↑_</strong></a> <a href="#r2.2.11.1.1">2.2.11.1.1.</a> <strong>A rip from a different medium (e.g., vinyl) or release (e.g., a remaster) of an already existing torrent counts as a different edition.</strong> The dupe rules do not apply to the two different album editions, nor do they apply to two differently sourced torrents. So if a FLAC ripped from a CD is already up, you are still allowed to upload a FLAC ripped from vinyl. And if a 320 kbps CBR MP3 release for an original mastering of an album was uploaded, you are still allowed to upload a 320 kbps CBR MP3 remaster. See <a href="wiki.php?action=article&id=375">this wiki</a> for the procedure on how to enter album edition information for a torrent.</li>
|
<li id="r2.2.11.1.1"><a href="#r2.2.11.1"><strong>↑_</strong></a> <a href="#r2.2.11.1.1">2.2.11.1.1.</a> <strong>A rip from a different medium (e.g., vinyl) or release (e.g., a remaster) of an already existing torrent counts as a different edition.</strong> The dupe rules do not apply to the two different album editions, nor do they apply to two differently sourced torrents. So if a FLAC ripped from a CD is already up, you are still allowed to upload a FLAC ripped from vinyl. And if a 320 kbps CBR MP3 release for an original mastering of an album was uploaded, you are still allowed to upload a 320 kbps CBR MP3 remaster. See <a href="wiki.php?action=article&id=375">this wiki</a> for the procedure on how to enter album edition information for a torrent.</li>
|
||||||
<li id="r2.2.11.1.2"><a href="#r2.2.11.1"><strong>↑_</strong></a> <a href="#r2.2.11.1.2">2.2.11.1.2.</a> <strong>Only one edition of each unofficial live recording is allowed.</strong> See <a href="#r2.6.2">2.6.2</a>.</li>
|
<li id="r2.2.11.1.2"><a href="#r2.2.11.1"><strong>↑_</strong></a> <a href="#r2.2.11.1.2">2.2.11.1.2.</a> <strong>Only one edition of each unofficial live recording is allowed.</strong> See <a href="#r2.6.2">2.6.2</a>.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.2.11.2"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.2">2.2.11.2.</a> <strong>Rip log information (ToC, peak levels, and pre-gaps), tracklist, and running order determine distinct editions, not catalog information.</strong> Merely having different catalog numbers or CD packaging is not enough to justify a new, distinct edition, though differences in year, label (imprint), or catalog number determine distinct releases. Though different editions may coexist, distinct releases that are not also distinct editions may not, and are considered dupes. See <a href="wiki.php?action=article&id=367">this wiki</a> for more information.</li>
|
<li id="r2.2.11.2"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.2">2.2.11.2.</a> <strong>Rip log information (ToC, peak levels, and pre-gaps), tracklist, and running order determine distinct editions, not catalog information.</strong> Merely having different catalog numbers or CD packaging is not enough to justify a new, distinct edition, though differences in year, label (imprint), or catalog number determine distinct releases. Though different editions may coexist, distinct releases that are not also distinct editions may not, and are considered dupes. See <a href="wiki.php?action=article&id=367">this wiki</a> for more information.</li>
|
||||||
<li id="r2.2.11.3"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.3">2.2.11.3.</a> <strong>Multiple releases may be grouped into one edition.</strong> In such a case, torrents belonging to any of the releases determined to be in the same edition are considered dupes. Conversely, release groups may be split into more than one edition when it is determined that there is a material difference in audio content (different editions that have the same catalog information are known as "silent remasters"), in which case other formats may be uploaded for both editions.</li>
|
<li id="r2.2.11.3"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.3">2.2.11.3.</a> <strong>Multiple releases may be grouped into one edition.</strong> In such a case, torrents belonging to any of the releases determined to be in the same edition are considered dupes. Conversely, release groups may be split into more than one edition when it is determined that there is a material difference in audio content (different editions that have the same catalog information are known as "silent remasters"), in which case other formats may be uploaded for both editions.</li>
|
||||||
<li id="r2.2.11.4"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.4">2.2.11.4.</a> <strong>Lossless uploads with edition information trump lossless rips with nonexistent or insufficient logs and no release information.</strong> An insufficient log is a log that doesn't provide any information (e.g., ToC, peak levels, and pre-gaps) about the audio being ripped.</li>
|
<li id="r2.2.11.4"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.4">2.2.11.4.</a> <strong>Lossless uploads with edition information trump lossless rips with nonexistent or insufficient logs and no release information.</strong> An insufficient log is a log that doesn't provide any information (e.g., ToC, peak levels, and pre-gaps) about the audio being ripped.</li>
|
||||||
<li id="r2.2.11.5"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.5">2.2.11.5.</a> <strong>If a lossless torrent has no release information (an "unknown release") but does have a log containing ToC, peak level, and pre-gap information, it cannot be trumped by a lossless torrent with release information unless the "lossless unknown release torrent" can be determined to be the same edition as a lossless torrent for which the release information is known.</strong> If such an identification can be made, the "lossless unknown release torrent" (and all lossy torrents that can be identified as transcodes of it) is moved into the same edition as the lossless torrent with edition information, and the merged torrents are then subject to dupe and trump rules as per <a href="#r2.2.11.2">2.2.11.2</a>. If the rip log is incomplete (missing ToC, peak level, or pre-gap information) and the information available matches a torrent in an edition whose release information is known, the torrent whose release information is known trumps the torrent whose release information is unknown.</li>
|
<li id="r2.2.11.5"><a href="#r2.2.11"><strong>↑_</strong></a> <a href="#r2.2.11.5">2.2.11.5.</a> <strong>If a lossless torrent has no release information (an "unknown release") but does have a log containing ToC, peak level, and pre-gap information, it cannot be trumped by a lossless torrent with release information unless the "lossless unknown release torrent" can be determined to be the same edition as a lossless torrent for which the release information is known.</strong> If such an identification can be made, the "lossless unknown release torrent" (and all lossy torrents that can be identified as transcodes of it) is moved into the same edition as the lossless torrent with edition information, and the merged torrents are then subject to dupe and trump rules as per <a href="#r2.2.11.2">2.2.11.2</a>. If the rip log is incomplete (missing ToC, peak level, or pre-gap information) and the information available matches a torrent in an edition whose release information is known, the torrent whose release information is known trumps the torrent whose release information is unknown.</li>
|
||||||
@ -323,10 +328,10 @@
|
|||||||
<li id="r2.3.1"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.1">2.3.1.</a> <strong>Music releases must be in a directory that contains the music.</strong> This includes single track releases, which must be enclosed in a torrent folder even if there is only one file in the torrent. No music may be compressed in an archive (e.g., .rar, .zip, .tar, .iso). Scene archives of music must be unpacked and not labeled as "scene."</li>
|
<li id="r2.3.1"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.1">2.3.1.</a> <strong>Music releases must be in a directory that contains the music.</strong> This includes single track releases, which must be enclosed in a torrent folder even if there is only one file in the torrent. No music may be compressed in an archive (e.g., .rar, .zip, .tar, .iso). Scene archives of music must be unpacked and not labeled as "scene."</li>
|
||||||
<li id="r2.3.2"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.2">2.3.2.</a> <strong>Name your directories with meaningful titles, such as "Artist - Album (Year) - Format." The minimum acceptable is "Album" although it is preferable to include more information.</strong> If the directory name does not include this minimum then another user can rename the directory, re-upload, and report your torrent for deletion. In addition, torrent folders that are named using the scene convention will be trumpable if the Scene label is absent from the torrent.</li>
|
<li id="r2.3.2"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.2">2.3.2.</a> <strong>Name your directories with meaningful titles, such as "Artist - Album (Year) - Format." The minimum acceptable is "Album" although it is preferable to include more information.</strong> If the directory name does not include this minimum then another user can rename the directory, re-upload, and report your torrent for deletion. In addition, torrent folders that are named using the scene convention will be trumpable if the Scene label is absent from the torrent.</li>
|
||||||
<li id="r2.3.3"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.3">2.3.3.</a> <strong>Avoid creating unnecessary nested folders (such as an extra folder for the actual album) inside your properly named directory.</strong> A torrent with unnecessary nested folders is trumpable by a torrent with such folders removed. For single disc albums, all audio files must be included in the main torrent folder. For multi-disc albums, the main torrent folder may include one sub-folder that holds the audio file contents for each disc in the box set, i.e., the main torrent folder is "Adele - 19 (2008) - FLAC" while appropriate sub-folders may include "19 (Disc 1of2)" or "19" and "Live From The Hotel Cafe (Disc 2of2)" or "Acoustic Set Live From The Hotel Cafe, Los Angeles." Additional folders are unnecessary because they do nothing to improve the organization of the torrent. If you are uncertain about what to do for other cases, PM a staff member for guidance.</li>
|
<li id="r2.3.3"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.3">2.3.3.</a> <strong>Avoid creating unnecessary nested folders (such as an extra folder for the actual album) inside your properly named directory.</strong> A torrent with unnecessary nested folders is trumpable by a torrent with such folders removed. For single disc albums, all audio files must be included in the main torrent folder. For multi-disc albums, the main torrent folder may include one sub-folder that holds the audio file contents for each disc in the box set, i.e., the main torrent folder is "Adele - 19 (2008) - FLAC" while appropriate sub-folders may include "19 (Disc 1of2)" or "19" and "Live From The Hotel Cafe (Disc 2of2)" or "Acoustic Set Live From The Hotel Cafe, Los Angeles." Additional folders are unnecessary because they do nothing to improve the organization of the torrent. If you are uncertain about what to do for other cases, PM a staff member for guidance.</li>
|
||||||
<li id="r2.3.4"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.4">2.3.4.</a> <strong>Label your torrents according to site standards.</strong> Follow the <a href="wiki.php?action=article&id=159">torrent naming guide</a> for help on how to name your uploaded torrents properly. Use the Edition Information box on the <a href="upload.php">upload page</a> to denote different editions or versions of an album (e.g., censored version versus an uncensored version). If you need help merging or editing your upload, request it in <a href="forums.php?action=viewthread&threadid=12006&page=1">this thread</a>. For the album category/release type, follow the <a href="wiki.php?action=article&id=202">guidelines here</a>.</li>
|
<li id="r2.3.4"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.4">2.3.4.</a> <strong>Label your torrents according to site standards.</strong> Follow the <a href="wiki.php?action=article&id=159">torrent naming guide</a> for help on how to name your uploaded torrents properly. Use the Edition Information box on the <a href="upload.php">upload page</a> to denote different editions or versions of an album (e.g., censored version versus an uncensored version). If you need help merging or editing your upload, please request help in <a href="forums.php?action=viewforum&forumid=61">this forum</a>. For the album category/release type, follow the <a href="wiki.php?action=article&id=202">guidelines here</a>.</li>
|
||||||
<li id="r2.3.5"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.5">2.3.5.</a> <strong>Torrents should never have [REQ] or [REQUEST] in the title or artist name.</strong> If you fill a request using the <a href="requests.php">Requests system</a>, everyone who voted for it will be automatically notified.</li>
|
<li id="r2.3.5"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.5">2.3.5.</a> <strong>Torrents should never have [REQ] or [REQUEST] in the title or artist name.</strong> If you fill a request using the <a href="requests.php">Requests system</a>, everyone who voted for it will be automatically notified.</li>
|
||||||
<li id="r2.3.6"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.6">2.3.6.</a> <strong>Torrent album titles must accurately reflect the actual album titles.</strong> Use proper capitalization when naming your albums. Typing the album titles in all lowercase letters or all capital letters is unacceptable and makes the torrent trumpable. For detailed information on naming practices see <a href="wiki.php?action=article&id=369">this wiki</a> and <a href="wiki.php?action=article&id=317">this wiki</a>. Any descriptions like [Advance] or [CDM] (if you must use them) should be entered in the Edition Information box on the <a href="upload.php">upload page</a>, not in the title. Exceptions: If the album uses special capitalization, then you may follow that convention.</li>
|
<li id="r2.3.6"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.6">2.3.6.</a> <strong>Torrent album titles must accurately reflect the actual album titles.</strong> Use proper capitalization when naming your albums. Typing the album titles in all lowercase letters or all capital letters is unacceptable and makes the torrent trumpable. For detailed information on naming practices see <a href="wiki.php?action=article&id=369">this wiki</a> and <a href="wiki.php?action=article&id=317">this wiki</a>. Any descriptions like [Advance] or [CDM] (if you must use them) should be entered in the Edition Information box on the <a href="upload.php">upload page</a>, not in the title. Exceptions: If the album uses special capitalization, then you may follow that convention.</li>
|
||||||
<li id="r2.3.7"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.7">2.3.7.</a> <strong>The Artist field in the torrent name should contain only the artist name.</strong> Do not add additional information about the artist in the artist field unless the album credits the artist in that manner. For example, "Artist X (of Band Y)" or "Band X (feat. Artist Y)." It is recommended that you search existing torrents for the artist name so that you can be sure that you name the artist the exact same way. A torrent with a proper artist name will be grouped with the existing torrents for that artist on a common artist page, and thus will be easy to find. Capitalization problems will also make a torrent trumpable. Labeling the artist incorrectly prevents your torrent from being grouped with the other torrents for the same artist. See <a href="wiki.php?action=article&id=369">this wiki</a> for more information.</li>
|
<li id="r2.3.7"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.7">2.3.7.</a> <strong>The Artist field in the torrent name should contain only the artist name.</strong> Do not add additional information about the artist in the artist field unless the album credits the artist in that manner. For example, "Artist X (of Band Y)" or "Band X (feat. Artist Y)." It is recommended that you search existing torrents for the artist name so that you can be sure that you name the artist the exact same way. A torrent with a proper artist name will be grouped with the existing torrents for that artist on a common artist page, and thus will be easy to find. Capitalization problems will also make a torrent trumpable. Labeling the artist incorrectly prevents your torrent from being grouped with the other torrents for the same artist. See <a href="wiki.php?action=article&id=369">this wiki</a> for more information.</li>
|
||||||
<li id="r2.3.8"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.8">2.3.8.</a> <strong>The year of the original recording should be used for the <a href="upload.php">upload page</a> "Year" field.</strong> Use the recording year for "Year of the original release" (if you can establish it), and use the option to add the release year for the album or edition you are uploading in the Edition Information on the <a href="upload.php">upload page</a>. For example, all editions of The Beatles (White Album) would have 1968 in the main Year box. However, each of the various mono pressings, remasters, re-releases, expanded editions, reconstructions, etc. would have its respective release year in the Edition Information box.</li>
|
<li id="r2.3.8"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.8">2.3.8.</a> <strong>The year of the original recording should be used for the <a href="upload.php">upload page</a> "Year" field.</strong> Use the recording year for "Year of the original release" (if you can establish it), and use the option to add the release year for the album or edition you are uploading in the Edition Information on the <a href="upload.php">upload page</a>. For example, all editions of The Beatles (White Album) would have 1968 in the main Year box. However, each of the various mono pressings, remasters, re-releases, expanded editions, reconstructions, etc. would have its respective release year in the Edition Information box.</li>
|
||||||
<li id="r2.3.9"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.9">2.3.9.</a> <strong>All lossless analog rips should include clear information about source lineage.</strong> All lossless SACD digital layer analog rips and vinyl rips must include clear information about recording equipment used (see <a href="#h2.8">2.8</a>). If you used a USB turntable for a vinyl rip, clearly indicate this in your lineage information. Also include all intermediate steps up to lossless encoding, such as the program used for mastering, sound card used, etc. Lossless analog rips missing rip information can be trumped by better documented lossless analog rips of equal or better quality. In order to trump a lossless analog rip without a lineage, this lineage must be included as a .txt or .log file within the new torrent.</li>
|
<li id="r2.3.9"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.9">2.3.9.</a> <strong>All lossless analog rips should include clear information about source lineage.</strong> All lossless SACD digital layer analog rips and vinyl rips must include clear information about recording equipment used (see <a href="#h2.8">2.8</a>). If you used a USB turntable for a vinyl rip, clearly indicate this in your lineage information. Also include all intermediate steps up to lossless encoding, such as the program used for mastering, sound card used, etc. Lossless analog rips missing rip information can be trumped by better documented lossless analog rips of equal or better quality. In order to trump a lossless analog rip without a lineage, this lineage must be included as a .txt or .log file within the new torrent.</li>
|
||||||
<li id="r2.3.10"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.10">2.3.10.</a> <strong>All lossless soundboard recordings must include clear information about source lineage.</strong> This information should be displayed in the torrent description. Optionally, the uploader may include the information in a .txt or .log file within the torrent. Lossless soundboard recordings missing lineage information will be deleted if reported (see <a href="#r2.6.7">2.6.7</a>).</li>
|
<li id="r2.3.10"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.10">2.3.10.</a> <strong>All lossless soundboard recordings must include clear information about source lineage.</strong> This information should be displayed in the torrent description. Optionally, the uploader may include the information in a .txt or .log file within the torrent. Lossless soundboard recordings missing lineage information will be deleted if reported (see <a href="#r2.6.7">2.6.7</a>).</li>
|
||||||
@ -335,16 +340,16 @@
|
|||||||
<li id="r2.3.13"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.13">2.3.13.</a> <strong>Track numbers are required in file names (e.g., "01 - TrackName.mp3").</strong> If a torrent without track numbers in the file names is uploaded, then a torrent with the track numbers in the file names can take its place. When formatted properly, file names will sort in order by track number or playing order. Also see <a href="#r2.3.14">2.3.14</a>. Exception: Track numbers are not required for single-track torrents.</li>
|
<li id="r2.3.13"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.13">2.3.13.</a> <strong>Track numbers are required in file names (e.g., "01 - TrackName.mp3").</strong> If a torrent without track numbers in the file names is uploaded, then a torrent with the track numbers in the file names can take its place. When formatted properly, file names will sort in order by track number or playing order. Also see <a href="#r2.3.14">2.3.14</a>. Exception: Track numbers are not required for single-track torrents.</li>
|
||||||
<li id="r2.3.14"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.14">2.3.14.</a> <strong>When formatted properly, file names will alphabetically sort into the original playing order of the release.</strong>
|
<li id="r2.3.14"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.14">2.3.14.</a> <strong>When formatted properly, file names will alphabetically sort into the original playing order of the release.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.3.14.1"><a href="#r2.3.14"><strong>↑_</strong></a> <a href="#r2.3.14.1">2.3.14.1.</a><strong>For albums with more than one artist, if the name of the artist is in the filename, it must come after the track number in order for the tracks to sort into the correct order.</strong> For example, "01 U2 - Where the Streets Have No Name.flac" is a properly formatted file name for a multiple-artist album. "U2 - 01 - Where the Streets Have No Name.mp3" is not correct in the context of a compilation album because the resultant file list will sort in alphabetical order by artist rather than by numerical track number. <strong>Note:</strong> there is no requirement for artist names to be in the track filenames, other than <a href="#2.3.16.2">2.3.16.2.</a> Torrents that have improperly-formatted or incomplete file names will be trumpable.</li>
|
<li id="r2.3.14.1"><a href="#r2.3.14"><strong>↑_</strong></a> <a href="#r2.3.14.1">2.3.14.1.</a><strong>For albums with more than one artist, if the name of the artist is in the filename, it must come after the track number in order for the tracks to sort into the correct order.</strong> For example, "01 U2 - Where the Streets Have No Name.flac" is a properly formatted file name for a multiple-artist album. "U2 - 01 - Where the Streets Have No Name.mp3" is not correct in the context of a compilation album because the resultant file list will sort in alphabetical order by artist rather than by numerical track number. <strong>Note:</strong> there is no requirement for artist names to be in the track filenames, other than <a href="#r2.3.16.2">2.3.16.2.</a> Torrents that have improperly-formatted or incomplete file names will be trumpable.</li>
|
||||||
<li id="r2.3.14.2"><a href="#r2.3.14"><strong>↑_</strong></a> <a href="#r2.3.14.2">2.3.14.2.</a><strong>If a torrent has subfolders for multiple discs of a release, these subfolders must sort by disc order.</strong> If each disc has a title (<a href="torrents.php?id=62329">torrents.php?id=62329</a>, for example) and the discs are not numbered, this rule does not apply, and each subdirectory should have the disc name included.</li>
|
<li id="r2.3.14.2"><a href="#r2.3.14"><strong>↑_</strong></a> <a href="#r2.3.14.2">2.3.14.2.</a><strong>If a torrent has subfolders for multiple discs of a release, these subfolders must sort by disc order.</strong> If each disc has a title (<a href="torrents.php?id=62329">torrents.php?id=62329</a>, for example) and the discs are not numbered, this rule does not apply, and each subdirectory should have the disc name included.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.3.15"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.15">2.3.15.</a> <strong>Multiple-disc torrents cannot have tracks with the same numbers in one directory.</strong> You may place all the tracks for Disc One in one directory and all the tracks for Disc Two in another directory. If you prefer to use one directory for all the audio files, you must use successive numbering. For example, Disc One has 15 tracks and Disc Two has 20. You may either number tracks in Disc One as #01-#15 and those of Disc Two as #16-#35 in the same directory, or you may add a Disc number before the track numbers such that the numbers are #1 06 for Disc One Track 06, and #2 03 for Disc 2 Track 03, and so forth.</li>
|
<li id="r2.3.15"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.15">2.3.15.</a> <strong>Multiple-disc torrents cannot have tracks with the same numbers in one directory.</strong> You may place all the tracks for Disc One in one directory and all the tracks for Disc Two in another directory. If you prefer to use one directory for all the audio files, you must use successive numbering. For example, Disc One has 15 tracks and Disc Two has 20. You may either number tracks in Disc One as #01-#15 and those of Disc Two as #16-#35 in the same directory, or you may add a Disc number before the track numbers such that the numbers are #1 06 for Disc One Track 06, and #2 03 for Disc 2 Track 03, and so forth.</li>
|
||||||
<li id="r2.3.16"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.16">2.3.16.</a> <strong>Properly tag your music files.</strong>
|
<li id="r2.3.16"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.16">2.3.16.</a> <strong>Properly tag your music files.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.3.16.1"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.1">2.3.16.1.</a>Certain meta tags (e.g., ID3, Vorbis) are required on all music uploads. Make sure to use the proper format tags for your files (e.g., no ID3 tags for FLAC - see <a href="#2.2.10.8">2.2.10.8</a>. ID3v2 tags for files are highly recommended over ID3v1.</li>
|
<li id="r2.3.16.1"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.1">2.3.16.1.</a>Certain meta tags (e.g., ID3, Vorbis) are required on all music uploads. Make sure to use the proper format tags for your files (e.g., no ID3 tags for FLAC - see <a href="#r2.2.10.8">2.2.10.8</a>. ID3v2 tags for files are highly recommended over ID3v1.</li>
|
||||||
<li id="r2.3.16.2"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.2">2.3.16.2.</a>ID3 tags are recommended for AC3 torrents, but are not mandatory because the format does not natively support file metadata tagging (for AC3, the file names become the vehicle for correctly labeling media files). Because of this lack of support, the Album and Artist information must be included in the torrent folder for AC3 and DTS files. In addition, the Track Number and Track Title information must be included in the file names for AC3 and DTS files; for various artists compilations, the Track Artist must be included in the file names as well. ensuring that they also satisfy <a href="#2.3.14">2.3.14.</a></li>
|
<li id="r2.3.16.2"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.2">2.3.16.2.</a>ID3 tags are recommended for AC3 torrents, but are not mandatory because the format does not natively support file metadata tagging (for AC3, the file names become the vehicle for correctly labeling media files). Because of this lack of support, the Album and Artist information must be included in the torrent folder for AC3 and DTS files. In addition, the Track Number and Track Title information must be included in the file names for AC3 and DTS files; for various artists compilations, the Track Artist must be included in the file names as well. ensuring that they also satisfy <a href="#r2.3.14">2.3.14.</a></li>
|
||||||
<li id="r2.3.16.3"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.3">2.3.16.3.</a>Torrents uploaded with both good ID3v1 tags and blank ID3v2 tags (a dual set of tags) are trumpable by torrents with either just good ID3v1 tags or good ID3v2 tags (a single set of tags). See <a href="wiki.php?action=article&id=170">this wiki</a> for more information on ID3 tags.</li>
|
<li id="r2.3.16.3"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.3">2.3.16.3.</a>Torrents uploaded with both good ID3v1 tags and blank ID3v2 tags (a dual set of tags) are trumpable by torrents with either just good ID3v1 tags or good ID3v2 tags (a single set of tags). See <a href="wiki.php?action=article&id=170">this wiki</a> for more information on ID3 tags.</li>
|
||||||
<li id="r2.3.16.4"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.4">2.3.16.4.</a>If you upload an album missing one or more of the required tags, then another user may add the tags, re-upload, and report your torrent for deletion. The required tags are:
|
<li id="r2.3.16.4"><a href="#r2.3.16"><strong>↑_</strong></a> <a href="#r2.3.16.4">2.3.16.4.</a>If you upload an album missing one or more of the required tags, then another user may add the tags, re-upload, and report your torrent for deletion. The required tags are:
|
||||||
<ul>
|
<ul>
|
||||||
<li>Artist</li>
|
<li>Artist</li>
|
||||||
@ -356,8 +361,8 @@
|
|||||||
</ul>
|
</ul>
|
||||||
<span style="font-style: italic;">Note: The "Year" tag is optional, but strongly encouraged. However, if missing or incorrect, this is not grounds for trumping a torrent.</span>
|
<span style="font-style: italic;">Note: The "Year" tag is optional, but strongly encouraged. However, if missing or incorrect, this is not grounds for trumping a torrent.</span>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.3.17"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.17">2.3.17.</a> <strong>The torrent artist for classical works should use the full composer name.</strong> Before uploading see <a href="wiki.php?action=article&id=700">this wiki</a> for guidelines on uploading classical music torrents. Also, consult <a href="wiki.php?action=article&id=691">this wiki</a> for a full explanation of the classical music tagging system.</li>
|
<li id="r2.3.17"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.17">2.3.17.</a> <strong>The torrent artist for classical works should use the full composer name.</strong> Before uploading see <a href="wiki.php?action=article&id=700">this wiki</a> for guidelines on uploading classical music torrents. Also, consult <a href="wiki.php?action=article&id=691">this wiki</a> for a full explanation of the classical music tagging system.</li>
|
||||||
<li id="r2.3.18"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.18">2.3.18.</a> <strong>Newly re-tagged torrents trumping badly tagged torrents must reflect a substantial improvement over the previous tags.</strong> Small changes that include replacing ASCII characters with proper foreign language characters with diacritical marks, fixing slight misspellings, or missing an alternate spelling of an artist (e.g., excluding "The" before a band name) are insufficient grounds for replacing other torrents. Artist names that are misspelled in the tags are grounds for trumping; this includes character accents and characters that mean one letter in one language and a different letter in another language. Improper capitalization in the tags is grounds for trumping; this includes artist tags (or composer tags) that contain names that are all capitalized or track titles that are all capitalized. Tags with multiple entries in the same tag (e.g., track number and track title in the track title tags; or track number, artist, and track title in the artist tags) are subject to trumping. You may trump a release if the tags do not follow the data from a reputable music cataloguing service such as <a href="http://musicbrainz.org/">Musicbrainz</a> or <a href="http://www.discogs.com/">Discogs</a>. In the case of a conflict between reputable listings, either tagged version is equally preferred on the site and cannot trump the other. For example, an album is tagged differently in <a href="http://musicbrainz.org/">Musicbrainz</a> and in <a href="http://www.discogs.com/">Discogs</a>. Either style of tagging is permitted; neither is "better" than the other. In that case, any newly tagged torrents replacing an already properly tagged torrent, which follows good tagging convention, will result in a dupe. Note: For classical music, please follow these <a href="wiki.php?action=article&id=691">tagging guidelines</a>.</li>
|
<li id="r2.3.18"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.18">2.3.18.</a> <strong>Newly re-tagged torrents trumping badly tagged torrents must reflect a substantial improvement over the previous tags.</strong> Small changes that include replacing ASCII characters with proper foreign language characters with diacritical marks, fixing slight misspellings, or missing an alternate spelling of an artist (e.g., excluding "The" before a band name) are insufficient grounds for replacing other torrents. Artist names that are misspelled in the tags are grounds for trumping; this includes character accents and characters that mean one letter in one language and a different letter in another language. Improper capitalization in the tags is grounds for trumping; this includes artist tags (or composer tags) that contain names that are all capitalized or track titles that are all capitalized. Tags with multiple entries in the same tag (e.g., track number and track title in the track title tags; or track number, artist, and track title in the artist tags) are subject to trumping. You may trump a release if the tags do not follow the data from a reputable music cataloguing service such as <a href="http://musicbrainz.org/">Musicbrainz</a> or <a href="http://www.discogs.com/">Discogs</a>. In the case of a conflict between reputable listings, either tagged version is equally preferred on the site and cannot trump the other. For example, an album is tagged differently in <a href="http://musicbrainz.org/">Musicbrainz</a> and in <a href="http://www.discogs.com/">Discogs</a>. Either style of tagging is permitted; neither is "better" than the other. In that case, any newly tagged torrents replacing an already properly tagged torrent, which follows good tagging convention, will result in a dupe. Note: For classical music, please follow these <a href="wiki.php?action=article&id=691">tagging guidelines</a>.</li>
|
||||||
<li id="r2.3.19"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.19">2.3.19.</a> <strong>Avoid embedding large images if including cover art in the meta tags.</strong> Do not embed large images (in excess of 512 KB) in the file meta tags. It adds unnecessary bloat to the files. Include the artwork in a separate directory if it is too big or if it consists of high-resolution images. Should you include an image of over 512 KB as embedded artwork, your torrent will be trumpable.</li>
|
<li id="r2.3.19"><a href="#h2.3"><strong>↑_</strong></a> <a href="#r2.3.19">2.3.19.</a> <strong>Avoid embedding large images if including cover art in the meta tags.</strong> Do not embed large images (in excess of 512 KB) in the file meta tags. It adds unnecessary bloat to the files. Include the artwork in a separate directory if it is too big or if it consists of high-resolution images. Should you include an image of over 512 KB as embedded artwork, your torrent will be trumpable.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@ -378,8 +383,8 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li id="r2.5.1"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.1">2.5.1.</a> <strong>Downsampling of analog rips is allowed.</strong> Analog rips that have been downsampled may be uploaded (e.g., a 24/96 vinyl rip downsampled to 16/44.1). Any downsampled torrents must include the specific programs and methods used to downsample in addition to the lineage for the original rip or it will be deleted.</li>
|
<li id="r2.5.1"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.1">2.5.1.</a> <strong>Downsampling of analog rips is allowed.</strong> Analog rips that have been downsampled may be uploaded (e.g., a 24/96 vinyl rip downsampled to 16/44.1). Any downsampled torrents must include the specific programs and methods used to downsample in addition to the lineage for the original rip or it will be deleted.</li>
|
||||||
<li id="r2.5.2"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.2">2.5.2.</a> <strong>Only one lossy vinyl rip in a specific bitrate is allowed per edition.</strong> Once someone has uploaded a lossy format vinyl rip (in MP3), you may not upload another copy in the same bitrate. It does not matter whether or not the lossy files are of differing sampling rates. For example, if a 44.1 kHz V2 (VBR) copy is already up, you may not upload the same album in V2 (VBR) at 48 kHz.</li>
|
<li id="r2.5.2"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.2">2.5.2.</a> <strong>Only one lossy vinyl rip in a specific bitrate is allowed per edition.</strong> Once someone has uploaded a lossy format vinyl rip (in MP3), you may not upload another copy in the same bitrate. It does not matter whether or not the lossy files are of differing sampling rates. For example, if a 44.1 kHz V2 (VBR) copy is already up, you may not upload the same album in V2 (VBR) at 48 kHz.</li>
|
||||||
<li id="r2.5.3"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.3">2.5.3.</a> <strong>Only one 16-bit lossless vinyl rip is allowed per edition.</strong> Lossless 16-bit vinyl rips must have a sampling rate of either 44.1 kHz or 48 kHz. Upsampling of rips is strictly forbidden. See <a href="wiki.php?action=article&id=78">this wiki</a> for vinyl ripping information and <a href="wiki.php?action=article&id=117">this wiki</a> for general information on the vinyl medium.</li>
|
<li id="r2.5.3"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.3">2.5.3.</a> <strong>Only one 16-bit lossless vinyl rip is allowed per edition.</strong> Lossless 16-bit vinyl rips must have a sampling rate of either 44.1 kHz or 48 kHz. Upsampling of rips is strictly forbidden. See <a href="wiki.php?action=article&id=78">this wiki</a> for vinyl ripping information and <a href="wiki.php?action=article&id=117">this wiki</a> for general information on the vinyl medium.</li>
|
||||||
<li id="r2.5.4"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.4">2.5.4.</a> <strong>A maximum of two 24-bit lossless vinyl rips are allowed per edition: A lossless 24-bit rip with sampling rate equal to 192 kHz and a lossless 24-bit rip with sampling rate equal to 44.1, 48, 88.2, or 96 kHz.</strong> Lossless 24/96 vinyl rips trump 24/44.1, 24/48, and 24/88.2 rips. Two or more lossless 24-bit vinyl rips with sampling rates equal to 44.1, 48, or 88.2 kHz are considered dupes. So a 24/88.2 rip and a 24/48 rip of the same material are considered dupes. Rips must sound as good as or better than the rips they are attempting to trump (see <a href="#r2.2.11.9">2.2.11.9</a> for examples of trumping proofs). Upsampling of rips is strictly forbidden. See <a href="wiki.php?action=article&id=118">this wiki</a> for more information on 24-bit vinyl ripping.</li>
|
<li id="r2.5.4"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.4">2.5.4.</a> <strong>A maximum of two 24-bit lossless vinyl rips are allowed per edition: A lossless 24-bit rip with sampling rate equal to 192 kHz and a lossless 24-bit rip with sampling rate equal to 44.1, 48, 88.2, or 96 kHz.</strong> Lossless 24/96 vinyl rips trump 24/44.1, 24/48, and 24/88.2 rips. Two or more lossless 24-bit vinyl rips with sampling rates equal to 44.1, 48, or 88.2 kHz are considered dupes. So a 24/88.2 rip and a 24/48 rip of the same material are considered dupes. Rips must sound as good as or better than the rips they are attempting to trump (see <a href="#r2.2.11.9">2.2.11.9</a> for examples of trumping proofs). Upsampling of rips is strictly forbidden. See <a href="wiki.php?action=article&id=118">this wiki</a> for more information on 24-bit vinyl ripping.</li>
|
||||||
<li id="r2.5.5"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.5">2.5.5.</a> <strong>Vinyl rips may be trumped by better-sounding rips of the same bit depth, regardless of lineage information (see <a href="#r2.3.9">2.3.9</a>).</strong>
|
<li id="r2.5.5"><a href="#h2.5"><strong>↑_</strong></a> <a href="#r2.5.5">2.5.5.</a> <strong>Vinyl rips may be trumped by better-sounding rips of the same bit depth, regardless of lineage information (see <a href="#r2.3.9">2.3.9</a>).</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.5.5.1"><a href="#r2.5.5"><strong>↑_</strong></a> <a href="#r2.5.5.1">2.5.5.1.</a> <strong>Lossless 16-bit rips may be trumped by better-sounding lossless 16/44.1 or 16/48 rips.</strong> </li>
|
<li id="r2.5.5.1"><a href="#r2.5.5"><strong>↑_</strong></a> <a href="#r2.5.5.1">2.5.5.1.</a> <strong>Lossless 16-bit rips may be trumped by better-sounding lossless 16/44.1 or 16/48 rips.</strong> </li>
|
||||||
@ -406,7 +411,7 @@
|
|||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.6.1"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.1">2.6.1.</a> <strong>Live soundboard material should be uploaded as one torrent per show.</strong> </li>
|
<li id="r2.6.1"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.1">2.6.1.</a> <strong>Live soundboard material should be uploaded as one torrent per show.</strong> </li>
|
||||||
<li id="r2.6.2"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.2">2.6.2.</a> <strong>Only one edition of each unofficial live recording is allowed.</strong> Such bootlegs and mixtapes can be unofficially remastered several times, and such constant remastering is of little consequence on a site where bootlegs are not the primary focus. Only one unofficial soundboard recording of each show is allowed, and it should be uploaded on the torrent page in the absence of any edition information. See <a href="wiki.php?action=article&id=750">this wiki</a> for more information on how live music is organized on the site.</li>
|
<li id="r2.6.2"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.2">2.6.2.</a> <strong>Only one edition of each unofficial live recording is allowed.</strong> Such bootlegs and mixtapes can be unofficially remastered several times, and such constant remastering is of little consequence on a site where bootlegs are not the primary focus. Only one unofficial soundboard recording of each show is allowed, and it should be uploaded on the torrent page in the absence of any edition information. See <a href="wiki.php?action=article&id=750">this wiki</a> for more information on how live music is organized on the site.</li>
|
||||||
<li id="r2.6.3"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.3">2.6.3.</a> <strong>No unofficial audience recordings.</strong>
|
<li id="r2.6.3"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.3">2.6.3.</a> <strong>No unofficial audience recordings.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.6.3.1"><a href="#r2.6.3"><strong>↑_</strong></a> <a href="#r2.6.3.1">2.6.3.1.</a> <strong>AUD (Audience), IEM (In Ear Monitor), ALD (Assistive Listening Device), Mini-Disc, and Matrix-sourced recordings cannot be uploaded.</strong> </li>
|
<li id="r2.6.3.1"><a href="#r2.6.3"><strong>↑_</strong></a> <a href="#r2.6.3.1">2.6.3.1.</a> <strong>AUD (Audience), IEM (In Ear Monitor), ALD (Assistive Listening Device), Mini-Disc, and Matrix-sourced recordings cannot be uploaded.</strong> </li>
|
||||||
@ -428,19 +433,19 @@
|
|||||||
<li id="r2.6.7.3"><a href="#r2.6.7"><strong>↑_</strong></a> <a href="#r2.6.7.3">2.6.7.3.</a> <strong>No lineage editing or misrepresentation will be tolerated.</strong> Doing so will result in the loss of upload privileges. If you are unsure of a lineage, then do not provide it. Do NOT guess.</li>
|
<li id="r2.6.7.3"><a href="#r2.6.7"><strong>↑_</strong></a> <a href="#r2.6.7.3">2.6.7.3.</a> <strong>No lineage editing or misrepresentation will be tolerated.</strong> Doing so will result in the loss of upload privileges. If you are unsure of a lineage, then do not provide it. Do NOT guess.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.6.8"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.8">2.6.8.</a> <strong>Soundboards must be uploaded according to <a href="wiki.php?action=article&id=159">this naming and uploading guide</a> and according to <a href="wiki.php?action=article&id=750">this wiki</a> on site organization.</strong> </li>
|
<li id="r2.6.8"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.8">2.6.8.</a> <strong>Soundboards must be uploaded according to <a href="wiki.php?action=article&id=159">this naming and uploading guide</a> and according to <a href="wiki.php?action=article&id=750">this wiki</a> on site organization.</strong> </li>
|
||||||
<li id="r2.6.9"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.9">2.6.9.</a> <strong>The following lists should illustrate when Live music may or may not be uploaded.</strong>
|
<li id="r2.6.9"><a href="#h2.6"><strong>↑_</strong></a> <a href="#r2.6.9">2.6.9.</a> <strong>The following lists should illustrate when Live music may or may not be uploaded.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.6.9.1"><a href="#r2.6.9"><strong>↑_</strong></a> <a href="#r2.6.9.1">2.6.9.1.</a> <strong>Allowed Live Music</strong>
|
<li id="r2.6.9.1"><a href="#r2.6.9"><strong>↑_</strong></a> <a href="#r2.6.9.1">2.6.9.1.</a> <strong>Allowed Live Music</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Live album bought from an online retailer</li>
|
<li>Live album bought from an online retailer</li>
|
||||||
<li>CD bought from a brick & mortar store</li>
|
<li>CD bought from a brick & mortar store</li>
|
||||||
<li>Soundboard recording that follows the Live Music rules</li>
|
<li>Soundboard recording that follows the Live Music rules</li>
|
||||||
<li>Soundboard recording that has been adopted by the artist</li>
|
<li>Soundboard recording that has been adopted by the artist</li>
|
||||||
<li>WEB-sourced live bootleg (released by the artist or a record label)</li>
|
<li>WEB-sourced live bootleg (released by the artist or a record label)</li>
|
||||||
<li>CD-sourced live bootleg (released by the artist or a record label)</li>
|
<li>CD-sourced live bootleg (released by the artist or a record label)</li>
|
||||||
<li>Bootleg album that was later sanctioned by the record label</li>
|
<li>Bootleg album that was later sanctioned by the record label</li>
|
||||||
<li>Soundboard recordings containing a tape generation in the lineage; this will require staff approval unless the tape generation is the first generation[/hide]</li>
|
<li>Soundboard recordings containing a tape generation in the lineage; this will require staff approval unless the tape generation is the first generation</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r2.6.9.2"><a href="#r2.6.9"><strong>↑_</strong></a> <a href="#r2.6.9.2">2.6.9.2.</a> <strong>Disallowed Live Music</strong>
|
<li id="r2.6.9.2"><a href="#r2.6.9"><strong>↑_</strong></a> <a href="#r2.6.9.2">2.6.9.2.</a> <strong>Disallowed Live Music</strong>
|
||||||
@ -462,7 +467,7 @@
|
|||||||
<h5 id="h2.7"><a href="#h2.7k"><strong>↑</strong></a> <a href="#h2.7">2.7.</a> Multichannel</h5>
|
<h5 id="h2.7"><a href="#h2.7k"><strong>↑</strong></a> <a href="#h2.7">2.7.</a> Multichannel</h5>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.7.1"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.1">2.7.1.</a> <strong>The only lossy multichannel audio formats allowed are AC3 and DTS.</strong> If the source is DTS or AC3, do not transcode to other formats. Exceptions: Transcoding is allowed if the source is lossless (LPCM or MLP). Those should be compressed with multichannel FLAC. See <a href="wiki.php?action=article&id=143">this wiki</a> for more information.</li>
|
<li id="r2.7.1"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.1">2.7.1.</a> <strong>The only lossy multichannel audio formats allowed are AC3 and DTS.</strong> If the source is DTS or AC3, do not transcode to other formats. Exceptions: Transcoding is allowed if the source is lossless (LPCM or MLP). Those should be compressed with multichannel FLAC. See <a href="wiki.php?action=article&id=143">this wiki</a> for more information.</li>
|
||||||
<li id="r2.7.2"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.2">2.7.2.</a> <strong>DTS-CD rips cannot be re-compressed to a lossless codec and they must be kept as WAV files with the .dts extension.</strong> </li>
|
<li id="r2.7.2"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.2">2.7.2.</a> <strong>DTS-CD rips cannot be re-compressed to a lossless codec and they must be kept as WAV files with the .dts extension.</strong> </li>
|
||||||
<li id="r2.7.3"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.3">2.7.3.</a> <strong>A multichannel lossless rip of multichannel source media must have the same number of and arrangement of channels as the source media.</strong> In addition, the rip must be encoded at the same bit depth and sampling rate as the original stream. Downsampled versions of the original source material may be trumped by a torrent containing audio files encoded at the original bit depth and sampling rate as the files on disc.</li>
|
<li id="r2.7.3"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.3">2.7.3.</a> <strong>A multichannel lossless rip of multichannel source media must have the same number of and arrangement of channels as the source media.</strong> In addition, the rip must be encoded at the same bit depth and sampling rate as the original stream. Downsampled versions of the original source material may be trumped by a torrent containing audio files encoded at the original bit depth and sampling rate as the files on disc.</li>
|
||||||
<li id="r2.7.4"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.4">2.7.4.</a> <strong>A multichannel rip of source media that includes both multichannel and stereo streams may coexist with a rip of the stereo stream off the same media.</strong> A rip of the stereo stream trumps a downmix of the multichannel rip. However, if there is no rip of a stereo stream uploaded, a stereo downmix of a rip from the multichannel stream may coexist with a multichannel rip of the same stream. For example, a DVD-Audio disc may include both stereo LPCM (Linear Pulse-Code Modulation) audio and 5.1 MLP (Meridian Lossless Packing) audio. In this case, a stereo rip of the LPCM stream could coexist with a 5.1 rip of the MLP stream, and the stereo LPCM rip would trump a stereo downmix of a multichannel MLP stream rip. If no stereo LPCM rip of this source media was uploaded, a stereo downmix of the MLP stream could coexist with a 5.1 multichannel rip of the MLP stream.</li>
|
<li id="r2.7.4"><a href="#h2.7"><strong>↑_</strong></a> <a href="#r2.7.4">2.7.4.</a> <strong>A multichannel rip of source media that includes both multichannel and stereo streams may coexist with a rip of the stereo stream off the same media.</strong> A rip of the stereo stream trumps a downmix of the multichannel rip. However, if there is no rip of a stereo stream uploaded, a stereo downmix of a rip from the multichannel stream may coexist with a multichannel rip of the same stream. For example, a DVD-Audio disc may include both stereo LPCM (Linear Pulse-Code Modulation) audio and 5.1 MLP (Meridian Lossless Packing) audio. In this case, a stereo rip of the LPCM stream could coexist with a 5.1 rip of the MLP stream, and the stereo LPCM rip would trump a stereo downmix of a multichannel MLP stream rip. If no stereo LPCM rip of this source media was uploaded, a stereo downmix of the MLP stream could coexist with a 5.1 multichannel rip of the MLP stream.</li>
|
||||||
@ -472,7 +477,7 @@
|
|||||||
<h5 id="h2.8"><a href="#h2.8k"><strong>↑</strong></a> <a href="#h2.8">2.8.</a> SACD</h5>
|
<h5 id="h2.8"><a href="#h2.8k"><strong>↑</strong></a> <a href="#h2.8">2.8.</a> SACD</h5>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.8.1"><a href="#h2.8"><strong>↑_</strong></a> <a href="#r2.8.1">2.8.1.</a> <strong>Digital rips produced by the PlayStation 3 (PS3) - SACD ripper process (see <a href="wiki.php?action=article&id=922">this wiki</a>) trump any other SACD digital or analog rips (e.g., Oppo method, analog output to ADC, DSD stream from a SACD player, etc.).</strong> Non-PS3 digital SACD rips trump analog SACD rips. Torrents containing a 88.2 kHz digitally-sourced PCM stream compressed with FLAC are trumpable by new digital rips made directly from the SACD disc using the PS3-SACD ripper method. See <a href="wiki.php?action=article&id=922">this wiki</a> for more information on the SACD format. Note: This means that you cannot download another user's uncompressed DSD source files and manipulate those.</li>
|
<li id="r2.8.1"><a href="#h2.8"><strong>↑_</strong></a> <a href="#r2.8.1">2.8.1.</a> <strong>Digital rips produced by the PlayStation 3 (PS3) - SACD ripper process (see <a href="wiki.php?action=article&id=922">this wiki</a>) trump any other SACD digital or analog rips (e.g., Oppo method, analog output to ADC, DSD stream from a SACD player, etc.).</strong> Non-PS3 digital SACD rips trump analog SACD rips. Torrents containing a 88.2 kHz digitally-sourced PCM stream compressed with FLAC are trumpable by new digital rips made directly from the SACD disc using the PS3-SACD ripper method. See <a href="wiki.php?action=article&id=922">this wiki</a> for more information on the SACD format. Note: This means that you cannot download another user's uncompressed DSD source files and manipulate those.</li>
|
||||||
<li id="r2.8.2"><a href="#h2.8"><strong>↑_</strong></a> <a href="#r2.8.2">2.8.2.</a> <strong>Analog SACD rips may have a sampling rate equal to 88.2 or 96 kHz and may be trumped at any time by a digital 24/88.2 SACD rip.</strong> If a digital SACD rip has frequencies higher than 44.1 kHz, contact a moderator privately for approval to upload a 24-bit rip with a sampling rate greater than 88.2 kHz.</li>
|
<li id="r2.8.2"><a href="#h2.8"><strong>↑_</strong></a> <a href="#r2.8.2">2.8.2.</a> <strong>Analog SACD rips may have a sampling rate equal to 88.2 or 96 kHz and may be trumped at any time by a digital 24/88.2 SACD rip.</strong> If a digital SACD rip has frequencies higher than 44.1 kHz, contact a moderator privately for approval to upload a 24-bit rip with a sampling rate greater than 88.2 kHz.</li>
|
||||||
<li id="r2.8.3"><a href="#h2.8"><strong>↑_</strong></a> <a href="#r2.8.3">2.8.3.</a> <strong>SACD hybrid rip sources must be properly labeled.</strong>
|
<li id="r2.8.3"><a href="#h2.8"><strong>↑_</strong></a> <a href="#r2.8.3">2.8.3.</a> <strong>SACD hybrid rip sources must be properly labeled.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
@ -500,7 +505,7 @@
|
|||||||
<h5 id="h2.9"><a href="#h2.9k"><strong>↑</strong></a> <a href="#h2.9">2.9.</a> Blu-ray</h5>
|
<h5 id="h2.9"><a href="#h2.9k"><strong>↑</strong></a> <a href="#h2.9">2.9.</a> Blu-ray</h5>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.9.1"><a href="#h2.9"><strong>↑_</strong></a> <a href="#r2.9.1">2.9.1.</a> <strong>Only digital rips of the lossless audio track from a Blu-ray disc may be uploaded (see <a href="wiki.php?action=article&id=926">this wiki</a> and <a href="wiki.php?action=article&id=854">this wiki</a> for more information).</strong> Analog Blu-ray rips are forbidden. Blu-ray discs may contain all of the following formats: Dolby Digital (AC3), DTS, Dolby Digital Plus (AC3), DTS-HD, PCM, Dolby TrueHD, DTS-HD Master Audio. Only PCM, Dolby TrueHD, and DTS-HD Master Audio contain truly lossless audio material on the Blu-ray disc. See <a href="#r2.1.1">2.1.1</a> and <a href="#r2.7.1">2.7.1 </a> for more information on multichannel audio material on the site.</li>
|
<li id="r2.9.1"><a href="#h2.9"><strong>↑_</strong></a> <a href="#r2.9.1">2.9.1.</a> <strong>Only digital rips of the lossless audio track from a Blu-ray disc may be uploaded (see <a href="wiki.php?action=article&id=926">this wiki</a> and <a href="wiki.php?action=article&id=854">this wiki</a> for more information).</strong> Analog Blu-ray rips are forbidden. Blu-ray discs may contain all of the following formats: Dolby Digital (AC3), DTS, Dolby Digital Plus (AC3), DTS-HD, PCM, Dolby TrueHD, DTS-HD Master Audio. Only PCM, Dolby TrueHD, and DTS-HD Master Audio contain truly lossless audio material on the Blu-ray disc. See <a href="#r2.1.1">2.1.1</a> and <a href="#r2.7.1">2.7.1 </a> for more information on multichannel audio material on the site.</li>
|
||||||
<li id="r2.9.2"><a href="#h2.9"><strong>↑_</strong></a> <a href="#r2.9.2">2.9.2.</a> <strong> Uploading movie audio tracks is prohibited.</strong> For example, the Inception Blu-ray disc set features a DTS-HD Master Audio 5.1 surround sound track for the entire movie, which cannot be uploaded, and a DTS-HD Master Audio 5.1 surround sound mix of the movie soundtrack, which can be uploaded. Uploading movie audio tracks will result in a warning and the loss of your uploading privileges.</li>
|
<li id="r2.9.2"><a href="#h2.9"><strong>↑_</strong></a> <a href="#r2.9.2">2.9.2.</a> <strong> Uploading movie audio tracks is prohibited.</strong> For example, the Inception Blu-ray disc set features a DTS-HD Master Audio 5.1 surround sound track for the entire movie, which cannot be uploaded, and a DTS-HD Master Audio 5.1 surround sound mix of the movie soundtrack, which can be uploaded. Uploading movie audio tracks will result in a warning and the loss of your uploading privileges.</li>
|
||||||
<li id="r2.9.3"><a href="#h2.9"><strong>↑_</strong></a> <a href="#r2.9.3">2.9.3.</a> <strong> Blu-ray rip sources must be properly labeled.</strong>
|
<li id="r2.9.3"><a href="#h2.9"><strong>↑_</strong></a> <a href="#r2.9.3">2.9.3.</a> <strong> Blu-ray rip sources must be properly labeled.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
@ -529,7 +534,7 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li id="r2.10.1"><a href="#h2.10"><strong>↑_</strong></a> <a href="#r2.10.1">2.10.1.</a> <strong>Cassettes are allowed under strict conditions.</strong>
|
<li id="r2.10.1"><a href="#h2.10"><strong>↑_</strong></a> <a href="#r2.10.1">2.10.1.</a> <strong>Cassettes are allowed under strict conditions.</strong>
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r2.10.1.1"><a href="#r2.10.1"><strong>↑_</strong></a> <a href="#r2.10.1.1">2.10.1.1.</a> <strong>Releases available only on cassette may be uploaded under special strict conditions (see <a href="wiki.php?action=article&id=593">this wiki</a> for information on cassette ripping).</strong> Cassette-sourced uploads must be approved by staff first (see <a href="wiki.php?action=article&id=681">this wiki</a> for details on the approval process). This also applies to soundboard releases where a tape generation can be found in the lineage (either the tape is not in the first generation or there are multiple tape generations). See <a href="#r2.6.6">2.6.6</a> for more information.</li>
|
<li id="r2.10.1.1"><a href="#r2.10.1"><strong>↑_</strong></a> <a href="#r2.10.1.1">2.10.1.1.</a> <strong>Releases available only on cassette may be uploaded under special strict conditions (see <a href="wiki.php?action=article&id=593">this wiki</a> for information on cassette ripping).</strong> Cassette-sourced uploads must be approved by staff first (see <a href="wiki.php?action=article&id=681">this wiki</a> for details on the approval process). This also applies to soundboard releases where a tape generation can be found in the lineage (either the tape is not in the first generation or there are multiple tape generations). See <a href="#r2.6.6">2.6.6</a> for more information.</li>
|
||||||
<li id="r2.10.1.2"><a href="#r2.10.1"><strong>↑_</strong></a> <a href="#r2.10.1.2">2.10.1.2.</a> <strong>You must contact a moderator privately for approval before uploading.</strong> Include proof in the form of discography information from a reputable source as well as the spectrals for 2 songs in your message.</li>
|
<li id="r2.10.1.2"><a href="#r2.10.1"><strong>↑_</strong></a> <a href="#r2.10.1.2">2.10.1.2.</a> <strong>You must contact a moderator privately for approval before uploading.</strong> Include proof in the form of discography information from a reputable source as well as the spectrals for 2 songs in your message.</li>
|
||||||
<li id="r2.10.1.3"><a href="#r2.10.1"><strong>↑_</strong></a> <a href="#r2.10.1.3">2.10.1.3.</a> <strong>Be ready to provide the actual audio files via an online file hosting site if requested to by the staff member handling your tape approval.</strong> The staff may reject any poorly-executed cassette rips.</li>
|
<li id="r2.10.1.3"><a href="#r2.10.1"><strong>↑_</strong></a> <a href="#r2.10.1.3">2.10.1.3.</a> <strong>Be ready to provide the actual audio files via an online file hosting site if requested to by the staff member handling your tape approval.</strong> The staff may reject any poorly-executed cassette rips.</li>
|
||||||
</ul>
|
</ul>
|
||||||
@ -538,7 +543,7 @@
|
|||||||
<li id="r2.10.3"><a href="#h2.10"><strong>↑_</strong></a> <a href="#r2.10.3">2.10.3.</a> <strong>Unapproved cassette torrents may be reported and will be deleted if the torrent is not labeled with the staff approval torrent label.</strong> </li>
|
<li id="r2.10.3"><a href="#h2.10"><strong>↑_</strong></a> <a href="#r2.10.3">2.10.3.</a> <strong>Unapproved cassette torrents may be reported and will be deleted if the torrent is not labeled with the staff approval torrent label.</strong> </li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<h4 id="h3"><a href="#h3k"><strong>↑</strong></a> <a href="#h3">3.</a> Comedy (Audio) & Audiobooks</h4>
|
<h4 id="h3"><a href="#h3k"><strong>↑</strong></a> <a href="#h3">3.</a> Comedy (Audio) & Audiobooks</h4>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r3.1"><a href="#r3.1k"><strong>↑_</strong></a> <a href="#r3.1">3.1.</a> The only formats allowed for comedy and audiobooks are those listed below:
|
<li id="r3.1"><a href="#r3.1k"><strong>↑_</strong></a> <a href="#r3.1">3.1.</a> The only formats allowed for comedy and audiobooks are those listed below:
|
||||||
@ -548,7 +553,7 @@
|
|||||||
<li id="r3.1.2"><a href="#r3.1"><strong>↑_</strong></a> <a href="#r3.1.2">3.1.2.</a> <strong>Lossy comedy and audiobook torrents must have a minimum average bitrate of 32 kbps (for MP3 and AAC).</strong> </li>
|
<li id="r3.1.2"><a href="#r3.1"><strong>↑_</strong></a> <a href="#r3.1.2">3.1.2.</a> <strong>Lossy comedy and audiobook torrents must have a minimum average bitrate of 32 kbps (for MP3 and AAC).</strong> </li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li id="r3.2"><a href="#r3.2k"><strong>↑_</strong></a> <a href="#r3.2">3.2.</a> <strong>No music is permitted in these two categories. They are for spoken word only. See <a href="wiki.php?action=article&id=955">this wiki</a> for more information.</strong> For example, if a comedy artist performs a stand-up routine that is recorded on CD, this would be classified as a Comedy album. If this same artist sings some funny songs on an album, this would be classified as a Comedy album. If this same artist produces a music CD with no hint of comedic material (e.g., spoken word tracks), this would be classified as a music album (see <a href="#h2.1">2.1</a>). </li>
|
<li id="r3.2"><a href="#r3.2k"><strong>↑_</strong></a> <a href="#r3.2">3.2.</a> <strong>No music is permitted in these two categories. They are for spoken word only. See <a href="wiki.php?action=article&id=955">this wiki</a> for more information.</strong> For example, if a comedy artist performs a stand-up routine that is recorded on CD, this would be classified as a Comedy album. If this same artist sings some funny songs on an album, this would be classified as a Comedy album. If this same artist produces a music CD with no hint of comedic material (e.g., spoken word tracks), this would be classified as a music album (see <a href="#h2.1">2.1</a>). </li>
|
||||||
<li id="r3.3"><a href="#r3.3k"><strong>↑_</strong></a> <a href="#r3.3">3.3.</a> <strong>No radio talk shows or podcasts are allowed.</strong> What.CD is primarily a music site, and those recordings do not belong in any torrent category. </li>
|
<li id="r3.3"><a href="#r3.3k"><strong>↑_</strong></a> <a href="#r3.3">3.3.</a> <strong>No radio talk shows or podcasts are allowed.</strong> What.CD is primarily a music site, and those recordings do not belong in any torrent category. </li>
|
||||||
<li id="r3.4"><a href="#r3.4k"><strong>↑_</strong></a> <a href="#r3.4">3.4.</a> <strong>Comedy and audiobooks must not be freely available.</strong> Free audiobooks and comedy releases from official sources may not be uploaded. Exceptions: Uploads that are at a different bitrate from those freely available are allowed. If a comedy album in 96 kbps CBR MP3 is freely available, you may still upload a V8 (VBR) or higher bitrate torrent of the freely available torrent if it does not already exist on the site. </li>
|
<li id="r3.4"><a href="#r3.4k"><strong>↑_</strong></a> <a href="#r3.4">3.4.</a> <strong>Comedy and audiobooks must not be freely available.</strong> Free audiobooks and comedy releases from official sources may not be uploaded. Exceptions: Uploads that are at a different bitrate from those freely available are allowed. If a comedy album in 96 kbps CBR MP3 is freely available, you may still upload a V8 (VBR) or higher bitrate torrent of the freely available torrent if it does not already exist on the site. </li>
|
||||||
<li id="r3.5"><a href="#r3.5k"><strong>↑_</strong></a> <a href="#r3.5">3.5.</a> <strong>Releases must be unarchived and consist of a single release.</strong> Comedy and audiobook releases should not be archived in a file (e.g., .zip or .rar). The torrent must consist of a directory containing the audio files. Only one release per torrent is allowed. You may not bundle multiple audiobooks or comedy releases into one torrent. See <a href="#r1.2.7">1.2.7</a> and <a href="#r2.1.20">2.1.20</a>. </li>
|
<li id="r3.5"><a href="#r3.5k"><strong>↑_</strong></a> <a href="#r3.5">3.5.</a> <strong>Releases must be unarchived and consist of a single release.</strong> Comedy and audiobook releases should not be archived in a file (e.g., .zip or .rar). The torrent must consist of a directory containing the audio files. Only one release per torrent is allowed. You may not bundle multiple audiobooks or comedy releases into one torrent. See <a href="#r1.2.7">1.2.7</a> and <a href="#r2.1.20">2.1.20</a>. </li>
|
||||||
@ -595,7 +600,7 @@
|
|||||||
<li id="r4.1.14"><a href="#h4.1"><strong>↑_</strong></a> <a href="#r4.1.14">4.1.14.</a> <strong>All applications must be complete.</strong> If an application consists of multiple CDs or DVDs, these should all be uploaded as one torrent and not as separate torrents. This also applies to scene uploads where multiple CDs or DVDs were released separately.</li>
|
<li id="r4.1.14"><a href="#h4.1"><strong>↑_</strong></a> <a href="#r4.1.14">4.1.14.</a> <strong>All applications must be complete.</strong> If an application consists of multiple CDs or DVDs, these should all be uploaded as one torrent and not as separate torrents. This also applies to scene uploads where multiple CDs or DVDs were released separately.</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<h5 id="h4.2"><a href="#h4.2k"><strong>↑</strong></a> <a href="#h4.2">4.2.</a> Duplicates & Trumping</h5>
|
<h5 id="h4.2"><a href="#h4.2k"><strong>↑</strong></a> <a href="#h4.2">4.2.</a> Duplicates & Trumping</h5>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r4.2.1"><a href="#h4.2"><strong>↑_</strong></a> <a href="#r4.2.1">4.2.1.</a> <strong>Applications having the same version number are dupes.</strong> An application may have older versions than those already uploaded. Those are not dupes. Only identical versions are duplicates. Note: Not everyone has updated to the latest operating system. In such cases, older versions of applications may still be useful for a number of users.</li>
|
<li id="r4.2.1"><a href="#h4.2"><strong>↑_</strong></a> <a href="#r4.2.1">4.2.1.</a> <strong>Applications having the same version number are dupes.</strong> An application may have older versions than those already uploaded. Those are not dupes. Only identical versions are duplicates. Note: Not everyone has updated to the latest operating system. In such cases, older versions of applications may still be useful for a number of users.</li>
|
||||||
@ -637,7 +642,7 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h5 id="h5.3"><a href="#h5.3k"><strong>↑</strong></a> <a href="#h5.3">5.3.</a> Duplicates & Trumping</h5>
|
<h5 id="h5.3"><a href="#h5.3k"><strong>↑</strong></a> <a href="#h5.3">5.3.</a> Duplicates & Trumping</h5>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r5.3.1"><a href="#h5.3"><strong>↑_</strong></a> <a href="#r5.3.1">5.3.1.</a> <strong>A dupe of a single comic is defined as two scans of the same book by the same scanner, where the same pages have been scanned.</strong> The scanner may be an individual, a release group, or a scanning device. Exceptions: The following examples are NOT dupes:
|
<li id="r5.3.1"><a href="#h5.3"><strong>↑_</strong></a> <a href="#r5.3.1">5.3.1.</a> <strong>A dupe of a single comic is defined as two scans of the same book by the same scanner, where the same pages have been scanned.</strong> The scanner may be an individual, a release group, or a scanning device. Exceptions: The following examples are NOT dupes:
|
||||||
@ -669,7 +674,7 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h4 id="h6"><a href="#h6k"><strong>↑</strong></a> <a href="#h6">6.</a> ebooks, eLearning Books & Sheet Music</h4>
|
<h4 id="h6"><a href="#h6k"><strong>↑</strong></a> <a href="#h6">6.</a> ebooks, eLearning Books & Sheet Music</h4>
|
||||||
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
<div class="box pad" style="padding:10px 10px 10px 20px;">
|
||||||
<ul>
|
<ul>
|
||||||
<li id="r6.1"><a href="#r6.1k"><strong>↑_</strong></a> <a href="#r6.1">6.1.</a> <strong>Individual releases can be either a torrent of a directory, an archive, or the original format (e.g., .epub, .pdf, .chm, .txt, etc.).</strong> Neither the individual release or archive can be password protected. Note: ebooks cannot be uploaded in an archive. Users must be able to see the ebook format that is in the torrent.</li>
|
<li id="r6.1"><a href="#r6.1k"><strong>↑_</strong></a> <a href="#r6.1">6.1.</a> <strong>Individual releases can be either a torrent of a directory, an archive, or the original format (e.g., .epub, .pdf, .chm, .txt, etc.).</strong> Neither the individual release or archive can be password protected. Note: ebooks cannot be uploaded in an archive. Users must be able to see the ebook format that is in the torrent.</li>
|
||||||
|
@ -294,7 +294,7 @@ function next_hour() {
|
|||||||
|
|
||||||
$DB->query("UPDATE users_info SET Warned='0000-00-00 00:00:00' WHERE Warned<'$sqltime'");
|
$DB->query("UPDATE users_info SET Warned='0000-00-00 00:00:00' WHERE Warned<'$sqltime'");
|
||||||
|
|
||||||
// If a user has downloaded more than 10 gigs while on ratio watch disable leeching and send message
|
// If a user has downloaded more than 10 GiBs while on ratio watch, disable leeching privileges and send the user a message
|
||||||
|
|
||||||
$DB->query("SELECT ID FROM users_info AS i JOIN users_main AS m ON m.ID=i.UserID
|
$DB->query("SELECT ID FROM users_info AS i JOIN users_main AS m ON m.ID=i.UserID
|
||||||
WHERE i.RatioWatchEnds!='0000-00-00 00:00:00'
|
WHERE i.RatioWatchEnds!='0000-00-00 00:00:00'
|
||||||
@ -305,7 +305,7 @@ function next_hour() {
|
|||||||
$UserIDs = $DB->collect('ID' );
|
$UserIDs = $DB->collect('ID' );
|
||||||
if(count($UserIDs) > 0) {
|
if(count($UserIDs) > 0) {
|
||||||
$Subject = 'Leeching Disabled';
|
$Subject = 'Leeching Disabled';
|
||||||
$Message = 'You have downloaded more then 10gb while on Ratio Watch. Your Leeching privileges have been disabled. Please reread the rules and refer to this guide on how to improve your ratio https://ssl.what.cd/wiki.php?action=article&id=110';
|
$Message = 'You have downloaded more then 10 GiB while on Ratio Watch. Your leeching privileges have been disabled. Please reread the rules and refer to this guide on how to improve your ratio https://what.cd/wiki.php?action=article&id=110';
|
||||||
foreach($UserIDs as $UserID) {
|
foreach($UserIDs as $UserID) {
|
||||||
send_pm($UserID,0,db_string($Subject),db_string($Message));
|
send_pm($UserID,0,db_string($Subject),db_string($Message));
|
||||||
send_irc("PRIVMSG #reports : !leechdisabled Downloaded 10 GB+ on Ratio Watch. https://what.cd/user.php?id=$UserID");
|
send_irc("PRIVMSG #reports : !leechdisabled Downloaded 10 GB+ on Ratio Watch. https://what.cd/user.php?id=$UserID");
|
||||||
@ -314,7 +314,7 @@ function next_hour() {
|
|||||||
$DB->query("UPDATE users_info AS i JOIN users_main AS m ON m.ID=i.UserID
|
$DB->query("UPDATE users_info AS i JOIN users_main AS m ON m.ID=i.UserID
|
||||||
SET
|
SET
|
||||||
m.can_leech='0',
|
m.can_leech='0',
|
||||||
i.AdminComment=CONCAT('$sqltime - Leech disabled by ratio watch system for downloading more than 10 gigs on ratio watch. - required ratio: ', m.RequiredRatio,'
|
i.AdminComment=CONCAT('$sqltime - Leech disabled by ratio watch system for downloading more than 10 GBs on ratio watch. - required ratio: ', m.RequiredRatio,'
|
||||||
|
|
||||||
' , i.AdminComment)
|
' , i.AdminComment)
|
||||||
WHERE m.ID IN(".implode(',',$UserIDs).")");
|
WHERE m.ID IN(".implode(',',$UserIDs).")");
|
||||||
@ -930,7 +930,7 @@ function next_hour() {
|
|||||||
$TorrentAlerts[$UserID]['Count']++;
|
$TorrentAlerts[$UserID]['Count']++;
|
||||||
}
|
}
|
||||||
foreach($TorrentAlerts as $UserID => $MessageInfo){
|
foreach($TorrentAlerts as $UserID => $MessageInfo){
|
||||||
send_pm($UserID, 0, db_string('Unseeded torrent notification'), db_string($MessageInfo['Count']." of your uploads will be deleted for inactivity soon. Unseeded torrents are deleted after 4 weeks. If you still have the files, you can seed your uploads by ensuring the torrents are in your client and that they aren't stopped. You can view the time that a torrent has been unseeded by clicking on the torrent description line and looking for the \"Last active\" time. For more information, please go [url=https://what.cd/wiki.php?action=article&id=663]here[/url].\n\nThe following torrent".($MessageInfo['Count']>1?'s':'')." will be removed for inactivity:".$MessageInfo['Msg']."\n\nIf you no longer wish to receive these notifications, please disable them in your profile settings."));
|
send_pm($UserID, 0, db_string('Unseeded torrent notification'), db_string($MessageInfo['Count']." of your uploads will be deleted for inactivity soon. Unseeded torrents are deleted after 4 weeks. If you still have the files, you can seed your uploads by ensuring the torrents are in your client and that they aren't stopped. You can view the time that a torrent has been unseeded by clicking on the torrent description line and looking for the \"Last active\" time. For more information, please go [url=https://what.cd/wiki.php?action=article&id=663]here[/url].\n\nThe following torrent".($MessageInfo['Count']>1?'s':'')." will be removed for inactivity:".$MessageInfo['Msg']."\n\nIf you no longer wish to receive these notifications, please disable them in your profile settings."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@
|
|||||||
<h3>Contact Staff</h3>
|
<h3>Contact Staff</h3>
|
||||||
<div id="below_box">
|
<div id="below_box">
|
||||||
<p>If you are looking for help with a general question, we appreciate it if you would only message through the staff inbox, where we can all help you.</p>
|
<p>If you are looking for help with a general question, we appreciate it if you would only message through the staff inbox, where we can all help you.</p>
|
||||||
<p>You can do that by <strong><a href="#" onClick="$('#compose').toggle();">sending a message to the Staff Inbox</a></strong>.</p>
|
<p>You can do that by <strong><a href="#" onclick="$('#compose').toggle();">sending a message to the Staff Inbox</a></strong>.</p>
|
||||||
</div>
|
</div>
|
||||||
<? print_compose_staff_pm(true); ?>
|
<? print_compose_staff_pm(true); ?>
|
||||||
<br />
|
<br />
|
||||||
|
@ -117,7 +117,7 @@
|
|||||||
<strong><?=$Title?></strong> - posted <?=time_diff($BlogTime);?> by <?=$Author?>
|
<strong><?=$Title?></strong> - posted <?=time_diff($BlogTime);?> by <?=$Author?>
|
||||||
<? if(check_perms('admin_manage_blog')) { ?>
|
<? if(check_perms('admin_manage_blog')) { ?>
|
||||||
- <a href="staffblog.php?action=editblog&id=<?=$BlogID?>">[Edit]</a>
|
- <a href="staffblog.php?action=editblog&id=<?=$BlogID?>">[Edit]</a>
|
||||||
<a href="staffblog.php?action=deleteblog&id=<?=$BlogID?>&auth=<?=$LoggedUser['AuthKey']?>" onClick="return confirm('Do you want to delete this?')">[Delete]</a>
|
<a href="staffblog.php?action=deleteblog&id=<?=$BlogID?>&auth=<?=$LoggedUser['AuthKey']?>" onclick="return confirm('Do you want to delete this?')">[Delete]</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</div>
|
</div>
|
||||||
<div class="pad">
|
<div class="pad">
|
||||||
|
@ -21,7 +21,7 @@
|
|||||||
<a href="staffpm.php?view=open">[Open]</a>
|
<a href="staffpm.php?view=open">[Open]</a>
|
||||||
<a href="staffpm.php?view=resolved">[Resolved]</a>
|
<a href="staffpm.php?view=resolved">[Resolved]</a>
|
||||||
<? if ($ConvID = (int)$_GET['convid']) { ?>
|
<? if ($ConvID = (int)$_GET['convid']) { ?>
|
||||||
<a href="staffpm.php?action=viewconv&id=<?=$ConvID?>">[Back to conversation]</a>
|
<a href="staffpm.php?action=viewconv&id=<?=$ConvID?>">[Back to conversation]</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -49,7 +49,7 @@
|
|||||||
rows="10" cols="87"
|
rows="10" cols="87"
|
||||||
id="response_message_0">New message</textarea>
|
id="response_message_0">New message</textarea>
|
||||||
<br />
|
<br />
|
||||||
<input type="button" value="Save" id="save_0" onClick="SaveMessage(0);" />
|
<input type="button" value="Save" id="save_0" onclick="SaveMessage(0);" />
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
@ -81,9 +81,9 @@
|
|||||||
</div>
|
</div>
|
||||||
<textarea rows="10" cols="87" id="response_message_<?=$ID?>" name="message"><?=display_str($Message)?></textarea>
|
<textarea rows="10" cols="87" id="response_message_<?=$ID?>" name="message"><?=display_str($Message)?></textarea>
|
||||||
<br />
|
<br />
|
||||||
<input type="button" value="Toggle preview" onClick="PreviewResponse(<?=$ID?>);" />
|
<input type="button" value="Toggle preview" onclick="PreviewResponse(<?=$ID?>);" />
|
||||||
<input type="button" value="Delete" onClick="DeleteMessage(<?=$ID?>);" />
|
<input type="button" value="Delete" onclick="DeleteMessage(<?=$ID?>);" />
|
||||||
<input type="button" value="Save" id="save_<?=$ID?>" onClick="SaveMessage(<?=$ID?>);" />
|
<input type="button" value="Save" id="save_<?=$ID?>" onclick="SaveMessage(<?=$ID?>);" />
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -3,11 +3,11 @@ function print_compose_staff_pm($Hidden = true) { ?>
|
|||||||
<div id="compose" class="<?=($Hidden ? 'hidden' : '')?>">
|
<div id="compose" class="<?=($Hidden ? 'hidden' : '')?>">
|
||||||
<form action="staffpm.php" method="post">
|
<form action="staffpm.php" method="post">
|
||||||
<input type="hidden" name="action" value="takepost" />
|
<input type="hidden" name="action" value="takepost" />
|
||||||
<label for="subject"><h3>Subject</h3></label>
|
<h3><label for="subject">Subject</label></h3>
|
||||||
<input size="95" type="text" name="subject" id="subject" />
|
<input size="95" type="text" name="subject" id="subject" />
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
<label for="message"><h3>Message</h3></label>
|
<h3><label for="message">Message</label></h3>
|
||||||
<textarea rows="10" cols="95" name="message" id="message"></textarea>
|
<textarea rows="10" cols="95" name="message" id="message"></textarea>
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
@ -19,7 +19,7 @@ function print_compose_staff_pm($Hidden = true) { ?>
|
|||||||
</select>
|
</select>
|
||||||
|
|
||||||
<input type="submit" value="Send message" />
|
<input type="submit" value="Send message" />
|
||||||
<input type="button" value="Hide" onClick="$('#compose').toggle();return false;" />
|
<input type="button" value="Hide" onclick="$('#compose').toggle();return false;" />
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
$Message = "Thank for for helping to support the site. It's users like you who make all of this possible.";
|
$Message = "Thank for for helping to support the site. It's users like you who make all of this possible.";
|
||||||
|
|
||||||
if ((int)$Donor === 0) {
|
if ((int)$Donor === 0) {
|
||||||
$Msg = db_string(sqltime() . ' - Donated: http://'.NONSSL_SITE_URL."/staffpm.php?action=viewconv&id=$ConvID\n\n");
|
$Msg = db_string(sqltime() . ' - Donated: http://'.NONSSL_SITE_URL."/staffpm.php?action=viewconv&id=$ConvID\n\n");
|
||||||
$DB->query("UPDATE users_info
|
$DB->query("UPDATE users_info
|
||||||
SET Donor='1',
|
SET Donor='1',
|
||||||
AdminComment = CONCAT('$Msg',AdminComment)
|
AdminComment = CONCAT('$Msg',AdminComment)
|
||||||
|
@ -26,7 +26,7 @@
|
|||||||
<div class="header">
|
<div class="header">
|
||||||
<h2>Staff PMs</h2>
|
<h2>Staff PMs</h2>
|
||||||
<div class="linkbox">
|
<div class="linkbox">
|
||||||
<a href="#" onClick="$('#compose').toggle();">[Compose New]</a>
|
<a href="#" onclick="$('#compose').toggle();">[Compose New]</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<br />
|
<br />
|
||||||
|
@ -117,8 +117,8 @@
|
|||||||
<option value="<?=$ID?>"><?=$Name?></option>
|
<option value="<?=$ID?>"><?=$Name?></option>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</select>
|
</select>
|
||||||
<input type="button" value="Set message" onClick="SetMessage();" />
|
<input type="button" value="Set message" onclick="SetMessage();" />
|
||||||
<input type="button" value="Create new / Edit" onClick="location.href='staffpm.php?action=responses&convid=<?=$ConvID?>'" />
|
<input type="button" value="Create new / Edit" onclick="location.href='staffpm.php?action=responses&convid=<?=$ConvID?>'" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<? }
|
<? }
|
||||||
@ -198,25 +198,25 @@
|
|||||||
<? } ?>
|
<? } ?>
|
||||||
</optgroup>
|
</optgroup>
|
||||||
</select>
|
</select>
|
||||||
<input type="button" onClick="Assign();" value="Assign" />
|
<input type="button" onclick="Assign();" value="Assign" />
|
||||||
<? } elseif ($IsFLS) { // FLS assign button ?>
|
<? } elseif ($IsFLS) { // FLS assign button ?>
|
||||||
<input type="button" value="Assign to staff" onClick="location.href='staffpm.php?action=assign&to=staff&convid=<?=$ConvID?>';" />
|
<input type="button" value="Assign to staff" onclick="location.href='staffpm.php?action=assign&to=staff&convid=<?=$ConvID?>';" />
|
||||||
<input type="button" value="Assign to forum staff" onClick="location.href='staffpm.php?action=assign&to=forum&convid=<?=$ConvID?>';" />
|
<input type="button" value="Assign to forum staff" onclick="location.href='staffpm.php?action=assign&to=forum&convid=<?=$ConvID?>';" />
|
||||||
<? }
|
<? }
|
||||||
|
|
||||||
if ($Status != 'Resolved') { ?>
|
if ($Status != 'Resolved') { ?>
|
||||||
<input type="button" value="Resolve" onClick="location.href='staffpm.php?action=resolve&id=<?=$ConvID?>';" />
|
<input type="button" value="Resolve" onclick="location.href='staffpm.php?action=resolve&id=<?=$ConvID?>';" />
|
||||||
<? if ($IsFLS) { //Moved by request ?>
|
<? if ($IsFLS) { //Moved by request ?>
|
||||||
<input type="button" value="Common answers" onClick="$('#common_answers').toggle();" />
|
<input type="button" value="Common answers" onclick="$('#common_answers').toggle();" />
|
||||||
<input type="button" id="previewbtn" value="Preview" onclick="PreviewMessage();" />
|
<input type="button" id="previewbtn" value="Preview" onclick="PreviewMessage();" />
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<input type="submit" value="Send message" />
|
<input type="submit" value="Send message" />
|
||||||
<? } else { ?>
|
<? } else { ?>
|
||||||
<input type="button" value="Unresolve" onClick="location.href='staffpm.php?action=unresolve&id=<?=$ConvID?>';" />
|
<input type="button" value="Unresolve" onclick="location.href='staffpm.php?action=unresolve&id=<?=$ConvID?>';" />
|
||||||
<? }
|
<? }
|
||||||
if (check_perms('users_give_donor')) { ?>
|
if (check_perms('users_give_donor')) { ?>
|
||||||
<br />
|
<br />
|
||||||
<input type="button" value="Make Donor" onClick="location.href='staffpm.php?action=make_donor&id=<?=$ConvID?>';" />
|
<input type="button" value="Make Donor" onclick="location.href='staffpm.php?action=make_donor&id=<?=$ConvID?>';" />
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
|
@ -60,7 +60,7 @@
|
|||||||
|
|
||||||
<div class="box pad center">
|
<div class="box pad center">
|
||||||
<h1>Uploads by month</h1>
|
<h1>Uploads by month</h1>
|
||||||
<img src="http://chart.apis.google.com/chart?cht=lc&chs=880x160&chco=000D99,99000D,00990D&chg=0,-1,1,1&chxt=y,x&chxs=0,h&chxl=1:|<?=implode('|',$Labels)?>&chxr=0,0,<?=$Max?>&chd=t:<?=implode(',',$InFlow)?>|<?=implode(',',$OutFlow)?>|<?=implode(',',$NetFlow)?>&chls=2,4,0&chdl=Uploads|Deletions|Remaining&chf=bg,s,FFFFFF00" alt="User Flow Chart" />
|
<img src="http://chart.apis.google.com/chart?cht=lc&chs=880x160&chco=000D99,99000D,00990D&chg=0,-1,1,1&chxt=y,x&chxs=0,h&chxl=1:|<?=implode('|',$Labels)?>&chxr=0,0,<?=$Max?>&chd=t:<?=implode(',',$InFlow)?>|<?=implode(',',$OutFlow)?>|<?=implode(',',$NetFlow)?>&chls=2,4,0&chdl=Uploads|Deletions|Remaining&chf=bg,s,FFFFFF00" alt="User Flow Chart" />
|
||||||
</div>
|
</div>
|
||||||
<div class="box pad center">
|
<div class="box pad center">
|
||||||
<h1>Torrents by category</h1>
|
<h1>Torrents by category</h1>
|
||||||
|
@ -127,7 +127,7 @@
|
|||||||
?>
|
?>
|
||||||
<h3>User Flow</h3>
|
<h3>User Flow</h3>
|
||||||
<div class="box pad center">
|
<div class="box pad center">
|
||||||
<img src="http://chart.apis.google.com/chart?cht=lc&chs=880x160&chco=000D99,99000D&chg=0,-1,1,1&chxt=y,x&chxs=0,h&chxl=1:|<?=implode('|',$Labels)?>&chxr=0,0,<?=$Max?>&chd=t:<?=implode(',',$InFlow)?>|<?=implode(',',$OutFlow)?>&chls=2,4,0&chdl=New+Registrations|Disabled+Users&chf=bg,s,FFFFFF00" alt="User Flow Chart" />
|
<img src="http://chart.apis.google.com/chart?cht=lc&chs=880x160&chco=000D99,99000D&chg=0,-1,1,1&chxt=y,x&chxs=0,h&chxl=1:|<?=implode('|',$Labels)?>&chxr=0,0,<?=$Max?>&chd=t:<?=implode(',',$InFlow)?>|<?=implode(',',$OutFlow)?>&chls=2,4,0&chdl=New+Registrations|Disabled+Users&chf=bg,s,FFFFFF00" alt="User Flow Chart" />
|
||||||
</div>
|
</div>
|
||||||
<br />
|
<br />
|
||||||
<h3>User Classes</h3>
|
<h3>User Classes</h3>
|
||||||
@ -147,16 +147,16 @@
|
|||||||
<br />
|
<br />
|
||||||
<h3>Geographical Distribution Map</h3>
|
<h3>Geographical Distribution Map</h3>
|
||||||
<div class="box center">
|
<div class="box center">
|
||||||
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-55,-180,73,180&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Worldwide" />
|
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-55,-180,73,180&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Worldwide" />
|
||||||
<img src="http://chart.apis.google.com/chart?cht=map:fixed=37,-26,65,67&chs=440x220&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Europe" />
|
<img src="http://chart.apis.google.com/chart?cht=map:fixed=37,-26,65,67&chs=440x220&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Europe" />
|
||||||
<br />
|
<br />
|
||||||
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-46,-132,24,21.5&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - South America" />
|
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-46,-132,24,21.5&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - South America" />
|
||||||
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-11,22,50,160&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Asia" />
|
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-11,22,50,160&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Asia" />
|
||||||
<br />
|
<br />
|
||||||
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-36,-57,37,100&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Africa" />
|
<img src="http://chart.apis.google.com/chart?cht=map:fixed=-36,-57,37,100&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Africa" />
|
||||||
<img src="http://chart.apis.google.com/chart?cht=map:fixed=14.8,15,45,86&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Middle East" />
|
<img src="http://chart.apis.google.com/chart?cht=map:fixed=14.8,15,45,86&chs=440x220&chd=t:<?=implode(',',$Rank)?>&chco=FFFFFF,EDEDED,1F0066&chld=<?=implode('|',$Countries)?>&chf=bg,s,CCD6FF" alt="Geographical Distribution Map - Middle East" />
|
||||||
<br />
|
<br />
|
||||||
<img src="http://chart.apis.google.com/chart?chxt=y,x&chg=0,-1,1,1&chxs=0,h&cht=bvs&chco=76A4FB&chs=880x300&chd=t:<?=implode(',',array_slice($CountryUsers,0,31))?>&chxl=1:|<?=implode('|',array_slice($Countries,0,31))?>|0:|<?=implode('|',$LogIncrements)?>&chf=bg,s,FFFFFF00" alt="Number of users by country" />
|
<img src="http://chart.apis.google.com/chart?chxt=y,x&chg=0,-1,1,1&chxs=0,h&cht=bvs&chco=76A4FB&chs=880x300&chd=t:<?=implode(',',array_slice($CountryUsers,0,31))?>&chxl=1:|<?=implode('|',array_slice($Countries,0,31))?>|0:|<?=implode('|',$LogIncrements)?>&chf=bg,s,FFFFFF00" alt="Number of users by country" />
|
||||||
</div>
|
</div>
|
||||||
<?
|
<?
|
||||||
show_footer();
|
show_footer();
|
||||||
|
@ -30,8 +30,8 @@
|
|||||||
<div class="header">
|
<div class="header">
|
||||||
<h2>Tag Aliases</h2>
|
<h2>Tag Aliases</h2>
|
||||||
<div class="linkbox">
|
<div class="linkbox">
|
||||||
[<a href="tools.php?action=tag_aliases&order=goodtags">Sort by Good Tags</a>]
|
[<a href="tools.php?action=tag_aliases&order=goodtags">Sort by Good Tags</a>]
|
||||||
[<a href="tools.php?action=tag_aliases&order=badtags">Sort by Bad Tags</a>]
|
[<a href="tools.php?action=tag_aliases&order=badtags">Sort by Bad Tags</a>]
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<table width="100%">
|
<table width="100%">
|
||||||
|
@ -52,7 +52,7 @@
|
|||||||
<div class="header">
|
<div class="header">
|
||||||
<h2>Add freeleech tokens to all enabled users</h2>
|
<h2>Add freeleech tokens to all enabled users</h2>
|
||||||
<div class="linkbox">
|
<div class="linkbox">
|
||||||
<a href="tools.php?action=tokens&showabusers=1">[Show Abusers]</a>
|
<a href="tools.php?action=tokens&showabusers=1">[Show Abusers]</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="box pad" style="margin-left: auto; margin-right: auto; text-align:center; max-width: 40%">
|
<div class="box pad" style="margin-left: auto; margin-right: auto; text-align:center; max-width: 40%">
|
||||||
|
@ -968,7 +968,7 @@ function header_link($SortKey,$DefaultWay="desc") {
|
|||||||
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download"><?=$Data['HasFile'] ? 'DL' : 'Missing'?></a>
|
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download"><?=$Data['HasFile'] ? 'DL' : 'Missing'?></a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && $Data['HasFile'] && ($Data['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && $Data['HasFile'] && ($Data['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($Data['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($Data['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
||||||
</span>
|
</span>
|
||||||
@ -1007,7 +1007,7 @@ function header_link($SortKey,$DefaultWay="desc") {
|
|||||||
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && $Data['HasFile'] && ($Data['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && $Data['HasFile'] && ($Data['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($Data['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($Data['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a> ]
|
||||||
</span>
|
</span>
|
||||||
|
@ -528,7 +528,7 @@ function filelist($Str) {
|
|||||||
<span>[ <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download"><?=$HasFile ? 'DL' : 'Missing'?></a>
|
<span>[ <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download"><?=$HasFile ? 'DL' : 'Missing'?></a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && $HasFile && ($Size < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && $HasFile && ($Size < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && ($FreeTorrent == '0') && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && ($FreeTorrent == '0') && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID ?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a>
|
| <a href="reportsv2.php?action=report&id=<?=$TorrentID?>" title="Report">RP</a>
|
||||||
<? if($CanEdit) { ?>
|
<? if($CanEdit) { ?>
|
||||||
@ -602,7 +602,7 @@ function filelist($Str) {
|
|||||||
$i = 0;
|
$i = 0;
|
||||||
?>
|
?>
|
||||||
<div class="box">
|
<div class="box">
|
||||||
<div class="head"><span style="font-weight: bold;">Requests (<?=count($Requests)?>)</span> <span style="float:right;"><a href="#" onClick="$('#requests').toggle(); this.innerHTML=(this.innerHTML=='(Hide)'?'(Show)':'(Hide)'); return false;">(Show)</a></span></div>
|
<div class="head"><span style="font-weight: bold;">Requests (<?=count($Requests)?>)</span> <span style="float:right;"><a href="#" onclick="$('#requests').toggle(); this.innerHTML=(this.innerHTML=='(Hide)'?'(Show)':'(Hide)'); return false;">(Show)</a></span></div>
|
||||||
<table id="requests" class="request_table hidden">
|
<table id="requests" class="request_table hidden">
|
||||||
<tr class="colhead">
|
<tr class="colhead">
|
||||||
<td>Format / Bitrate / Media</td>
|
<td>Format / Bitrate / Media</td>
|
||||||
@ -626,7 +626,7 @@ function filelist($Str) {
|
|||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<tr class="requestrows <?=(++$i%2?'rowa':'rowb')?>">
|
<tr class="requestrows <?=(++$i%2?'rowa':'rowb')?>">
|
||||||
<td><a href="requests.php?action=view&id=<?=$Request['ID']?>"><?=$FormatString?> / <?=$BitrateString?> / <?=$MediaString?></a></td>
|
<td><a href="requests.php?action=view&id=<?=$Request['ID']?>"><?=$FormatString?> / <?=$BitrateString?> / <?=$MediaString?></a></td>
|
||||||
<td>
|
<td>
|
||||||
<form id="form_<?=$Request['ID']?>">
|
<form id="form_<?=$Request['ID']?>">
|
||||||
<span id="vote_count_<?=$Request['ID']?>"><?=count($RequestVotes['Voters'])?></span>
|
<span id="vote_count_<?=$Request['ID']?>"><?=count($RequestVotes['Voters'])?></span>
|
||||||
@ -654,7 +654,7 @@ function filelist($Str) {
|
|||||||
$Range = range(0,count($Collages) - 1);
|
$Range = range(0,count($Collages) - 1);
|
||||||
shuffle($Range);
|
shuffle($Range);
|
||||||
$Indices = array_slice($Range, 0, MAX_COLLAGES);
|
$Indices = array_slice($Range, 0, MAX_COLLAGES);
|
||||||
$SeeAll = ' <a href="#" onClick="$(\'.collage_rows\').toggle(); return false;">(See all)</a>';
|
$SeeAll = ' <a href="#" onclick="$(\'.collage_rows\').toggle(); return false;">(See all)</a>';
|
||||||
} else {
|
} else {
|
||||||
$Indices = range(0, count($Collages)-1);
|
$Indices = range(0, count($Collages)-1);
|
||||||
$SeeAll = '';
|
$SeeAll = '';
|
||||||
@ -699,7 +699,7 @@ function filelist($Str) {
|
|||||||
$Range = range(0,count($PersonalCollages) - 1);
|
$Range = range(0,count($PersonalCollages) - 1);
|
||||||
shuffle($Range);
|
shuffle($Range);
|
||||||
$Indices = array_slice($Range, 0, MAX_PERS_COLLAGES);
|
$Indices = array_slice($Range, 0, MAX_PERS_COLLAGES);
|
||||||
$SeeAll = ' <a href="#" onClick="$(\'.personal_rows\').toggle(); return false;">(See all)</a>';
|
$SeeAll = ' <a href="#" onclick="$(\'.personal_rows\').toggle(); return false;">(See all)</a>';
|
||||||
} else {
|
} else {
|
||||||
$Indices = range(0, count($PersonalCollages)-1);
|
$Indices = range(0, count($PersonalCollages)-1);
|
||||||
$SeeAll = '';
|
$SeeAll = '';
|
||||||
|
@ -86,7 +86,7 @@
|
|||||||
<form id="notificationform_<?=$FilterID?>">
|
<form id="notificationform_<?=$FilterID?>">
|
||||||
<table class="torrent_table cats checkboxes border">
|
<table class="torrent_table cats checkboxes border">
|
||||||
<tr class="colhead">
|
<tr class="colhead">
|
||||||
<td style="text-align: center"><input type="checkbox" name="toggle" onClick="ToggleBoxes(this.form, this.checked)" /></td>
|
<td style="text-align: center"><input type="checkbox" name="toggle" onclick="ToggleBoxes(this.form, this.checked)" /></td>
|
||||||
<td class="small cats_col"></td>
|
<td class="small cats_col"></td>
|
||||||
<td style="width:100%;"><strong>Name</strong></td>
|
<td style="width:100%;"><strong>Name</strong></td>
|
||||||
<td><strong>Files</strong></td>
|
<td><strong>Files</strong></td>
|
||||||
@ -153,7 +153,7 @@
|
|||||||
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
[ <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>" title="Download">DL</a>
|
||||||
<? if (($LoggedUser['FLTokens'] > 0) && ($TorrentInfo['Size'] < 1073741824)
|
<? if (($LoggedUser['FLTokens'] > 0) && ($TorrentInfo['Size'] < 1073741824)
|
||||||
&& !in_array($TorrentID, $TokenTorrents) && empty($TorrentInfo['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
&& !in_array($TorrentID, $TokenTorrents) && empty($TorrentInfo['FreeTorrent']) && ($LoggedUser['CanLeech'] == '1')) { ?>
|
||||||
| <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onClick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
| <a href="torrents.php?action=download&id=<?=$TorrentID?>&authkey=<?=$LoggedUser['AuthKey']?>&torrent_pass=<?=$LoggedUser['torrent_pass']?>&usetoken=1" title="Use a FL Token" onclick="return confirm('Are you sure you want to use a freeleech token here?');">FL</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
| <a href="#" onclick="Clear(<?=$TorrentID?>);return false;" title="Remove from notifications list">CL</a> ]
|
| <a href="#" onclick="Clear(<?=$TorrentID?>);return false;" title="Remove from notifications list">CL</a> ]
|
||||||
</span>
|
</span>
|
||||||
|
@ -732,7 +732,7 @@
|
|||||||
$Title = $Announce;
|
$Title = $Announce;
|
||||||
|
|
||||||
$AnnounceSSL = $Announce . " - https://".SSL_SITE_URL."/torrents.php?id=$GroupID / https://".SSL_SITE_URL."/torrents.php?action=download&id=$TorrentID";
|
$AnnounceSSL = $Announce . " - https://".SSL_SITE_URL."/torrents.php?id=$GroupID / https://".SSL_SITE_URL."/torrents.php?action=download&id=$TorrentID";
|
||||||
$Announce .= " - http://".NONSSL_SITE_URL."/torrents.php?id=$GroupID / http://".NONSSL_SITE_URL."/torrents.php?action=download&id=$TorrentID";
|
$Announce .= " - https://".NONSSL_SITE_URL."/torrents.php?id=$GroupID / https://".NONSSL_SITE_URL."/torrents.php?action=download&id=$TorrentID";
|
||||||
|
|
||||||
$AnnounceSSL .= " - ".trim($Properties['TagList']);
|
$AnnounceSSL .= " - ".trim($Properties['TagList']);
|
||||||
$Announce .= " - ".trim($Properties['TagList']);
|
$Announce .= " - ".trim($Properties['TagList']);
|
||||||
|
@ -22,6 +22,8 @@
|
|||||||
|
|
||||||
define('USERS_PER_PAGE', 30);
|
define('USERS_PER_PAGE', 30);
|
||||||
|
|
||||||
|
if(check_perms("tc_advanced_user_search")) { $IsTC = true; }
|
||||||
|
|
||||||
function wrap($String, $ForceMatch = '', $IPSearch = false){
|
function wrap($String, $ForceMatch = '', $IPSearch = false){
|
||||||
if(!$ForceMatch){
|
if(!$ForceMatch){
|
||||||
global $Match;
|
global $Match;
|
||||||
@ -228,11 +230,13 @@ function num_compare($Field, $Operand, $Num1, $Num2 = ''){
|
|||||||
$Distinct = 'DISTINCT ';
|
$Distinct = 'DISTINCT ';
|
||||||
$Join['he']=' JOIN users_history_emails AS he ON he.UserID=um1.ID ';
|
$Join['he']=' JOIN users_history_emails AS he ON he.UserID=um1.ID ';
|
||||||
$Where[]= ' he.Email '.$Match.wrap($_GET['email']);
|
$Where[]= ' he.Email '.$Match.wrap($_GET['email']);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$Where[]='um1.Email'.$Match.wrap($_GET['email']);
|
$Where[]='um1.Email'.$Match.wrap($_GET['email']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (!empty($_GET['email_cnt'])) {
|
if (!empty($_GET['email_cnt'])) {
|
||||||
$Query = "SELECT UserID FROM users_history_emails GROUP BY UserID HAVING COUNT(DISTINCT Email) ";
|
$Query = "SELECT UserID FROM users_history_emails GROUP BY UserID HAVING COUNT(DISTINCT Email) ";
|
||||||
if ($_GET['emails_opt'] === 'equal') {
|
if ($_GET['emails_opt'] === 'equal') {
|
||||||
@ -258,11 +262,13 @@ function num_compare($Field, $Operand, $Num1, $Num2 = ''){
|
|||||||
$Distinct = 'DISTINCT ';
|
$Distinct = 'DISTINCT ';
|
||||||
$Join['hi']=' JOIN users_history_ips AS hi ON hi.UserID=um1.ID ';
|
$Join['hi']=' JOIN users_history_ips AS hi ON hi.UserID=um1.ID ';
|
||||||
$Where[]= ' hi.IP '.$Match.wrap($_GET['ip'], '', true);
|
$Where[]= ' hi.IP '.$Match.wrap($_GET['ip'], '', true);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$Where[]='um1.IP'.$Match.wrap($_GET['ip'], '', true);
|
$Where[]='um1.IP'.$Match.wrap($_GET['ip'], '', true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (!empty($_GET['cc'])) {
|
if (!empty($_GET['cc'])) {
|
||||||
if ($_GET['cc_op'] == "equal") {
|
if ($_GET['cc_op'] == "equal") {
|
||||||
$Where[]="um1.ipcc = '".$_GET['cc']."'";
|
$Where[]="um1.ipcc = '".$_GET['cc']."'";
|
||||||
@ -350,6 +356,8 @@ function num_compare($Field, $Operand, $Num1, $Num2 = ''){
|
|||||||
if($_GET['class']!=''){
|
if($_GET['class']!=''){
|
||||||
$Where[]='um1.PermissionID='.wrap($_GET['class'], '=');
|
$Where[]='um1.PermissionID='.wrap($_GET['class'], '=');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if($_GET['secclass']!=''){
|
if($_GET['secclass']!=''){
|
||||||
$Join['ul']=' JOIN users_levels AS ul ON um1.ID=ul.UserID ';
|
$Join['ul']=' JOIN users_levels AS ul ON um1.ID=ul.UserID ';
|
||||||
$Where[]='ul.PermissionID='.wrap($_GET['secclass'], '=');
|
$Where[]='ul.PermissionID='.wrap($_GET['secclass'], '=');
|
||||||
|
@ -297,9 +297,9 @@ function checked($Checked) {
|
|||||||
<tr>
|
<tr>
|
||||||
<td class="label">Preset</td>
|
<td class="label">Preset</td>
|
||||||
<td>
|
<td>
|
||||||
<button type="button" onClick="ParanoiaResetOff()">Show everything</button>
|
<button type="button" onclick="ParanoiaResetOff()">Show everything</button>
|
||||||
<button type="button" onClick="ParanoiaResetStats()">Show stats only</button>
|
<button type="button" onclick="ParanoiaResetStats()">Show stats only</button>
|
||||||
<!--<button type="button" onClick="ParanoiaResetOn()">Show nothing</button>-->
|
<!--<button type="button" onclick="ParanoiaResetOn()">Show nothing</button>-->
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
@ -419,7 +419,7 @@ function checked($Checked) {
|
|||||||
<td>
|
<td>
|
||||||
<label><input type="checkbox" name="resetpasskey" />
|
<label><input type="checkbox" name="resetpasskey" />
|
||||||
Any active torrents must be downloaded again to continue leeching/seeding.</label> <br />
|
Any active torrents must be downloaded again to continue leeching/seeding.</label> <br />
|
||||||
<a href="wiki.php?action=article&name=Passkey" >See also this wiki article</a>
|
<a href="wiki.php?action=article&name=Passkey">See also this wiki article</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="colhead_dark">
|
<tr class="colhead_dark">
|
||||||
|
@ -31,10 +31,14 @@
|
|||||||
header('Location: user.php?action=notify');
|
header('Location: user.php?action=notify');
|
||||||
break;
|
break;
|
||||||
case 'search':// User search
|
case 'search':// User search
|
||||||
|
|
||||||
|
|
||||||
if (check_perms('admin_advanced_user_search') && check_perms('users_view_ips') && check_perms('users_view_email')) {
|
if (check_perms('admin_advanced_user_search') && check_perms('users_view_ips') && check_perms('users_view_email')) {
|
||||||
|
|
||||||
include('advancedsearch.php');
|
include('advancedsearch.php');
|
||||||
} else
|
} else {
|
||||||
include('search.php');
|
include('search.php');
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'edit':
|
case 'edit':
|
||||||
include('edit.php');
|
include('edit.php');
|
||||||
|
@ -143,12 +143,12 @@
|
|||||||
<?
|
<?
|
||||||
} elseif (!empty($LoggedUser['DisableInvites'])) {?>
|
} elseif (!empty($LoggedUser['DisableInvites'])) {?>
|
||||||
<div class="box pad" style="text-align: center">
|
<div class="box pad" style="text-align: center">
|
||||||
<strong class="important_text">Your invites have been disabled. Please read <a href="wiki.php?action=article&id=310">this article</a> for more information.</strong>
|
<strong class="important_text">Your invites have been disabled. Please read <a href="wiki.php?action=article&id=310">this article</a> for more information.</strong>
|
||||||
</div>
|
</div>
|
||||||
<?
|
<?
|
||||||
} elseif ($LoggedUser['RatioWatch'] || !$CanLeech) { ?>
|
} elseif ($LoggedUser['RatioWatch'] || !$CanLeech) { ?>
|
||||||
<div class="box pad" style="text-align:center">
|
<div class="box pad" style="text-align:center">
|
||||||
<strong class="important_text">You may not send invites while on Ratio Watch or while your leeching privileges are disabled. Please read <a href="wiki.php?action=article&id=310">this article</a> for more information.</strong>
|
<strong class="important_text">You may not send invites while on Ratio Watch or while your leeching privileges are disabled. Please read <a href="wiki.php?action=article&id=310">this article</a> for more information.</strong>
|
||||||
</div>
|
</div>
|
||||||
<?
|
<?
|
||||||
}
|
}
|
||||||
|
@ -178,7 +178,7 @@ function user_dupes_table($UserID) {
|
|||||||
$DupeInfo = user_info($DupeID);
|
$DupeInfo = user_info($DupeID);
|
||||||
?>
|
?>
|
||||||
<td align="left"><?=format_username($DupeID, true, true, true, true)?>
|
<td align="left"><?=format_username($DupeID, true, true, true, true)?>
|
||||||
(<a href="user.php?action=dupes&dupeaction=remove&auth=<?=$LoggedUser['AuthKey']?>&userid=<?=$UserID?>&removeid=<?=$DupeID?>" onClick="return confirm('Are you sure you wish to remove <?=$DupeInfo['Username']?> from this group?');">x</a>)</td>
|
(<a href="user.php?action=dupes&dupeaction=remove&auth=<?=$LoggedUser['AuthKey']?>&userid=<?=$UserID?>&removeid=<?=$DupeID?>" onclick="return confirm('Are you sure you wish to remove <?=$DupeInfo['Username']?> from this group?');">x</a>)</td>
|
||||||
<?
|
<?
|
||||||
if ($i == 5) {
|
if ($i == 5) {
|
||||||
$i = 0;
|
$i = 0;
|
||||||
@ -201,7 +201,7 @@ function user_dupes_table($UserID) {
|
|||||||
<div id="editdupecomments" class="<?=$DupeCount?'hidden':''?>">
|
<div id="editdupecomments" class="<?=$DupeCount?'hidden':''?>">
|
||||||
<textarea name="dupecomments" onkeyup="resize('dupecommentsbox');" id="dupecommentsbox" cols="65" rows="5" style="width:98%;"><?=display_str($Comments)?></textarea>
|
<textarea name="dupecomments" onkeyup="resize('dupecommentsbox');" id="dupecommentsbox" cols="65" rows="5" style="width:98%;"><?=display_str($Comments)?></textarea>
|
||||||
</div>
|
</div>
|
||||||
<span style="float:right; font-style: italic;"><a href="#" onClick="$('#dupecomments').toggle(); $('#editdupecomments').toggle(); resize('dupecommentsbox'); return false;">(Edit linked account comments)</a>
|
<span style="float:right; font-style: italic;"><a href="#" onclick="$('#dupecomments').toggle(); $('#editdupecomments').toggle(); resize('dupecommentsbox'); return false;">(Edit linked account comments)</a>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@ -32,8 +32,8 @@
|
|||||||
<h3>
|
<h3>
|
||||||
<a href="feeds.php?feed=torrents_notify_<?=$N['ID']?>_<?=$LoggedUser['torrent_pass']?>&user=<?=$LoggedUser['ID']?>&auth=<?=$LoggedUser['RSS_Auth']?>&passkey=<?=$LoggedUser['torrent_pass']?>&authkey=<?=$LoggedUser['AuthKey']?>&name=<?=urlencode($N['Label'])?>"><img src="<?=STATIC_SERVER?>/common/symbols/rss.png" alt="RSS feed" /></a>
|
<a href="feeds.php?feed=torrents_notify_<?=$N['ID']?>_<?=$LoggedUser['torrent_pass']?>&user=<?=$LoggedUser['ID']?>&auth=<?=$LoggedUser['RSS_Auth']?>&passkey=<?=$LoggedUser['torrent_pass']?>&authkey=<?=$LoggedUser['AuthKey']?>&name=<?=urlencode($N['Label'])?>"><img src="<?=STATIC_SERVER?>/common/symbols/rss.png" alt="RSS feed" /></a>
|
||||||
<?=display_str($N['Label'])?>
|
<?=display_str($N['Label'])?>
|
||||||
<a href="user.php?action=notify_delete&id=<?=$N['ID']?>&auth=<?=$LoggedUser['AuthKey']?>" onClick="return confirm('Are you sure you want to delete this notification filter?')">(Delete)</a>
|
<a href="user.php?action=notify_delete&id=<?=$N['ID']?>&auth=<?=$LoggedUser['AuthKey']?>" onclick="return confirm('Are you sure you want to delete this notification filter?')">(Delete)</a>
|
||||||
<a href="#" onClick="$('#filter_<?=$N['ID']?>').toggle(); return false;">(Show)</a>
|
<a href="#" onclick="$('#filter_<?=$N['ID']?>').toggle(); return false;">(Show)</a>
|
||||||
</h3>
|
</h3>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<form action="user.php" method="post">
|
<form action="user.php" method="post">
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
|
|
||||||
$Permissions = get_permissions($U['PermissionID']);
|
$Permissions = get_permissions($U['PermissionID']);
|
||||||
if ($UserID != $LoggedUser['ID'] && !check_perms('users_edit_profiles', $Permissions['Class'])) {
|
if ($UserID != $LoggedUser['ID'] && !check_perms('users_edit_profiles', $Permissions['Class'])) {
|
||||||
send_irc("PRIVMSG ".ADMIN_CHAN." :User ".$LoggedUser['Username']." (http://".NONSSL_SITE_URL."/user.php?id=".$LoggedUser['ID'].") just tried to edit the profile of http://".NONSSL_SITE_URL."/user.php?id=".$_REQUEST['userid']);
|
send_irc("PRIVMSG ".ADMIN_CHAN." :User ".$LoggedUser['Username']." (https://".SSL_SITE_URL."/user.php?id=".$LoggedUser['ID'].") just tried to edit the profile of https://".SSL_SITE_URL."/user.php?id=".$_REQUEST['userid']);
|
||||||
error(403);
|
error(403);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -365,7 +365,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($Warned == 1 && $Cur['Warned']=='0000-00-00 00:00:00' && check_perms('users_warn')) {
|
if ($Warned == 1 && $Cur['Warned']=='0000-00-00 00:00:00' && check_perms('users_warn')) {
|
||||||
send_pm($UserID,0,db_string('You have received a warning'),db_string("You have been [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&id=218]warned for $WarnLength week(s)[/url] by [user]".$LoggedUser['Username']."[/user]. The reason given was: $WarnReason"));
|
send_pm($UserID,0,db_string('You have received a warning'),db_string("You have been [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&id=218]warned for $WarnLength week(s)[/url] by [user]".$LoggedUser['Username']."[/user]. The reason given was: $WarnReason"));
|
||||||
$UpdateSet[]="Warned='".sqltime()."' + INTERVAL $WarnLength WEEK";
|
$UpdateSet[]="Warned='".sqltime()."' + INTERVAL $WarnLength WEEK";
|
||||||
$Msg = "warned for $WarnLength week(s)";
|
$Msg = "warned for $WarnLength week(s)";
|
||||||
if ($WarnReason) { $Msg.=" for $WarnReason"; }
|
if ($WarnReason) { $Msg.=" for $WarnReason"; }
|
||||||
@ -444,7 +444,7 @@
|
|||||||
$EditSummary[]="avatar status changed";
|
$EditSummary[]="avatar status changed";
|
||||||
$HeavyUpdates['DisableAvatar']=$DisableAvatar;
|
$HeavyUpdates['DisableAvatar']=$DisableAvatar;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your avatar privileges have been disabled'),db_string("Your avatar privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your avatar privileges have been disabled'),db_string("Your avatar privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -454,7 +454,7 @@
|
|||||||
$HeavyUpdates['DisableLeech']=$DisableLeech;
|
$HeavyUpdates['DisableLeech']=$DisableLeech;
|
||||||
$HeavyUpdates['CanLeech']=$DisableLeech;
|
$HeavyUpdates['CanLeech']=$DisableLeech;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your leeching privileges have been disabled'),db_string("Your leeching privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your leeching privileges have been disabled'),db_string("Your leeching privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
update_tracker('update_user', array('passkey' => $Cur['torrent_pass'], 'can_leech' => $DisableLeech));
|
update_tracker('update_user', array('passkey' => $Cur['torrent_pass'], 'can_leech' => $DisableLeech));
|
||||||
}
|
}
|
||||||
@ -464,7 +464,7 @@
|
|||||||
if ($DisableInvites == 1) {
|
if ($DisableInvites == 1) {
|
||||||
//$UpdateSet[]="Invites='0'";
|
//$UpdateSet[]="Invites='0'";
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your invite privileges have been disabled'),db_string("Your invite privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your invite privileges have been disabled'),db_string("Your invite privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$EditSummary[]="invites status changed";
|
$EditSummary[]="invites status changed";
|
||||||
@ -476,7 +476,7 @@
|
|||||||
$EditSummary[]="posting status changed";
|
$EditSummary[]="posting status changed";
|
||||||
$HeavyUpdates['DisablePosting']=$DisablePosting;
|
$HeavyUpdates['DisablePosting']=$DisablePosting;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your forum posting privileges have been disabled'),db_string("Your forum posting privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your forum posting privileges have been disabled'),db_string("Your forum posting privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -485,7 +485,7 @@
|
|||||||
$EditSummary[]="forums status changed";
|
$EditSummary[]="forums status changed";
|
||||||
$HeavyUpdates['DisableForums']=$DisableForums;
|
$HeavyUpdates['DisableForums']=$DisableForums;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your forum privileges have been disabled'),db_string("Your forum privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your forum privileges have been disabled'),db_string("Your forum privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -494,7 +494,7 @@
|
|||||||
$EditSummary[]="tagging status changed";
|
$EditSummary[]="tagging status changed";
|
||||||
$HeavyUpdates['DisableTagging']=$DisableTagging;
|
$HeavyUpdates['DisableTagging']=$DisableTagging;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your tagging privileges have been disabled'),db_string("Your tagging privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your tagging privileges have been disabled'),db_string("Your tagging privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -503,7 +503,7 @@
|
|||||||
$EditSummary[]="upload status changed";
|
$EditSummary[]="upload status changed";
|
||||||
$HeavyUpdates['DisableUpload']=$DisableUpload;
|
$HeavyUpdates['DisableUpload']=$DisableUpload;
|
||||||
if ($DisableUpload == 1) {
|
if ($DisableUpload == 1) {
|
||||||
send_pm($UserID, 0, db_string('Your upload privileges have been disabled'),db_string("Your upload privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your upload privileges have been disabled'),db_string("Your upload privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -513,7 +513,7 @@
|
|||||||
$HeavyUpdates['DisableWiki']=$DisableWiki;
|
$HeavyUpdates['DisableWiki']=$DisableWiki;
|
||||||
$HeavyUpdates['site_edit_wiki']=0;
|
$HeavyUpdates['site_edit_wiki']=0;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your site editing privileges have been disabled'),db_string("Your site editing privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your site editing privileges have been disabled'),db_string("Your site editing privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -523,7 +523,7 @@
|
|||||||
$EditSummary[]="PM status changed";
|
$EditSummary[]="PM status changed";
|
||||||
$HeavyUpdates['DisablePM']=$DisablePM;
|
$HeavyUpdates['DisablePM']=$DisablePM;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your PM privileges have been disabled'),db_string("Your PM privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
send_pm($UserID, 0, db_string('Your PM privileges have been disabled'),db_string("Your PM privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -532,7 +532,7 @@
|
|||||||
$EditSummary[]="IRC status changed";
|
$EditSummary[]="IRC status changed";
|
||||||
$HeavyUpdates['DisableIRC']=$DisableIRC;
|
$HeavyUpdates['DisableIRC']=$DisableIRC;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your IRC privileges have been disabled'),db_string("Your IRC privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]. This loss of privileges does not affect the ability to join and talk to staff in #what.cd-disabled."));
|
send_pm($UserID, 0, db_string('Your IRC privileges have been disabled'),db_string("Your IRC privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]. This loss of privileges does not affect the ability to join and talk to staff in #what.cd-disabled."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -541,7 +541,7 @@
|
|||||||
$EditSummary[]="request status changed";
|
$EditSummary[]="request status changed";
|
||||||
$HeavyUpdates['DisableRequests']=$DisableRequests;
|
$HeavyUpdates['DisableRequests']=$DisableRequests;
|
||||||
if (!empty($UserReason)) {
|
if (!empty($UserReason)) {
|
||||||
send_pm($UserID, 0, db_string('Your request privileges have been disabled'),db_string("Your request privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]. This loss of privileges does not affect the ability to join and talk to staff in #what.cd-disabled."));
|
send_pm($UserID, 0, db_string('Your request privileges have been disabled'),db_string("Your request privileges have been disabled. The reason given was: $UserReason. If you would like to discuss this please join ".BOT_DISABLED_CHAN." on our IRC network. Instructions can be found [url=http://".NONSSL_SITE_URL."/wiki.php?action=article&name=IRC+-+How+to+join]here[/url]. This loss of privileges does not affect the ability to join and talk to staff in #what.cd-disabled."));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -493,7 +493,7 @@ function check_paranoia_here($Setting) {
|
|||||||
<? }
|
<? }
|
||||||
if (($Override=check_paranoia_here('collages+'))) { ?>
|
if (($Override=check_paranoia_here('collages+'))) { ?>
|
||||||
<li <?= $Override===2 ? 'class="paranoia_override"' : ''?> >Collages started: <?=number_format($NumCollages)?>
|
<li <?= $Override===2 ? 'class="paranoia_override"' : ''?> >Collages started: <?=number_format($NumCollages)?>
|
||||||
<? if(($Override=check_paranoia_here('collages'))) { ?>[<a <?= ($Override===2) ? 'class="paranoia_override'
|
<? if(($Override=check_paranoia_here('collages'))) { ?>[<a <?= ($Override===2) ? 'class="paranoia_override"'
|
||||||
:'' ?>
|
:'' ?>
|
||||||
href="collages.php?userid=<?=$UserID?>" title="View">View</a>]
|
href="collages.php?userid=<?=$UserID?>" title="View">View</a>]
|
||||||
<? } ?>
|
<? } ?>
|
||||||
@ -581,7 +581,7 @@ function check_paranoia_here($Setting) {
|
|||||||
: ''); ?>
|
: ''); ?>
|
||||||
[<a href="torrents.php?type=seeding&userid=<?=$UserID?>" <?= $AOverride===2 ? 'class="paranoia_override"' :'' ?> title="View">View</a>]
|
[<a href="torrents.php?type=seeding&userid=<?=$UserID?>" <?= $AOverride===2 ? 'class="paranoia_override"' :'' ?> title="View">View</a>]
|
||||||
<? if (check_perms('zip_downloader')) { ?>
|
<? 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>]
|
[<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>
|
</li>
|
||||||
@ -598,7 +598,7 @@ function check_paranoia_here($Setting) {
|
|||||||
<? if (($Override=check_paranoia_here('snatched+'))) { ?>
|
<? if (($Override=check_paranoia_here('snatched+'))) { ?>
|
||||||
<li <?= $Override===2 ? 'class="paranoia_override"' : ''?> >Snatched: <?=number_format($Snatched)?>
|
<li <?= $Override===2 ? 'class="paranoia_override"' : ''?> >Snatched: <?=number_format($Snatched)?>
|
||||||
<? if(($Override=check_perms('site_view_torrent_snatchlist', $Class))) { ?>
|
<? if(($Override=check_perms('site_view_torrent_snatchlist', $Class))) { ?>
|
||||||
(<?= $Override === 2 ? '<span class="paranoia_override >"'.number_format($UniqueSnatched).'</span>' : number_format($UniqueSnatched) ?>)
|
(<?= $Override === 2 ? '<span class="paranoia_override">'.number_format($UniqueSnatched).'</span>' : number_format($UniqueSnatched) ?>)
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<? if (($Override=check_paranoia_here('snatched'))) { ?>
|
<? if (($Override=check_paranoia_here('snatched'))) { ?>
|
||||||
|
@ -159,7 +159,7 @@
|
|||||||
<div class="header">
|
<div class="header">
|
||||||
<h2>Email history for <a href="user.php?id=<?=$UserID ?>"><?=$Username ?></a></h2>
|
<h2>Email history for <a href="user.php?id=<?=$UserID ?>"><?=$Username ?></a></h2>
|
||||||
<div class=" linkbox center">
|
<div class=" linkbox center">
|
||||||
<a href="userhistory.php?action=email&userid=<?=$UserID?>"><strong>Old email history</strong></a>
|
<a href="userhistory.php?action=email&userid=<?=$UserID?>"><strong>Old email history</strong></a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<br />
|
<br />
|
||||||
@ -246,7 +246,7 @@
|
|||||||
ob_end_clean();
|
ob_end_clean();
|
||||||
?>
|
?>
|
||||||
<tr class="rowa">
|
<tr class="rowa">
|
||||||
<td><?=display_str($Record['Email'])?><?=(($MatchCount > 0) ? ' <a href="#" onClick="$(\'#matches_'.$j.'\').toggle();return false;">('.$MatchCount.')</a>' : '')?></td>
|
<td><?=display_str($Record['Email'])?><?=(($MatchCount > 0) ? ' <a href="#" onclick="$(\'#matches_'.$j.'\').toggle();return false;">('.$MatchCount.')</a>' : '')?></td>
|
||||||
<td><?=time_diff($Record['StartTime'])?></td>
|
<td><?=time_diff($Record['StartTime'])?></td>
|
||||||
<td><?=time_diff($Record['EndTime'])?></td>
|
<td><?=time_diff($Record['EndTime'])?></td>
|
||||||
<td><?=time_diff($Record['ElapsedTime'])?></td>
|
<td><?=time_diff($Record['ElapsedTime'])?></td>
|
||||||
@ -303,7 +303,7 @@
|
|||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<tr class="rowa">
|
<tr class="rowa">
|
||||||
<td><?=display_str($Invite['Email'])?><?=(($MatchCount > 0) ? ' <a href="#" onClick="$(\'#matches_invite\').toggle();return false;">('.$MatchCount.')</a>' : '')?></td>
|
<td><?=display_str($Invite['Email'])?><?=(($MatchCount > 0) ? ' <a href="#" onclick="$(\'#matches_invite\').toggle();return false;">('.$MatchCount.')</a>' : '')?></td>
|
||||||
<td>Never</td>
|
<td>Never</td>
|
||||||
<td><?=time_diff($Invite['EndTime'])?></td>
|
<td><?=time_diff($Invite['EndTime'])?></td>
|
||||||
<td><?=time_diff($Invite['AccountAge'])?></td>
|
<td><?=time_diff($Invite['AccountAge'])?></td>
|
||||||
|
@ -66,7 +66,7 @@ function UnBan(ip, id, elemID) {
|
|||||||
xmlhttp.onreadystatechange=function() {
|
xmlhttp.onreadystatechange=function() {
|
||||||
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
|
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
|
||||||
document.getElementById(elemID).innerHTML = "Ban";
|
document.getElementById(elemID).innerHTML = "Ban";
|
||||||
document.getElementById(elemID).onClick = function() { Ban(ip, id, elemID); return false;};
|
document.getElementById(elemID).onclick = function() { Ban(ip, id, elemID); return false;};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
xmlhttp.open("GET","tools.php?action=quick_ban&perform=delete&id="+id,true);
|
xmlhttp.open("GET","tools.php?action=quick_ban&perform=delete&id="+id,true);
|
||||||
@ -130,9 +130,9 @@ function UnBan(ip, id, elemID) {
|
|||||||
</div>
|
</div>
|
||||||
<div class="linkbox">
|
<div class="linkbox">
|
||||||
<? if($UsersOnly) { ?>
|
<? if($UsersOnly) { ?>
|
||||||
<a href="userhistory.php?action=ips&userid=<?=$UserID?>">[View All IPs]</a>
|
<a href="userhistory.php?action=ips&userid=<?=$UserID?>">[View All IPs]</a>
|
||||||
<? } else { ?>
|
<? } else { ?>
|
||||||
<a href="userhistory.php?action=ips&userid=<?=$UserID?>&usersonly=1">[View IPs With Users]</a>
|
<a href="userhistory.php?action=ips&userid=<?=$UserID?>&usersonly=1">[View IPs With Users]</a>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
<br/>
|
<br/>
|
||||||
<?=$Pages?>
|
<?=$Pages?>
|
||||||
|
@ -40,14 +40,14 @@
|
|||||||
<td>Old</td>
|
<td>Old</td>
|
||||||
<td>New</td>
|
<td>New</td>
|
||||||
<td>Changed</td>
|
<td>Changed</td>
|
||||||
<td>IP [<a href="/userhistory.php?action=ips&userid=<?=$UserID?>">H</a>]</td>
|
<td>IP [<a href="/userhistory.php?action=ips&userid=<?=$UserID?>">H</a>]</td>
|
||||||
</tr>
|
</tr>
|
||||||
<? while(list($OldPassKey, $NewPassKey, $ChangeTime, $ChangerIP) = $DB->next_record()){ ?>
|
<? while(list($OldPassKey, $NewPassKey, $ChangeTime, $ChangerIP) = $DB->next_record()){ ?>
|
||||||
<tr class="rowa">
|
<tr class="rowa">
|
||||||
<td><?=display_str($OldPassKey)?></td>
|
<td><?=display_str($OldPassKey)?></td>
|
||||||
<td><?=display_str($NewPassKey)?></td>
|
<td><?=display_str($NewPassKey)?></td>
|
||||||
<td><?=time_diff($ChangeTime)?></td>
|
<td><?=time_diff($ChangeTime)?></td>
|
||||||
<td><?=display_str($ChangerIP)?> [<a href="user.php?action=search&ip_history=on&ip=<?=display_str($ChangerIP)?>" title="Search">S</a>]<br /><?=display_str(gethostbyip($ChangerIP))?></td>
|
<td><?=display_str($ChangerIP)?> [<a href="user.php?action=search&ip_history=on&ip=<?=display_str($ChangerIP)?>" title="Search">S</a>]<br /><?=display_str(gethostbyip($ChangerIP))?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</table>
|
</table>
|
||||||
|
@ -36,12 +36,12 @@
|
|||||||
<table width="100%">
|
<table width="100%">
|
||||||
<tr class="colhead">
|
<tr class="colhead">
|
||||||
<td>Changed</td>
|
<td>Changed</td>
|
||||||
<td>IP [<a href="/userhistory.php?action=ips&userid=<?=$UserID?>">H</a>]</td>
|
<td>IP [<a href="/userhistory.php?action=ips&userid=<?=$UserID?>">H</a>]</td>
|
||||||
</tr>
|
</tr>
|
||||||
<? while(list($ChangeTime, $ChangerIP) = $DB->next_record()){ ?>
|
<? while(list($ChangeTime, $ChangerIP) = $DB->next_record()){ ?>
|
||||||
<tr class="rowa">
|
<tr class="rowa">
|
||||||
<td><?=time_diff($ChangeTime)?></td>
|
<td><?=time_diff($ChangeTime)?></td>
|
||||||
<td><?=display_str($ChangerIP)?> [<a href="/user.php?action=search&ip_history=on&ip=<?=display_str($ChangerIP)?>" title="Search">S</a>]<br /><?=get_host($ChangerIP)?></td>
|
<td><?=display_str($ChangerIP)?> [<a href="/user.php?action=search&ip_history=on&ip=<?=display_str($ChangerIP)?>" title="Search">S</a>]<br /><?=get_host($ChangerIP)?></td>
|
||||||
</tr>
|
</tr>
|
||||||
<? } ?>
|
<? } ?>
|
||||||
</table>
|
</table>
|
||||||
|
@ -47,16 +47,16 @@
|
|||||||
if($ShowAll) {
|
if($ShowAll) {
|
||||||
?>
|
?>
|
||||||
<br /><br />
|
<br /><br />
|
||||||
[<a href="userhistory.php?action=subscribed_collages&showall=0">Only display collages with new additions</a>]
|
[<a href="userhistory.php?action=subscribed_collages&showall=0">Only display collages with new additions</a>]
|
||||||
<?
|
<?
|
||||||
} else {
|
} else {
|
||||||
?>
|
?>
|
||||||
<br /><br />
|
<br /><br />
|
||||||
[<a href="userhistory.php?action=subscribed_collages&showall=1">Show all subscribed collages</a>]
|
[<a href="userhistory.php?action=subscribed_collages&showall=1">Show all subscribed collages</a>]
|
||||||
<?
|
<?
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
[<a href="userhistory.php?action=catchup_collages&auth=<?=$LoggedUser['AuthKey']?>">Catch up</a>]
|
[<a href="userhistory.php?action=catchup_collages&auth=<?=$LoggedUser['AuthKey']?>">Catch up</a>]
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?
|
<?
|
||||||
@ -278,7 +278,7 @@
|
|||||||
<strong><a href="collage.php?id=<?=$CollageID?>"><?=$CollageName?></a></strong> (<?=$NewTorrentCount?> new torrent<?=($NewTorrentCount==1?'':'s')?>)
|
<strong><a href="collage.php?id=<?=$CollageID?>"><?=$CollageName?></a></strong> (<?=$NewTorrentCount?> new torrent<?=($NewTorrentCount==1?'':'s')?>)
|
||||||
</span>
|
</span>
|
||||||
<span style="float:right;">
|
<span style="float:right;">
|
||||||
<a href="#" onclick="$('#discog_table_<?=$CollageID?>').toggle(); this.innerHTML=(this.innerHTML=='[Hide]'?'[Show]':'[Hide]'); return false;"><?=$ShowAll?'[Show]':'[Hide]'?></a> [<a href="userhistory.php?action=catchup_collages&auth=<?=$LoggedUser['AuthKey']?>&collageid=<?=$CollageID?>">Catch up</a>] <a href="#" onclick="CollageSubscribe(<?=$CollageID?>); return false;" id="subscribelink<?=$CollageID?>">[Unsubscribe]</a>
|
<a href="#" onclick="$('#discog_table_<?=$CollageID?>').toggle(); this.innerHTML=(this.innerHTML=='[Hide]'?'[Show]':'[Hide]'); return false;"><?=$ShowAll?'[Show]':'[Hide]'?></a> [<a href="userhistory.php?action=catchup_collages&auth=<?=$LoggedUser['AuthKey']?>&collageid=<?=$CollageID?>">Catch up</a>] <a href="#" onclick="CollageSubscribe(<?=$CollageID?>); return false;" id="subscribelink<?=$CollageID?>">[Unsubscribe]</a>
|
||||||
</span>
|
</span>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -103,7 +103,7 @@
|
|||||||
<tr class="<?=($i?'rowa':'rowb')?>">
|
<tr class="<?=($i?'rowa':'rowb')?>">
|
||||||
<td><?=$Name?></td>
|
<td><?=$Name?></td>
|
||||||
<td><?=time_diff($Time)?></td>
|
<td><?=time_diff($Time)?></td>
|
||||||
<td><?=($Expired ? 'Yes' : 'No')?><?=(check_perms('users_mod') && !$Expired)?" <a href=\"userhistory.php?action=token_history&expire=1&userid=$UserID&torrentid=$TorrentID\">(expire)</a>":''?>
|
<td><?=($Expired ? 'Yes' : 'No')?><?=(check_perms('users_mod') && !$Expired)?" <a href=\"userhistory.php?action=token_history&expire=1&userid=$UserID&torrentid=$TorrentID\">(expire)</a>":''?>
|
||||||
</td>
|
</td>
|
||||||
<? if (check_perms('users_mod')) { ?>
|
<? if (check_perms('users_mod')) { ?>
|
||||||
<td><?=get_size($Downloaded)?></td>
|
<td><?=get_size($Downloaded)?></td>
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
?>
|
?>
|
||||||
<div class="thin">
|
<div class="thin">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<h2><a href="wiki.php?action=article&id=<?=$ArticleID?>"><?=$Title?></a> Aliases</h2>
|
<h2><a href="wiki.php?action=article&id=<?=$ArticleID?>"><?=$Title?></a> Aliases</h2>
|
||||||
<div class="linkbox">
|
<div class="linkbox">
|
||||||
Aliases are exact search strings or names that can be used to link to an article. [[Alias]]
|
Aliases are exact search strings or names that can be used to link to an article. [[Alias]]
|
||||||
</div>
|
</div>
|
||||||
|
@ -85,7 +85,7 @@ function get_body($ID, $Rev) {
|
|||||||
?>
|
?>
|
||||||
<div class="thin">
|
<div class="thin">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<h2>Compare <a href="wiki.php?action=article&id=<?=$ArticleID?>"><?=$Title?></a> Revisions</h2>
|
<h2>Compare <a href="wiki.php?action=article&id=<?=$ArticleID?>"><?=$Title?></a> Revisions</h2>
|
||||||
</div>
|
</div>
|
||||||
<div class="box center_revision" id="center">
|
<div class="box center_revision" id="center">
|
||||||
<div class="body"><? foreach(diff($Diff1, $Diff2) AS $Line) { echo $Line; } ?></div>
|
<div class="body"><? foreach(diff($Diff1, $Diff2) AS $Line) { echo $Line; } ?></div>
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
?>
|
?>
|
||||||
<div class="thin">
|
<div class="thin">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<h2>Revision history for <a href="wiki.php?action=article&id=<?=$ArticleID?>"><?=$Title?></a></h2>
|
<h2>Revision history for <a href="wiki.php?action=article&id=<?=$ArticleID?>"><?=$Title?></a></h2>
|
||||||
</div>
|
</div>
|
||||||
<form action="wiki.php" method="get">
|
<form action="wiki.php" method="get">
|
||||||
<input type="hidden" name="action" id="action" value="compare" />
|
<input type="hidden" name="action" id="action" value="compare" />
|
||||||
|
@ -105,19 +105,19 @@
|
|||||||
<br />
|
<br />
|
||||||
<div class="linkbox">
|
<div class="linkbox">
|
||||||
<?
|
<?
|
||||||
$Pages=get_pages($Page,$NumResults,ARTICLES_PER_PAGE,'action=search&type='.display_str($_GET['type']).'&search='.display_str($_GET['search']));
|
$Pages=get_pages($Page,$NumResults,ARTICLES_PER_PAGE);
|
||||||
echo $Pages;
|
echo $Pages;
|
||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
<table width="100%">
|
<table width="100%">
|
||||||
<tr class="colhead">
|
<tr class="colhead">
|
||||||
<td>Article</td>
|
<td>Article</td>
|
||||||
<td>Last Updated</td>
|
<td>Last updated on</td>
|
||||||
<td>Last edited by</td>
|
<td>Last edited by</td>
|
||||||
</tr>
|
</tr>
|
||||||
<? while(list($ID, $Title, $Date, $UserID) = $DB->next_record()) {?>
|
<? while(list($ID, $Title, $Date, $UserID) = $DB->next_record()) {?>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="wiki.php?action=article&id=<?=$ID?>"><?=$Title?></a></td>
|
<td><a href="wiki.php?action=article&id=<?=$ID?>"><?=$Title?></a></td>
|
||||||
<td><?=$Date?></td>
|
<td><?=$Date?></td>
|
||||||
<td><?=format_username($UserID, false, false, false)?></td>
|
<td><?=format_username($UserID, false, false, false)?></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
@ -6,12 +6,12 @@
|
|||||||
<div class="box pad center">
|
<div class="box pad center">
|
||||||
<p>Search the wiki for user created tutorials and information.</p>
|
<p>Search the wiki for user created tutorials and information.</p>
|
||||||
<form action="wiki.php" method="get">
|
<form action="wiki.php" method="get">
|
||||||
<input type="hidden" name="action" value="search">
|
<input type="hidden" name="action" value="search" />
|
||||||
<input type="text" name="search" size="80" />
|
<input type="text" name="search" size="80" />
|
||||||
<input value="Search" type="submit" class="hidden" />
|
<input value="Search" type="submit" class="hidden" />
|
||||||
</form>
|
</form>
|
||||||
<br />
|
<br />
|
||||||
<p>Additionally you can manually browse through the articles by their first letter.</p>
|
<p>Additionally, you can manually browse through the articles by their first letter.</p>
|
||||||
<span>
|
<span>
|
||||||
<a href="wiki.php?action=browse&letter=a">A</a>
|
<a href="wiki.php?action=browse&letter=a">A</a>
|
||||||
<a href="wiki.php?action=browse&letter=b">B</a>
|
<a href="wiki.php?action=browse&letter=b">B</a>
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
$DB->query("SELECT ID FROM wiki_articles WHERE Title='$P[title]'");
|
$DB->query("SELECT ID FROM wiki_articles WHERE Title='$P[title]'");
|
||||||
if($DB->record_count()>0) {
|
if($DB->record_count()>0) {
|
||||||
list($ID) = $DB->next_record();
|
list($ID) = $DB->next_record();
|
||||||
$Err = 'An article with that name already exists <a href="wiki.php?action=article&id='.$ID.'">here</a>.';
|
$Err = 'An article with that name already exists <a href="wiki.php?action=article&id='.$ID.'">here</a>.';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,6 +1,13 @@
|
|||||||
<?
|
<?
|
||||||
show_header($Title);
|
$Title = 'Browse wiki articles';
|
||||||
|
if(!empty($_GET['letter'])) {
|
||||||
$Letter = strtoupper(substr($_GET['letter'], 0, 1));
|
$Letter = strtoupper(substr($_GET['letter'], 0, 1));
|
||||||
|
if($Letter !== '1') {
|
||||||
|
$Title .= ' ('.$Letter.')';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
show_header($Title);
|
||||||
|
|
||||||
$sql = "SELECT SQL_CALC_FOUND_ROWS
|
$sql = "SELECT SQL_CALC_FOUND_ROWS
|
||||||
w.ID,
|
w.ID,
|
||||||
@ -10,7 +17,7 @@
|
|||||||
FROM wiki_articles AS w
|
FROM wiki_articles AS w
|
||||||
WHERE w.MinClassRead <= '".$LoggedUser['EffectiveClass']."'";
|
WHERE w.MinClassRead <= '".$LoggedUser['EffectiveClass']."'";
|
||||||
if($Letter !== '1') {
|
if($Letter !== '1') {
|
||||||
$sql .= " AND UPPER(LEFT(w.Title,1)) = '".db_string($Letter)."'";
|
$sql .= " AND LEFT(w.Title,1) = '".db_string($Letter)."'";
|
||||||
} else {
|
} else {
|
||||||
$Letter = 'All';
|
$Letter = 'All';
|
||||||
}
|
}
|
||||||
@ -18,23 +25,21 @@
|
|||||||
|
|
||||||
$DB->query($sql);
|
$DB->query($sql);
|
||||||
|
|
||||||
$Title = 'Browse articles';
|
|
||||||
if($Letter) { $Title.= ' ('.$Letter.')'; }
|
|
||||||
?>
|
?>
|
||||||
<div class="thin">
|
<div class="thin">
|
||||||
<? if($Letter) { ?>
|
<? if($Letter) { ?>
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<h2>Browse articles (<?=$Letter?>)</h2>
|
<h2><?=$Title?></h2>
|
||||||
</div>
|
</div>
|
||||||
<table width="100%" style="margin-bottom:10px;">
|
<table width="100%" style="margin-bottom:10px;">
|
||||||
<tr class="colhead">
|
<tr class="colhead">
|
||||||
<td>Article</td>
|
<td>Article</td>
|
||||||
<td>Last Updated</td>
|
<td>Last updated on</td>
|
||||||
<td>Last edited by</td>
|
<td>Last edited by</td>
|
||||||
</tr>
|
</tr>
|
||||||
<? while(list($ID, $Title, $Date, $UserID) = $DB->next_record()) {?>
|
<? while(list($ID, $Title, $Date, $UserID) = $DB->next_record()) {?>
|
||||||
<tr>
|
<tr>
|
||||||
<td><a href="wiki.php?action=article&id=<?=$ID?>"><?=$Title?></a></td>
|
<td><a href="wiki.php?action=article&id=<?=$ID?>"><?=$Title?></a></td>
|
||||||
<td><?=$Date?></td>
|
<td><?=$Date?></td>
|
||||||
<td><?=format_username($UserID, false, false, false)?></td>
|
<td><?=format_username($UserID, false, false, false)?></td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -44,13 +49,13 @@
|
|||||||
<div class="box pad center">
|
<div class="box pad center">
|
||||||
<p>Search the wiki for user created tutorials and information.</p>
|
<p>Search the wiki for user created tutorials and information.</p>
|
||||||
<form action="wiki.php" method="get">
|
<form action="wiki.php" method="get">
|
||||||
<input type="hidden" name="action" value="search">
|
<input type="hidden" name="action" value="search" />
|
||||||
<input type="hidden" name="nojump" value="1" />
|
<input type="hidden" name="nojump" value="1" />
|
||||||
<input type="text" name="search" size="80" />
|
<input type="text" name="search" size="80" />
|
||||||
<input value="Search" type="submit" class="hidden" />
|
<input value="Search" type="submit" class="hidden" />
|
||||||
</form>
|
</form>
|
||||||
<br />
|
<br />
|
||||||
<p>Additionally you can manually browse through the articles by their first letter.</p>
|
<p>Additionally, you can manually browse through the articles by their first letter.</p>
|
||||||
<span>
|
<span>
|
||||||
<a href="wiki.php?action=browse&letter=a">A</a>
|
<a href="wiki.php?action=browse&letter=a">A</a>
|
||||||
<a href="wiki.php?action=browse&letter=b">B</a>
|
<a href="wiki.php?action=browse&letter=b">B</a>
|
||||||
|
Loading…
Reference in New Issue
Block a user