Empty commit

This commit is contained in:
Git 2013-05-31 08:00:59 +00:00
parent b8d11cc6b0
commit 2ce7e0cae9
3 changed files with 434 additions and 299 deletions

View File

@ -50,7 +50,11 @@
$Forum = $DB->to_array('ID',MYSQLI_ASSOC, false);
if ($Page == 1) {
$DB->query("SELECT COUNT(ID) FROM forums_topics WHERE ForumID='$ForumID' AND IsSticky='1'");
$DB->query("
SELECT COUNT(ID)
FROM forums_topics
WHERE ForumID='$ForumID'
AND IsSticky='1'");
list($Stickies) = $DB->next_record();
$Cache->cache_value('forums_'.$ForumID, array($Forum,'',0,$Stickies), 0);
}
@ -123,7 +127,11 @@
<?
/*
if (check_perms('users_mod')) {
$DB->query("SELECT ForumID from subscribed_forums WHERE ForumID='$ForumID' AND SubscriberID='$LoggedUser[ID]'");
$DB->query("
SELECT ForumID
FROM subscribed_forums
WHERE ForumID='$ForumID'
AND SubscriberID='$LoggedUser[ID]'");
if ($DB->record_count() == 0) { ?>
<a href="forums.php?action=forum_subscribe&amp;perform=add&amp;forumid=<?=$ForumID?>&amp;auth=<?=$LoggedUser['AuthKey']?>" class="brackets">Subscribe to forum</a>
<? } else { ?>
@ -199,7 +207,7 @@
$Row = 'a';
foreach ($Forum as $Topic) {
list($TopicID, $Title, $AuthorID, $Locked, $Sticky, $PostCount, $LastID, $LastTime, $LastAuthorID) = array_values($Topic);
$Row = ($Row == 'a') ? 'b' : 'a';
$Row = (($Row == 'a') ? 'b' : 'a');
// Build list of page links
// Only do this if there is more than one page
$PageLinks = array();

View File

@ -1,4 +1,4 @@
<?
<?php
set_time_limit(50000);
ob_end_flush();
gc_enable();
@ -9,8 +9,17 @@
die("schedule.php is already running. Exiting ($PCount)\n");
}
//TODO: make it awesome, make it flexible!
//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
/*TODO: make it awesome, make it flexible!
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
*/
/*************************************************************************\
//--------------Schedule page -------------------------------------------//
@ -75,7 +84,8 @@ function next_hour() {
/*
$TimeMinus = time_minus(3600 * 7);
$DB->query("SELECT DISTINCT GroupID
$DB->query("
SELECT DISTINCT GroupID
FROM torrents
WHERE FreeTorrent='1'
AND FreeLeechType='3'
@ -84,7 +94,8 @@ function next_hour() {
$Cache->delete_value('torrents_details_'.$GroupID);
$Cache->delete_value('torrent_group_'.$GroupID);
}
$DB->query("UPDATE torrents
$DB->query("
UPDATE torrents
SET FreeTorrent='0',
FreeLeechType='0',
flags='2'
@ -98,19 +109,28 @@ function next_hour() {
//------------- Expire old FL Tokens and clear cache where needed ------//
$sqltime = sqltime();
$DB->query("SELECT DISTINCT UserID from users_freeleeches WHERE Expired = FALSE AND Time < '$sqltime' - INTERVAL 4 DAY");
$DB->query("
SELECT DISTINCT UserID
FROM users_freeleeches
WHERE Expired = FALSE
AND Time < '$sqltime' - INTERVAL 4 DAY");
while (list($UserID) = $DB->next_record()) {
$Cache->delete_value('users_tokens_'.$UserID[0]);
}
$DB->query("SELECT uf.UserID, t.info_hash
$DB->query("
SELECT uf.UserID, t.info_hash
FROM users_freeleeches AS uf
JOIN torrents AS t ON uf.TorrentID = t.ID
WHERE uf.Expired = FALSE AND uf.Time < '$sqltime' - INTERVAL 4 DAY");
WHERE uf.Expired = FALSE
AND uf.Time < '$sqltime' - INTERVAL 4 DAY");
while (list($UserID, $InfoHash) = $DB->next_record(MYSQLI_NUM, false)) {
Tracker::update_tracker('remove_token', array('info_hash' => rawurlencode($InfoHash), 'userid' => $UserID));
}
$DB->query("UPDATE users_freeleeches SET Expired = True WHERE Time < '$sqltime' - INTERVAL 4 DAY");
$DB->query("
UPDATE users_freeleeches
SET Expired = True
WHERE Time < '$sqltime' - INTERVAL 4 DAY");
@ -136,7 +156,8 @@ function next_hour() {
$Cache->cache_value('stats_snatches', $SnatchStats, 0);
}
$DB->query("SELECT IF(remaining=0,'Seeding','Leeching') AS Type,
$DB->query("
SELECT IF(remaining=0,'Seeding','Leeching') AS Type,
COUNT(uid)
FROM xbt_files_users
WHERE active=1
@ -160,7 +181,8 @@ function next_hour() {
//------------- Record who's seeding how much, used for ratio watch
$DB->query("TRUNCATE TABLE users_torrent_history_temp");
$DB->query("INSERT INTO users_torrent_history_temp
$DB->query("
INSERT INTO users_torrent_history_temp
(UserID, NumTorrents)
SELECT uid,
COUNT(DISTINCT fid)
@ -168,13 +190,15 @@ function next_hour() {
WHERE mtime>unix_timestamp(now()-interval 1 hour)
AND Remaining=0
GROUP BY uid;");
$DB->query("UPDATE users_torrent_history AS h
$DB->query("
UPDATE users_torrent_history AS h
JOIN users_torrent_history_temp AS t ON t.UserID=h.UserID AND t.NumTorrents=h.NumTorrents
SET h.Finished='0',
h.LastTime=unix_timestamp(now())
WHERE h.Finished='1'
AND h.Date=UTC_DATE()+0;");
$DB->query("INSERT INTO users_torrent_history
$DB->query("
INSERT INTO users_torrent_history
(UserID, NumTorrents, Date)
SELECT UserID, NumTorrents, UTC_DATE()+0
FROM users_torrent_history_temp
@ -189,8 +213,38 @@ function next_hour() {
$Criteria[] = array('From'=>MEMBER, 'To'=>POWER, 'MinUpload'=>25 * 1024 * 1024 * 1024, 'MinRatio'=>1.05, 'MinUploads'=>5, 'MaxTime'=>time_minus(3600 * 24 * 7 * 2));
$Criteria[] = array('From'=>POWER, 'To'=>ELITE, 'MinUpload'=>100 * 1024 * 1024 * 1024, 'MinRatio'=>1.05, 'MinUploads'=>50, 'MaxTime'=>time_minus(3600 * 24 * 7 * 4));
$Criteria[] = array('From'=>ELITE, 'To'=>TORRENT_MASTER, 'MinUpload'=>500 * 1024 * 1024 * 1024, 'MinRatio'=>1.05, 'MinUploads'=>500, 'MaxTime'=>time_minus(3600 * 24 * 7 * 8));
$Criteria[]=array('From'=>TORRENT_MASTER, 'To'=>POWER_TM, 'MinUpload'=>500*1024*1024*1024, 'MinRatio'=>1.05, 'MinUploads'=>500, 'MaxTime'=>time_minus(3600*24*7*8), 'Extra'=>'(SELECT COUNT(DISTINCT GroupID) FROM torrents WHERE UserID=users_main.ID) >= 500');
$Criteria[]=array('From'=>POWER_TM, 'To'=>ELITE_TM, 'MinUpload'=>500*1024*1024*1024, 'MinRatio'=>1.05, 'MinUploads'=>500, 'MaxTime'=>time_minus(3600*24*7*8), 'Extra'=>"(SELECT COUNT(ID) FROM torrents WHERE ((LogScore = 100 AND Format = 'FLAC') OR (Media = 'Vinyl' AND Format = 'FLAC') OR (Media = 'WEB' AND Format = 'FLAC') OR (Media = 'DVD' AND Format = 'FLAC') OR (Media = 'Soundboard' AND Format = 'FLAC') OR (Media = 'Cassette' AND Format = 'FLAC') OR (Media = 'SACD' AND Format = 'FLAC') OR (Media = 'Blu-ray' AND Format = 'FLAC') OR (Media = 'DAT' AND Format = 'FLAC')) AND UserID = users_main.ID) >= 500");
$Criteria[] = array(
'From'=>TORRENT_MASTER,
'To'=>POWER_TM,
'MinUpload'=>500 * 1024 * 1024 * 1024,
'MinRatio'=>1.05,
'MinUploads'=>500,
'MaxTime'=>time_minus(3600 * 24 * 7 * 8),
'Extra'=>'( SELECT COUNT(DISTINCT GroupID)
FROM torrents
WHERE UserID=users_main.ID
) >= 500');
$Criteria[] = array(
'From'=>POWER_TM,
'To'=>ELITE_TM,
'MinUpload'=>500 * 1024 * 1024 * 1024,
'MinRatio'=>1.05,
'MinUploads'=>500,
'MaxTime'=>time_minus(3600 * 24 * 7 * 8),
'Extra'=>"( SELECT COUNT(ID)
FROM torrents
WHERE ((LogScore = 100 AND Format = 'FLAC')
OR (Media = 'Vinyl' AND Format = 'FLAC')
OR (Media = 'WEB' AND Format = 'FLAC')
OR (Media = 'DVD' AND Format = 'FLAC')
OR (Media = 'Soundboard' AND Format = 'FLAC')
OR (Media = 'Cassette' AND Format = 'FLAC')
OR (Media = 'SACD' AND Format = 'FLAC')
OR (Media = 'Blu-ray' AND Format = 'FLAC')
OR (Media = 'DAT' AND Format = 'FLAC')
)
AND UserID = users_main.ID
) >= 500");
foreach ($Criteria as $L) { // $L = Level
$Query = "
@ -225,11 +279,15 @@ function next_hour() {
$Cache->delete_value('user_info_heavy_'.$UserID);
$Cache->delete_value('user_stats_'.$UserID);
$Cache->delete_value('enabled_'.$UserID);
$DB->query("UPDATE users_info
$DB->query("
UPDATE users_info
SET AdminComment = CONCAT('".sqltime()." - Class changed to ".Users::make_class_string($L['To'])." by System\n\n', AdminComment)
WHERE UserID = ".$UserID);
WHERE UserID = $UserID");
}
$DB->query("UPDATE users_main SET PermissionID=".$L['To']." WHERE ID IN(".implode(',',$UserIDs).")");
$DB->query("
UPDATE users_main
SET PermissionID=".$L['To']."
WHERE ID IN(".implode(',', $UserIDs).')');
}
// Demote users with less than the required uploads
@ -243,11 +301,13 @@ function next_hour() {
OR (
SELECT COUNT(ID)
FROM torrents
WHERE UserID=users_main.ID)<'$L[MinUploads]'";
WHERE UserID=users_main.ID
) < '$L[MinUploads]'";
if (!empty($L['Extra'])) {
$Query .= " OR NOT ".$L['Extra'];
}
$Query .= ")
$Query .= "
)
AND Enabled='1'";
$DB->query($Query);
@ -262,11 +322,15 @@ function next_hour() {
$Cache->delete_value('user_info_heavy_'.$UserID);
$Cache->delete_value('user_stats_'.$UserID);
$Cache->delete_value('enabled_'.$UserID);
$DB->query("UPDATE users_info
$DB->query("
UPDATE users_info
SET AdminComment = CONCAT('".sqltime()." - Class changed to ".Users::make_class_string($L['From'])." by System\n\n', AdminComment)
WHERE UserID = ".$UserID);
WHERE UserID = $UserID");
}
$DB->query("UPDATE users_main SET PermissionID=".$L['From']." WHERE ID IN(".implode(',',$UserIDs).")");
$DB->query("
UPDATE users_main
SET PermissionID=".$L['From']."
WHERE ID IN(".implode(',', $UserIDs).')');
}
}
@ -385,34 +449,45 @@ function next_hour() {
//------------- Ratio requirements
$DB->query("DELETE FROM users_torrent_history WHERE Date<date('".sqltime()."'-interval 7 day)+0");
$DB->query("
DELETE FROM users_torrent_history
WHERE Date < date('".sqltime()."'-interval 7 day) + 0");
$DB->query("TRUNCATE TABLE users_torrent_history_temp;");
$DB->query("INSERT INTO users_torrent_history_temp
$DB->query("
INSERT INTO users_torrent_history_temp
(UserID, SumTime)
SELECT UserID, SUM(Time) FROM users_torrent_history
SELECT UserID, SUM(Time)
FROM users_torrent_history
GROUP BY UserID;");
$DB->query("INSERT INTO users_torrent_history
$DB->query("
INSERT INTO users_torrent_history
(UserID, NumTorrents, Date, Time)
SELECT UserID, 0, UTC_DATE()+0, 259200-SumTime
FROM users_torrent_history_temp
WHERE SumTime<259200;");
$DB->query("UPDATE users_torrent_history SET Weight=NumTorrents*Time;");
$DB->query("
UPDATE users_torrent_history
SET Weight = NumTorrents * Time;");
$DB->query("TRUNCATE TABLE users_torrent_history_temp;");
$DB->query("INSERT INTO users_torrent_history_temp
$DB->query("
INSERT INTO users_torrent_history_temp
(UserID, SeedingAvg)
SELECT UserID, SUM(Weight)/SUM(Time) FROM users_torrent_history
SELECT UserID, SUM(Weight)/SUM(Time)
FROM users_torrent_history
GROUP BY UserID;");
$DB->query("DELETE FROM users_torrent_history WHERE NumTorrents='0'");
$DB->query("TRUNCATE TABLE users_torrent_history_snatch;");
$DB->query("INSERT INTO users_torrent_history_snatch(UserID, NumSnatches)
$DB->query("
INSERT INTO users_torrent_history_snatch
(UserID, NumSnatches)
SELECT
xs.uid,
COUNT(DISTINCT xs.fid)
FROM
xbt_snatched AS xs
join torrents on torrents.ID=xs.fid
FROM xbt_snatched AS xs
JOIN torrents on torrents.ID=xs.fid
GROUP BY xs.uid;");
$DB->query("UPDATE users_main AS um
$DB->query("
UPDATE users_main AS um
JOIN users_torrent_history_temp AS t ON t.UserID=um.ID
JOIN users_torrent_history_snatch AS s ON s.UserID=um.ID
SET um.RequiredRatioWork = (1 - (t.SeedingAvg / s.NumSnatches))
@ -429,7 +504,10 @@ function next_hour() {
array(5 * 1024 * 1024 * 1024, 0.15, 0.0)
);
$DB->query("UPDATE users_main SET RequiredRatio=0.60 WHERE Downloaded>100*1024*1024*1024");
$DB->query("
UPDATE users_main
SET RequiredRatio = 0.60
WHERE Downloaded > 100*1024*1024*1024");
@ -437,22 +515,34 @@ function next_hour() {
foreach ($RatioRequirements as $Requirement) {
list($Download, $Ratio, $MinRatio) = $Requirement;
$DB->query("UPDATE users_main
$DB->query("
UPDATE users_main
SET RequiredRatio = RequiredRatioWork * $Ratio
WHERE Downloaded >= '$Download' AND Downloaded < '$DownloadBarrier'");
WHERE Downloaded >= '$Download'
AND Downloaded < '$DownloadBarrier'");
$DB->query("UPDATE users_main
$DB->query("
UPDATE users_main
SET RequiredRatio = $MinRatio
WHERE Downloaded >= '$Download' AND Downloaded < '$DownloadBarrier' AND RequiredRatio<$MinRatio");
//$DB->query("UPDATE users_main
// SET RequiredRatio=$Ratio
// WHERE Downloaded >= '$Download' AND Downloaded < '$DownloadBarrier' AND can_leech='0' AND Enabled='1'");
WHERE Downloaded >= '$Download'
AND Downloaded < '$DownloadBarrier'
AND RequiredRatio < $MinRatio");
/*$DB->query("
UPDATE users_main
SET RequiredRatio=$Ratio
WHERE Downloaded >= '$Download'
AND Downloaded < '$DownloadBarrier'
AND can_leech='0'
AND Enabled='1'");
*/
$DownloadBarrier = $Download;
}
$DB->query("UPDATE users_main SET RequiredRatio=0.00 WHERE Downloaded<5*1024*1024*1024");
$DB->query("
UPDATE users_main
SET RequiredRatio=0.00
WHERE Downloaded < 5*1024*1024*1024");
// Here is where we manage ratio watch
@ -472,7 +562,8 @@ function next_hour() {
AND m.Enabled='1'");
$OffRatioWatch = $DB->collect('ID');
if (count($OffRatioWatch) > 0) {
$DB->query("UPDATE users_info AS ui
$DB->query("
UPDATE users_info AS ui
JOIN users_main AS um ON um.ID = ui.UserID
SET ui.RatioWatchEnds='0000-00-00 00:00:00',
ui.RatioWatchDownload='0',
@ -506,12 +597,13 @@ function next_hour() {
AND m.Enabled='1'");
$OffRatioWatch = $DB->collect('ID');
if (count($OffRatioWatch) > 0) {
$DB->query("UPDATE users_info AS ui
$DB->query("
UPDATE users_info AS ui
JOIN users_main AS um ON um.ID = ui.UserID
SET ui.RatioWatchEnds='0000-00-00 00:00:00',
ui.RatioWatchDownload='0',
um.can_leech='1'
WHERE ui.UserID IN(".implode(",", $OffRatioWatch).")");
WHERE ui.UserID IN(".implode(',', $OffRatioWatch).')');
}
foreach ($OffRatioWatch as $UserID) {
@ -575,8 +667,14 @@ function next_hour() {
$Details[] = "Ripped with EAC v0.95, -1 point [1]";
$Details = serialize($Details);
while (list($TorrentID) = $DB->next_record()) {
$DB->query("UPDATE torrents SET LogScore = 99 WHERE ID = ".$TorrentID);
$DB->query("UPDATE torrents_logs_new SET Score = 99, Details = '$Details' WHERE TorrentID = ".$TorrentID);
$DB->query("
UPDATE torrents
SET LogScore = 99
WHERE ID = $TorrentID");
$DB->query("
UPDATE torrents_logs_new
SET Score = 99, Details = '$Details'
WHERE TorrentID = $TorrentID");
}
sleep(5);
@ -600,10 +698,10 @@ function next_hour() {
JOIN users_main AS m ON m.ID=i.UserID
SET m.can_leech='0',
i.AdminComment=CONCAT('$sqltime - Leeching ability disabled by ratio watch system - required ratio: ', m.RequiredRatio,'', i.AdminComment)
WHERE m.ID IN(".implode(',',$UserIDs).")");
WHERE m.ID IN(".implode(',', $UserIDs).')');
$DB->query("DELETE FROM users_torrent_history WHERE UserID IN (".implode(',',$UserIDs).")");
$DB->query("DELETE FROM users_torrent_history WHERE UserID IN (".implode(',', $UserIDs).')');
}
foreach ($UserIDs as $UserID) {
@ -623,7 +721,8 @@ function next_hour() {
//------------- Disable inactive user accounts --------------------------//
sleep(5);
// Send email
$DB->query("SELECT um.Username, um.Email
$DB->query("
SELECT um.Username, um.Email
FROM users_info AS ui
JOIN users_main AS um ON um.ID=ui.UserID
LEFT JOIN users_levels AS ul ON ul.UserID = um.ID AND ul.PermissionID = '".CELEB."'
@ -639,7 +738,8 @@ function next_hour() {
$Body = "Hi $Username, \n\nIt has been almost 4 months since you used your account at https://".SSL_SITE_URL.". This is an automated email to inform you that your account will be disabled in 10 days if you do not sign in. ";
Misc::send_email($Email, 'Your '.SITE_NAME.' account is about to be disabled', $Body);
}
$DB->query("SELECT um.ID
$DB->query("
SELECT um.ID
FROM users_info AS ui
JOIN users_main AS um ON um.ID=ui.UserID
LEFT JOIN users_levels AS ul ON ul.UserID = um.ID AND ul.PermissionID = '".CELEB."'
@ -657,7 +757,8 @@ function next_hour() {
//------------- Disable unconfirmed users ------------------------------//
sleep(10);
$DB->query("UPDATE users_info AS ui
$DB->query("
UPDATE users_info AS ui
JOIN users_main AS um ON um.ID=ui.UserID
SET um.Enabled='2',
ui.BanDate='$sqltime',
@ -673,7 +774,8 @@ function next_hour() {
//------------- Demote users --------------------------------------------//
sleep(10);
$DB->query('SELECT um.ID
$DB->query('
SELECT um.ID
FROM users_main AS um
WHERE PermissionID IN('.POWER.', '.ELITE.', '.TORRENT_MASTER.')
AND Uploaded/Downloaded < 0.95
@ -687,7 +789,8 @@ function next_hour() {
$Cache->update_row(false, array('PermissionID'=>MEMBER));
$Cache->commit_transaction(2592000);
}
$DB->query('UPDATE users_main
$DB->query('
UPDATE users_main
SET PermissionID='.MEMBER.'
WHERE PermissionID IN('.POWER.', '.ELITE.', '.TORRENT_MASTER.')
AND Uploaded/Downloaded < 0.95
@ -695,7 +798,8 @@ function next_hour() {
AND Uploaded < 25*1024*1024*1024');
echo "demoted 2\n";
$DB->query('SELECT um.ID
$DB->query('
SELECT um.ID
FROM users_main AS um
WHERE PermissionID IN('.MEMBER.', '.POWER.', '.ELITE.', '.TORRENT_MASTER.')
AND Uploaded/Downloaded < 0.65');
@ -705,7 +809,8 @@ function next_hour() {
$Cache->update_row(false, array('PermissionID'=>USER));
$Cache->commit_transaction(2592000);
}
$DB->query('UPDATE users_main
$DB->query('
UPDATE users_main
SET PermissionID='.USER.'
WHERE PermissionID IN('.MEMBER.', '.POWER.', '.ELITE.', '.TORRENT_MASTER.')
AND Uploaded/Downloaded < 0.65');
@ -713,10 +818,12 @@ function next_hour() {
//------------- Lock old threads ----------------------------------------//
sleep(10);
$DB->query("SELECT t.ID, t.ForumID
$DB->query("
SELECT t.ID, t.ForumID
FROM forums_topics AS t
JOIN forums AS f ON t.ForumID = f.ID
WHERE t.IsLocked='0' AND t.IsSticky='0'
WHERE t.IsLocked='0'
AND t.IsSticky='0'
AND DATEDIFF(CURDATE(),DATE(t.LastPostTime)) / 7 > f.AutoLockWeeks
AND f.AutoLock = '1'");
$IDs = $DB->collect('ID');
@ -754,7 +861,8 @@ function next_hour() {
$i = 0;
$DB->query("SELECT
$DB->query("
SELECT
t.ID,
t.GroupID,
tg.Name,
@ -794,7 +902,7 @@ function next_hour() {
$Name.= ' ['.(empty($Media) ? '' : "$Media / ").$Format.' / '.$Encoding.']';
}
Torrents::delete_torrent($ID, $GroupID);
$LogEntries[] = "Torrent ".$ID." (".$Name.") (".strtoupper($InfoHash).") was deleted for inactivity (unseeded)";
$LogEntries[] = "Torrent $ID ($Name) (".strtoupper($InfoHash).") was deleted for inactivity (unseeded)";
if (!array_key_exists($UserID, $DeleteNotes))
$DeleteNotes[$UserID] = array('Count' => 0, 'Msg' => '');
@ -810,13 +918,13 @@ function next_hour() {
echo "$i torrents deleted for inactivity.\n";
foreach ($DeleteNotes as $UserID => $MessageInfo) {
$Singular = ($MessageInfo['Count'] == 1) ? true : false;
$Singular = (($MessageInfo['Count'] == 1) ? true : false);
Misc::send_pm($UserID, 0, $MessageInfo['Count'].' of your torrents '.($Singular ? 'has' : 'have').' been deleted for inactivity', ($Singular ? 'One' : 'Some').' of your uploads '.($Singular ? 'has' : 'have').' been deleted for being unseeded. Since '.($Singular ? 'it' : 'they').' didn\'t break any rules (we hope), please feel free to re-upload '.($Singular ? 'it' : 'them').".\n\nThe following torrent".($Singular ? ' was' : 's were').' deleted:'.$MessageInfo['Msg']);
}
unset($DeleteNotes);
if (count($LogEntries) > 0) {
$Values = "('".implode("', '".$sqltime."'), ('",$LogEntries)."', '".$sqltime."')";
$Values = "('".implode("', '".$sqltime."'), ('",$LogEntries)."', '$sqltime')";
$DB->query('INSERT INTO log (Message, Time) VALUES '.$Values);
echo "\nDeleted $i torrents for inactivity\n";
}
@ -833,12 +941,15 @@ function next_hour() {
// Daily top 10 history.
$DB->query("INSERT INTO top10_history (Date, Type) VALUES ('".$sqltime."', 'Daily')");
$DB->query("
INSERT INTO top10_history (Date, Type)
VALUES ('$sqltime', 'Daily')");
$HistoryID = $DB->inserted_id();
$Top10 = $Cache->get_value('top10tor_day_10');
if ($Top10 === false) {
$DB->query("SELECT
$DB->query("
SELECT
t.ID,
g.ID,
g.Name,
@ -906,24 +1017,28 @@ function next_hour() {
$TitleString = $DisplayName.' '.$ExtraInfo;
$TagString = str_replace("|", " ", $TorrentTags);
$TagString = str_replace('|', ' ', $TorrentTags);
$DB->query("INSERT INTO top10_history_torrents
$DB->query("
INSERT INTO top10_history_torrents
(HistoryID, Rank, TorrentID, TitleString, TagString)
VALUES
(".$HistoryID.", ".$i.", ".$TorrentID.", '".db_string($TitleString)."', '".db_string($TagString)."')");
($HistoryID, $i, $TorrentID, '".db_string($TitleString)."', '".db_string($TagString)."')");
$i++;
}
// Weekly top 10 history.
// We need to haxxor it to work on a Sunday as we don't have a weekly schedule
if (date('w') == 0) {
$DB->query("INSERT INTO top10_history (Date, Type) VALUES ('".$sqltime."', 'Weekly')");
$DB->query("
INSERT INTO top10_history (Date, Type)
VALUES ('$sqltime', 'Weekly')");
$HistoryID = $DB->inserted_id();
$Top10 = $Cache->get_value('top10tor_week_10');
if ($Top10 === false) {
$DB->query("SELECT
$DB->query("
SELECT
t.ID,
g.ID,
g.Name,
@ -946,7 +1061,7 @@ function next_hour() {
FROM torrents AS t
LEFT JOIN torrents_group AS g ON g.ID = t.GroupID
WHERE t.Seeders>0
AND t.Time > ('".$sqltime."' - INTERVAL 1 WEEK)
AND t.Time > ('$sqltime' - INTERVAL 1 WEEK)
ORDER BY (t.Seeders + t.Leechers) DESC
LIMIT 10;");
@ -1014,12 +1129,13 @@ function next_hour() {
$TitleString = $DisplayName.' '.$ExtraInfo;
$TagString = str_replace("|", " ", $TorrentTags);
$TagString = str_replace('|', ' ', $TorrentTags);
$DB->query('INSERT INTO top10_history_torrents
$DB->query("
INSERT INTO top10_history_torrents
(HistoryID, Rank, TorrentID, TitleString, TagString)
VALUES
('.$HistoryID.", ".$i.", ".$TorrentID.", '".db_string($TitleString)."', '".db_string($TagString)."')");
($HistoryID, $i, $TorrentID, ".db_string($TitleString)."', '".db_string($TagString)."')");
$i++;
endforeach;
@ -1067,13 +1183,13 @@ function next_hour() {
}
}
$DB->query("UPDATE staff_pm_conversations
$DB->query("
UPDATE staff_pm_conversations
SET Status = 'Resolved', ResolverID = '0'
WHERE Date < NOW() - INTERVAL 1 MONTH
AND Status = 'Open'
AND AssignedToUser IS NULL");
}
/*************************************************************************\
//--------------Run twice per month -------------------------------------//
@ -1087,7 +1203,8 @@ function next_hour() {
//------------- Cycle auth keys -----------------------------------------//
$DB->query("UPDATE users_info
$DB->query("
UPDATE users_info
SET AuthKey =
MD5(
CONCAT(
@ -1119,7 +1236,8 @@ function next_hour() {
*/
$DB->query("SELECT ID
$DB->query("
SELECT ID
FROM users_main AS um
JOIN users_info AS ui on ui.UserID=um.ID
WHERE um.Enabled='1'
@ -1136,7 +1254,10 @@ function next_hour() {
$Cache->update_row(false, array('Invites' => '+1'));
$Cache->commit_transaction(0);
}
$DB->query("UPDATE users_main SET Invites=Invites+1 WHERE ID IN (".implode(',',$UserIDs).")");
$DB->query('
UPDATE users_main
SET Invites=Invites+1
WHERE ID IN ('.implode(',', $UserIDs).')');
}
$BonusReqs = array(
@ -1146,7 +1267,8 @@ function next_hour() {
// Since MySQL doesn't like subselecting from the target table during an update, we must create a temporary table.
$DB->query("CREATE TEMPORARY TABLE temp_sections_schedule_index
$DB->query("
CREATE TEMPORARY TABLE temp_sections_schedule_index
SELECT SUM(Uploaded) AS Upload,SUM(Downloaded) AS Download,Inviter
FROM users_main AS um
JOIN users_info AS ui ON ui.UserID=um.ID
@ -1154,7 +1276,8 @@ function next_hour() {
foreach ($BonusReqs as $BonusReq) {
list($Ratio, $Upload) = $BonusReq;
$DB->query("SELECT ID
$DB->query("
SELECT ID
FROM users_main AS um
JOIN users_info AS ui ON ui.UserID=um.ID
JOIN temp_sections_schedule_index AS u ON u.Inviter = um.ID
@ -1173,14 +1296,18 @@ function next_hour() {
$Cache->update_row(false, array('Invites' => '+1'));
$Cache->commit_transaction(0);
}
$DB->query("UPDATE users_main SET Invites=Invites+1 WHERE ID IN (".implode(',',$UserIDs).")");
$DB->query('
UPDATE users_main
SET Invites=Invites+1
WHERE ID IN ('.implode(',', $UserIDs).')');
}
}
if ($BiWeek == 8) {
$DB->query('TRUNCATE TABLE top_snatchers;');
$DB->query("INSERT INTO top_snatchers (UserID)
$DB->query("
INSERT INTO top_snatchers (UserID)
SELECT uid
FROM xbt_snatched
GROUP BY uid

View File

@ -42,11 +42,11 @@
}
// defaults to 10 (duh)
$Limit = isset($_GET['limit']) ? intval($_GET['limit']) : 10;
$Limit = in_array($Limit, array(10, 100, 250)) ? $Limit : 10;
$Limit = (isset($_GET['limit']) ? intval($_GET['limit']) : 10);
$Limit = (in_array($Limit, array(10, 100, 250)) ? $Limit : 10);
}
$Filtered = !empty($Where);
View::show_header('Top '.$Limit.' Torrents');
View::show_header("Top $Limit Torrents");
?>
<div class="thin">
<div class="header">
@ -121,7 +121,7 @@
$FreeleechToggleQuery .= 'freeleech=' . $FreeleechToggleName;
$GroupByToggleName = ($_GET['groups'] == "show" ? 'hide' : 'show');
$GroupByToggleName = ($_GET['groups'] == 'show' ? 'hide' : 'show');
$GroupByToggleQuery = Format::get_url(array('freeleech', 'groups'));
if (!empty($GroupByToggleQuery))