Private GIT

Skip to content
Snippets Groups Projects
Commit 5d39b05d authored by Giovanni's avatar Giovanni
Browse files

Fix manage of unaired episode according to trakt rolling download if enabled

parent 78689a8d
No related branches found
No related tags found
No related merge requests found
......@@ -30,6 +30,8 @@ from sickbeard import helpers
from sickbeard import exceptions
from sickbeard import network_timezones
from sickbeard.exceptions import ex
from sickbeard.common import SKIPPED
from common import Quality, qualityPresetStrings, statusStrings
class DailySearcher():
......@@ -84,34 +86,21 @@ class DailySearcher():
# if an error occured assume the episode hasn't aired yet
continue
UpdateWantedList = 0
ep = show.getEpisode(int(sqlEp["season"]), int(sqlEp["episode"]))
with ep.lock:
if ep.show.paused:
ep.status = common.SKIPPED
else:
myDB = db.DBConnection()
sql_selection="SELECT show_name, indexer_id, season, episode, paused FROM (SELECT * FROM tv_shows s,tv_episodes e WHERE s.indexer_id = e.showid) T1 WHERE T1.paused = 0 and T1.episode_id IN (SELECT T2.episode_id FROM tv_episodes T2 WHERE T2.showid = T1.indexer_id and T2.status in (?) ORDER BY T2.season,T2.episode LIMIT 1) and airdate is not null and indexer_id = ? ORDER BY T1.show_name,season,episode"
results = myDB.select(sql_selection, [common.SKIPPED, sqlEp["showid"]])
if not sickbeard.TRAKT_USE_ROLLING_DOWNLOAD:
if ep.season == 0:
logger.log(u"New episode " + ep.prettyName() + " airs today, setting status to SKIPPED, due to trakt integration")
elif ep.season == 0:
logger.log(u"New episode " + ep.prettyName() + " airs today, setting status to SKIPPED because is a special season")
ep.status = common.SKIPPED
else:
if not sickbeard.TRAKT_USE_ROLLING_DOWNLOAD or not sickbeard.USE_TRAKT:
logger.log(u"New episode " + ep.prettyName() + " airs today, setting status to WANTED")
ep.status = common.WANTED
else:
sn_sk = results[0]["season"]
ep_sk = results[0]["episode"]
if (int(sn_sk)*100+int(ep_sk)) < (int(sqlEp["season"])*100+int(sqlEp["episode"])):
logger.log(u"New episode " + ep.prettyName() + " airs today, setting status to SKIPPED, due to trakt integration")
ep.status = common.SKIPPED
else:
if ep.season == 0:
logger.log(u"New episode " + ep.prettyName() + " airs today, setting status to SKIPPED, due to trakt integration")
ep.status = common.SKIPPED
else:
logger.log(u"New episode " + ep.prettyName() + " airs today, setting status to WANTED")
ep.status = common.WANTED
UpdateWantedList = 1
sql_l.append(ep.get_sql())
else:
......@@ -121,6 +110,8 @@ class DailySearcher():
myDB = db.DBConnection()
myDB.mass_action(sql_l)
sickbeard.traktRollingScheduler.action.updateWantedList()
# queue episode for daily search
dailysearch_queue_item = sickbeard.search_queue.DailySearchQueueItem()
sickbeard.searchQueueScheduler.action.add_item(dailysearch_queue_item)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment