mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-09-01 10:48:53 +00:00
Fix the way failed releases are counted
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
2015-10-22 DariusIII
|
||||
Upd: Way how failed releases are counted
|
||||
Fix: covgroup and failed notices
|
||||
Fix: List of releases for specific show in myshows
|
||||
Fix: Occurence of rageid
|
||||
|
||||
+31
-18
@@ -200,36 +200,41 @@ class Releases
|
||||
public function getBrowseRange($cat, $start, $num, $orderBy, $maxAge = -1, $excludedCats = [], $groupName = '')
|
||||
{
|
||||
$orderBy = $this->getBrowseOrder($orderBy);
|
||||
return $this->pdo->query(
|
||||
sprintf(
|
||||
"SELECT r.*,
|
||||
|
||||
$qry = sprintf(
|
||||
"SELECT r.*,
|
||||
CONCAT(cp.title, ' > ', c.title) AS category_name,
|
||||
CONCAT(cp.id, ',', c.id) AS category_ids,
|
||||
(SELECT COUNT(userid) FROM dnzb_failures WHERE guid = r.guid) AS failed,
|
||||
COUNT(df.id) AS failed,
|
||||
g.name AS group_name,
|
||||
rn.id AS nfoid,
|
||||
re.releaseid AS reid
|
||||
re.releaseid AS reid,
|
||||
tve.title, tve.firstaired
|
||||
FROM releases r
|
||||
STRAIGHT_JOIN groups g ON g.id = r.groupid
|
||||
STRAIGHT_JOIN category c ON c.id = r.categoryid
|
||||
INNER JOIN category cp ON cp.id = c.parentid
|
||||
LEFT OUTER JOIN tv_episodes tve ON r.tv_episodes_id = tve.id
|
||||
LEFT OUTER JOIN releasevideo re ON re.releaseid = r.id
|
||||
LEFT OUTER JOIN releasenfo rn ON rn.releaseid = r.id
|
||||
LEFT OUTER JOIN dnzb_failures df ON df.guid = r.guid
|
||||
WHERE r.nzbstatus = %d
|
||||
AND r.passwordstatus %s
|
||||
%s %s %s %s
|
||||
GROUP BY r.id
|
||||
ORDER BY %s %s %s",
|
||||
NZB::NZB_ADDED,
|
||||
$this->showPasswords,
|
||||
$this->categorySQL($cat),
|
||||
($maxAge > 0 ? (" AND postdate > NOW() - INTERVAL " . $maxAge . ' DAY ') : ''),
|
||||
(count($excludedCats) ? (' AND r.categoryid NOT IN (' . implode(',', $excludedCats) . ')') : ''),
|
||||
($groupName != '' ? sprintf(' AND g.name = %s ', $this->pdo->escapeString($groupName)) : ''),
|
||||
$orderBy[0],
|
||||
$orderBy[1],
|
||||
($start === false ? '' : ' LIMIT ' . $num . ' OFFSET ' . $start)
|
||||
), true, NN_CACHE_EXPIRY_MEDIUM
|
||||
NZB::NZB_ADDED,
|
||||
$this->showPasswords,
|
||||
$this->categorySQL($cat),
|
||||
($maxAge > 0 ? (" AND postdate > NOW() - INTERVAL " . $maxAge . ' DAY ') : ''),
|
||||
(count($excludedCats) ? (' AND r.categoryid NOT IN (' . implode(',', $excludedCats) . ')') : ''),
|
||||
($groupName != '' ? sprintf(' AND g.name = %s ', $this->pdo->escapeString($groupName)) : ''),
|
||||
$orderBy[0],
|
||||
$orderBy[1],
|
||||
($start === false ? '' : ' LIMIT ' . $num . ' OFFSET ' . $start)
|
||||
);
|
||||
$sql = $this->pdo->query($qry, true, NN_CACHE_EXPIRY_MEDIUM);
|
||||
return $sql;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -470,18 +475,23 @@ class Releases
|
||||
CONCAT(cp.title, '-', c.title) AS category_name,
|
||||
%s AS category_ids,
|
||||
groups.name AS group_name,
|
||||
rn.id AS nfoid, re.releaseid AS reid
|
||||
rn.id AS nfoid, re.releaseid AS reid,
|
||||
tve.firstaired,
|
||||
COUNT(df.id) AS failed
|
||||
FROM releases r
|
||||
LEFT OUTER JOIN releasevideo re ON re.releaseid = r.id
|
||||
INNER JOIN groups ON groups.id = r.groupid
|
||||
LEFT OUTER JOIN releasenfo rn ON rn.releaseid = r.id
|
||||
LEFT OUTER JOIN tv_episodes tve ON tve.videos_id = r.videos_id
|
||||
INNER JOIN category c ON c.id = r.categoryid
|
||||
INNER JOIN category cp ON cp.id = c.parentid
|
||||
LEFT OUTER JOIN dnzb_failures df ON df.guid = r.guid
|
||||
WHERE %s %s
|
||||
AND r.nzbstatus = %d
|
||||
AND r.categoryid BETWEEN 5000 AND 5999
|
||||
AND r.passwordstatus %s
|
||||
%s
|
||||
GROUP BY r.id
|
||||
ORDER BY %s %s %s",
|
||||
$this->getConcatenatedCategoryIDs(),
|
||||
$this->uSQL($userShows, 'videos_id'),
|
||||
@@ -869,17 +879,20 @@ class Releases
|
||||
"SELECT r.*,
|
||||
CONCAT(cp.title, ' > ', c.title) AS category_name,
|
||||
%s AS category_ids,
|
||||
(SELECT COUNT(userid) FROM dnzb_failures WHERE guid = r.guid) AS failed,
|
||||
groups.name AS group_name,
|
||||
rn.id AS nfoid,
|
||||
re.releaseid AS reid,
|
||||
cp.id AS categoryparentid
|
||||
cp.id AS categoryparentid,
|
||||
tve.firstaired,
|
||||
COUNT(df.id) AS failed
|
||||
FROM releases r
|
||||
LEFT OUTER JOIN releasevideo re ON re.releaseid = r.id
|
||||
LEFT OUTER JOIN tv_episodes tve ON r.tv_episodes_id = tve.id
|
||||
LEFT OUTER JOIN releasenfo rn ON rn.releaseid = r.id
|
||||
INNER JOIN groups ON groups.id = r.groupid
|
||||
INNER JOIN category c ON c.id = r.categoryid
|
||||
INNER JOIN category cp ON cp.id = c.parentid
|
||||
LEFT OUTER JOIN dnzb_failures df ON df.guid = r.guid
|
||||
%s",
|
||||
$this->getConcatenatedCategoryIDs(),
|
||||
$whereSql
|
||||
|
||||
Reference in New Issue
Block a user