Removed 'searcher.download' (method was moved to the release plugin)
This commit is contained in:
1 parent
ab81824f4c
commit
d122bd1b43
1 file changed
-79
@@ -24,7 +24,6 @@ class Searcher(SearcherBase):
|
|||||||
addEvent('searcher.correct_year', self.correctYear)
|
addEvent('searcher.correct_year', self.correctYear)
|
||||||
addEvent('searcher.correct_name', self.correctName)
|
addEvent('searcher.correct_name', self.correctName)
|
||||||
addEvent('searcher.correct_words', self.correctWords)
|
addEvent('searcher.correct_words', self.correctWords)
|
||||||
addEvent('searcher.download', self.download)
|
|
||||||
addEvent('searcher.search', self.search)
|
addEvent('searcher.search', self.search)
|
||||||
|
|
||||||
addApiView('searcher.full_search', self.searchAllView, docs = {
|
addApiView('searcher.full_search', self.searchAllView, docs = {
|
||||||
@@ -51,84 +50,6 @@ class Searcher(SearcherBase):
|
|||||||
progress = fireEvent('searcher.progress', merge = True)
|
progress = fireEvent('searcher.progress', merge = True)
|
||||||
return progress
|
return progress
|
||||||
|
|
||||||
def download(self, data, media, manual = False):
|
|
||||||
|
|
||||||
# TODO what is this for?
|
|
||||||
#if not data.get('protocol'):
|
|
||||||
# data['protocol'] = data['type']
|
|
||||||
# data['type'] = 'movie'
|
|
||||||
|
|
||||||
# Test to see if any downloaders are enabled for this type
|
|
||||||
downloader_enabled = fireEvent('download.enabled', manual, data, single = True)
|
|
||||||
|
|
||||||
if downloader_enabled:
|
|
||||||
snatched_status, active_status, done_status = fireEvent('status.get', ['snatched', 'active', 'done'], single = True)
|
|
||||||
|
|
||||||
# Download release to temp
|
|
||||||
filedata = None
|
|
||||||
if data.get('download') and (ismethod(data.get('download')) or isfunction(data.get('download'))):
|
|
||||||
filedata = data.get('download')(url = data.get('url'), nzb_id = data.get('id'))
|
|
||||||
if filedata == 'try_next':
|
|
||||||
return filedata
|
|
||||||
|
|
||||||
download_result = fireEvent('download', data = data, movie = media, manual = manual, filedata = filedata, single = True)
|
|
||||||
log.debug('Downloader result: %s', download_result)
|
|
||||||
|
|
||||||
if download_result:
|
|
||||||
try:
|
|
||||||
# Mark release as snatched
|
|
||||||
db = get_session()
|
|
||||||
rls = db.query(Release).filter_by(identifier = md5(data['url'])).first()
|
|
||||||
if rls:
|
|
||||||
renamer_enabled = Env.setting('enabled', 'renamer')
|
|
||||||
|
|
||||||
rls.status_id = done_status.get('id') if not renamer_enabled else snatched_status.get('id')
|
|
||||||
|
|
||||||
# Save download-id info if returned
|
|
||||||
if isinstance(download_result, dict):
|
|
||||||
for key in download_result:
|
|
||||||
rls_info = ReleaseInfo(
|
|
||||||
identifier = 'download_%s' % key,
|
|
||||||
value = toUnicode(download_result.get(key))
|
|
||||||
)
|
|
||||||
rls.info.append(rls_info)
|
|
||||||
db.commit()
|
|
||||||
|
|
||||||
log_movie = '%s (%s) in %s' % (getTitle(media['library']), media['library']['year'], rls.quality.label)
|
|
||||||
snatch_message = 'Snatched "%s": %s' % (data.get('name'), log_movie)
|
|
||||||
log.info(snatch_message)
|
|
||||||
fireEvent('%s.snatched' % data['type'], message = snatch_message, data = rls.to_dict())
|
|
||||||
|
|
||||||
# If renamer isn't used, mark media done
|
|
||||||
if not renamer_enabled:
|
|
||||||
try:
|
|
||||||
if media['status_id'] == active_status.get('id'):
|
|
||||||
for profile_type in media['profile']['types']:
|
|
||||||
if profile_type['quality_id'] == rls.quality.id and profile_type['finish']:
|
|
||||||
log.info('Renamer disabled, marking media as finished: %s', log_movie)
|
|
||||||
|
|
||||||
# Mark release done
|
|
||||||
rls.status_id = done_status.get('id')
|
|
||||||
rls.last_edit = int(time.time())
|
|
||||||
db.commit()
|
|
||||||
|
|
||||||
# Mark media done
|
|
||||||
mdia = db.query(Media).filter_by(id = media['id']).first()
|
|
||||||
mdia.status_id = done_status.get('id')
|
|
||||||
mdia.last_edit = int(time.time())
|
|
||||||
db.commit()
|
|
||||||
except:
|
|
||||||
log.error('Failed marking media finished, renamer disabled: %s', traceback.format_exc())
|
|
||||||
|
|
||||||
except:
|
|
||||||
log.error('Failed marking media finished: %s', traceback.format_exc())
|
|
||||||
|
|
||||||
return True
|
|
||||||
|
|
||||||
log.info('Tried to download, but none of the "%s" downloaders are enabled or gave an error', (data.get('protocol')))
|
|
||||||
|
|
||||||
return False
|
|
||||||
|
|
||||||
def search(self, protocols, media, quality):
|
def search(self, protocols, media, quality):
|
||||||
results = []
|
results = []
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user