Variable renaming movie to media

This commit is contained in:
Ruud committed 2013-11-30 12:41:06 +01:00
1 parent bde6de1789
commit 2fc4809821
15 files changed
+68 -60

No files matched your search

+3 -3
View File
@@ -49,13 +49,13 @@ class Downloader(Provider):
return [] return []
def _download(self, data = None, movie = None, manual = False, filedata = None): def _download(self, data = None, media = None, manual = False, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
if self.isDisabled(manual, data): if self.isDisabled(manual, data):
return return
return self.download(data = data, movie = movie, filedata = filedata) return self.download(data = data, media = media, filedata = filedata)
def _getAllDownloadStatus(self): def _getAllDownloadStatus(self):
if self.isDisabled(manual = True, data = {}): if self.isDisabled(manual = True, data = {}):
@@ -12,8 +12,8 @@ class Blackhole(Downloader):
protocol = ['nzb', 'torrent', 'torrent_magnet'] protocol = ['nzb', 'torrent', 'torrent_magnet']
def download(self, data = None, movie = None, filedata = None): def download(self, data = None, media = None, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
directory = self.conf('directory') directory = self.conf('directory')
@@ -33,7 +33,7 @@ class Blackhole(Downloader):
log.error('No nzb/torrent available: %s', data.get('url')) log.error('No nzb/torrent available: %s', data.get('url'))
return False return False
file_name = self.createFileName(data, filedata, movie) file_name = self.createFileName(data, filedata, media)
full_path = os.path.join(directory, file_name) full_path = os.path.join(directory, file_name)
if self.conf('create_subdir'): if self.conf('create_subdir'):
+5 -2
View File
@@ -32,7 +32,10 @@ class Deluge(Downloader):
return self.drpc return self.drpc
def download(self, data, movie, filedata = None): def download(self, data = None, media = None, filedata = None):
if not media: media = {}
if not data: data = {}
log.info('Sending "%s" (%s) to Deluge.', (data.get('name'), data.get('protocol'))) log.info('Sending "%s" (%s) to Deluge.', (data.get('name'), data.get('protocol')))
if not self.connect(): if not self.connect():
@@ -73,7 +76,7 @@ class Deluge(Downloader):
if data.get('protocol') == 'torrent_magnet': if data.get('protocol') == 'torrent_magnet':
remote_torrent = self.drpc.add_torrent_magnet(data.get('url'), options) remote_torrent = self.drpc.add_torrent_magnet(data.get('url'), options)
else: else:
filename = self.createFileName(data, filedata, movie) filename = self.createFileName(data, filedata, media)
remote_torrent = self.drpc.add_torrent_file(filename, filedata, options) remote_torrent = self.drpc.add_torrent_file(filename, filedata, options)
if not remote_torrent: if not remote_torrent:
+3 -3
View File
@@ -19,8 +19,8 @@ class NZBGet(Downloader):
url = 'http://%(username)s:%(password)s@%(host)s/xmlrpc' url = 'http://%(username)s:%(password)s@%(host)s/xmlrpc'
def download(self, data = None, movie = None, filedata = None): def download(self, data = None, media = None, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
if not filedata: if not filedata:
@@ -30,7 +30,7 @@ class NZBGet(Downloader):
log.info('Sending "%s" to NZBGet.', data.get('name')) log.info('Sending "%s" to NZBGet.', data.get('name'))
url = self.url % {'host': self.conf('host'), 'username': self.conf('username'), 'password': self.conf('password')} url = self.url % {'host': self.conf('host'), 'username': self.conf('username'), 'password': self.conf('password')}
nzb_name = ss('%s.nzb' % self.createNzbName(data, movie)) nzb_name = ss('%s.nzb' % self.createNzbName(data, media))
rpc = xmlrpclib.ServerProxy(url) rpc = xmlrpclib.ServerProxy(url)
try: try:
@@ -23,13 +23,13 @@ class NZBVortex(Downloader):
api_level = None api_level = None
session_id = None session_id = None
def download(self, data = None, movie = None, filedata = None): def download(self, data = None, media = None, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
# Send the nzb # Send the nzb
try: try:
nzb_filename = self.createFileName(data, filedata, movie) nzb_filename = self.createFileName(data, filedata, media)
self.call('nzb/add', params = {'file': (nzb_filename, filedata)}, multipart = True) self.call('nzb/add', params = {'file': (nzb_filename, filedata)}, multipart = True)
raw_statuses = self.call('nzb') raw_statuses = self.call('nzb')
@@ -12,8 +12,8 @@ class Pneumatic(Downloader):
protocol = ['nzb'] protocol = ['nzb']
strm_syntax = 'plugin://plugin.program.pneumatic/?mode=strm&type=add_file&nzb=%s&nzbname=%s' strm_syntax = 'plugin://plugin.program.pneumatic/?mode=strm&type=add_file&nzb=%s&nzbname=%s'
def download(self, data = None, movie = None, filedata = None): def download(self, data = None, media = None, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
directory = self.conf('directory') directory = self.conf('directory')
@@ -25,7 +25,7 @@ class Pneumatic(Downloader):
log.error('No nzb available!') log.error('No nzb available!')
return False return False
fullPath = os.path.join(directory, self.createFileName(data, filedata, movie)) fullPath = os.path.join(directory, self.createFileName(data, filedata, media))
try: try:
if not os.path.isfile(fullPath): if not os.path.isfile(fullPath):
@@ -33,7 +33,7 @@ class Pneumatic(Downloader):
with open(fullPath, 'wb') as f: with open(fullPath, 'wb') as f:
f.write(filedata) f.write(filedata)
nzb_name = self.createNzbName(data, movie) nzb_name = self.createNzbName(data, media)
strm_path = os.path.join(directory, nzb_name) strm_path = os.path.join(directory, nzb_name)
strm_file = open(strm_path + '.strm', 'wb') strm_file = open(strm_path + '.strm', 'wb')
@@ -77,7 +77,10 @@ class rTorrent(Downloader):
return True return True
def download(self, data, movie, filedata = None): def download(self, data = None, media = None, filedata = None):
if not media: media = {}
if not data: data = {}
log.debug('Sending "%s" to rTorrent.', (data.get('name'))) log.debug('Sending "%s" to rTorrent.', (data.get('name')))
if not self.connect(): if not self.connect():
+4 -4
View File
@@ -16,8 +16,8 @@ class Sabnzbd(Downloader):
protocol = ['nzb'] protocol = ['nzb']
def download(self, data = None, movie = None, filedata = None): def download(self, data = None, media = None, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
log.info('Sending "%s" to SABnzbd.', data.get('name')) log.info('Sending "%s" to SABnzbd.', data.get('name'))
@@ -25,7 +25,7 @@ class Sabnzbd(Downloader):
req_params = { req_params = {
'cat': self.conf('category'), 'cat': self.conf('category'),
'mode': 'addurl', 'mode': 'addurl',
'nzbname': self.createNzbName(data, movie), 'nzbname': self.createNzbName(data, media),
'priority': self.conf('priority'), 'priority': self.conf('priority'),
} }
@@ -36,7 +36,7 @@ class Sabnzbd(Downloader):
return False return False
# If it's a .rar, it adds the .rar extension, otherwise it stays .nzb # If it's a .rar, it adds the .rar extension, otherwise it stays .nzb
nzb_filename = self.createFileName(data, filedata, movie) nzb_filename = self.createFileName(data, filedata, media)
req_params['mode'] = 'addfile' req_params['mode'] = 'addfile'
else: else:
req_params['name'] = data.get('url') req_params['name'] = data.get('url')
@@ -13,8 +13,8 @@ class Synology(Downloader):
protocol = ['nzb', 'torrent', 'torrent_magnet'] protocol = ['nzb', 'torrent', 'torrent_magnet']
log = CPLog(__name__) log = CPLog(__name__)
def download(self, data = None, movie = None, filedata = None): def download(self, data = None, media = None, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
response = False response = False
@@ -31,7 +31,9 @@ class Transmission(Downloader):
return self.trpc return self.trpc
def download(self, data, movie, filedata = None): def download(self, data = None, media = None, filedata = None):
if not media: media = {}
if not data: data = {}
log.info('Sending "%s" (%s) to Transmission.', (data.get('name'), data.get('protocol'))) log.info('Sending "%s" (%s) to Transmission.', (data.get('name'), data.get('protocol')))
@@ -36,8 +36,8 @@ class uTorrent(Downloader):
return self.utorrent_api return self.utorrent_api
def download(self, data = None, movie = None, filedata = None): def download(self, data = None, media = None, filedata = None):
if not movie: movie = {} if not media: media = {}
if not data: data = {} if not data: data = {}
log.debug('Sending "%s" (%s) to uTorrent.', (data.get('name'), data.get('protocol'))) log.debug('Sending "%s" (%s) to uTorrent.', (data.get('name'), data.get('protocol')))
@@ -78,7 +78,7 @@ class uTorrent(Downloader):
info = bdecode(filedata)["info"] info = bdecode(filedata)["info"]
torrent_hash = sha1(benc(info)).hexdigest().upper() torrent_hash = sha1(benc(info)).hexdigest().upper()
torrent_filename = self.createFileName(data, filedata, movie) torrent_filename = self.createFileName(data, filedata, media)
if data.get('seed_ratio'): if data.get('seed_ratio'):
torrent_params['seed_override'] = 1 torrent_params['seed_override'] = 1
+13 -13
View File
@@ -115,11 +115,11 @@ class MediaPlugin(MediaBase):
def getView(self, id = None, **kwargs): def getView(self, id = None, **kwargs):
movie = self.get(id) if id else None media = self.get(id) if id else None
return { return {
'success': movie is not None, 'success': media is not None,
'movie': movie, 'media': media,
} }
def list(self, types = None, status = None, release_status = None, limit_offset = None, starts_with = None, search = None, order = None): def list(self, types = None, status = None, release_status = None, limit_offset = None, starts_with = None, search = None, order = None):
@@ -367,20 +367,20 @@ class MediaPlugin(MediaBase):
db = get_session() db = get_session()
movie = db.query(Media).filter_by(id = media_id).first() media = db.query(Media).filter_by(id = media_id).first()
if movie: if media:
deleted = False deleted = False
if delete_from == 'all': if delete_from == 'all':
db.delete(movie) db.delete(media)
db.commit() db.commit()
deleted = True deleted = True
else: else:
done_status = fireEvent('status.get', 'done', single = True) done_status = fireEvent('status.get', 'done', single = True)
total_releases = len(movie.releases) total_releases = len(media.releases)
total_deleted = 0 total_deleted = 0
new_movie_status = None new_movie_status = None
for release in movie.releases: for release in media.releases:
if delete_from in ['wanted', 'snatched', 'late']: if delete_from in ['wanted', 'snatched', 'late']:
if release.status_id != done_status.get('id'): if release.status_id != done_status.get('id'):
db.delete(release) db.delete(release)
@@ -394,19 +394,19 @@ class MediaPlugin(MediaBase):
db.commit() db.commit()
if total_releases == total_deleted: if total_releases == total_deleted:
db.delete(movie) db.delete(media)
db.commit() db.commit()
deleted = True deleted = True
elif new_movie_status: elif new_movie_status:
new_status = fireEvent('status.get', new_movie_status, single = True) new_status = fireEvent('status.get', new_movie_status, single = True)
movie.profile_id = None media.profile_id = None
movie.status_id = new_status.get('id') media.status_id = new_status.get('id')
db.commit() db.commit()
else: else:
fireEvent('media.restatus', movie.id, single = True) fireEvent('media.restatus', media.id, single = True)
if deleted: if deleted:
fireEvent('notify.frontend', type = 'movie.deleted', data = movie.to_dict()) fireEvent('notify.frontend', type = 'movie.deleted', data = media.to_dict())
db.expire_all() db.expire_all()
return True return True
+6 -6
View File
@@ -289,19 +289,19 @@ class Plugin(object):
Env.get('cache').set(cache_key_md5, value, timeout) Env.get('cache').set(cache_key_md5, value, timeout)
return value return value
def createNzbName(self, data, movie): def createNzbName(self, data, media):
tag = self.cpTag(movie) tag = self.cpTag(media)
return '%s%s' % (toSafeString(toUnicode(data.get('name'))[:127 - len(tag)]), tag) return '%s%s' % (toSafeString(toUnicode(data.get('name'))[:127 - len(tag)]), tag)
def createFileName(self, data, filedata, movie): def createFileName(self, data, filedata, media):
name = sp(os.path.join(self.createNzbName(data, movie))) name = sp(os.path.join(self.createNzbName(data, media)))
if data.get('protocol') == 'nzb' and 'DOCTYPE nzb' not in filedata and '</nzb>' not in filedata: if data.get('protocol') == 'nzb' and 'DOCTYPE nzb' not in filedata and '</nzb>' not in filedata:
return '%s.%s' % (name, 'rar') return '%s.%s' % (name, 'rar')
return '%s.%s' % (name, data.get('protocol')) return '%s.%s' % (name, data.get('protocol'))
def cpTag(self, movie): def cpTag(self, media):
if Env.setting('enabled', 'renamer'): if Env.setting('enabled', 'renamer'):
return '.cp(' + movie['library'].get('identifier') + ')' if movie['library'].get('identifier') else '' return '.cp(' + media['library'].get('identifier') + ')' if media['library'].get('identifier') else ''
return '' return ''
+7 -7
View File
@@ -100,14 +100,14 @@ class Release(Plugin):
done_status, snatched_status = fireEvent('status.get', ['done', 'snatched'], single = True) done_status, snatched_status = fireEvent('status.get', ['done', 'snatched'], single = True)
# Add movie # Add movie
movie = db.query(Media).filter_by(library_id = group['library'].get('id')).first() media = db.query(Media).filter_by(library_id = group['library'].get('id')).first()
if not movie: if not media:
movie = Media( media = Media(
library_id = group['library'].get('id'), library_id = group['library'].get('id'),
profile_id = 0, profile_id = 0,
status_id = done_status.get('id') status_id = done_status.get('id')
) )
db.add(movie) db.add(media)
db.commit() db.commit()
# Add Release # Add Release
@@ -120,7 +120,7 @@ class Release(Plugin):
if not rel: if not rel:
rel = Relea( rel = Relea(
identifier = identifier, identifier = identifier,
movie = movie, movie = media,
quality_id = group['meta_data']['quality'].get('id'), quality_id = group['meta_data']['quality'].get('id'),
status_id = done_status.get('id') status_id = done_status.get('id')
) )
@@ -142,7 +142,7 @@ class Release(Plugin):
except: except:
log.debug('Failed to attach "%s" to release: %s', (added_files, traceback.format_exc())) log.debug('Failed to attach "%s" to release: %s', (added_files, traceback.format_exc()))
fireEvent('media.restatus', movie.id) fireEvent('media.restatus', media.id)
return True return True
@@ -269,7 +269,7 @@ class Release(Plugin):
if filedata == 'try_next': if filedata == 'try_next':
return filedata return filedata
download_result = fireEvent('download', data = data, movie = media, manual = manual, filedata = filedata, single = True) download_result = fireEvent('download', data = data, media = media, manual = manual, filedata = filedata, single = True)
log.debug('Downloader result: %s', download_result) log.debug('Downloader result: %s', download_result)
if download_result: if download_result:
+5 -5
View File
@@ -264,14 +264,14 @@ class ResultList(list):
result_ids = None result_ids = None
provider = None provider = None
movie = None media = None
quality = None quality = None
def __init__(self, provider, movie, quality, **kwargs): def __init__(self, provider, media, quality, **kwargs):
self.result_ids = [] self.result_ids = []
self.provider = provider self.provider = provider
self.movie = movie self.media = media
self.quality = quality self.quality = quality
self.kwargs = kwargs self.kwargs = kwargs
@@ -285,13 +285,13 @@ class ResultList(list):
new_result = self.fillResult(result) new_result = self.fillResult(result)
is_correct = fireEvent('searcher.correct_release', new_result, self.movie, self.quality, is_correct = fireEvent('searcher.correct_release', new_result, self.media, self.quality,
imdb_results = self.kwargs.get('imdb_results', False), single = True) imdb_results = self.kwargs.get('imdb_results', False), single = True)
if is_correct and new_result['id'] not in self.result_ids: if is_correct and new_result['id'] not in self.result_ids:
is_correct_weight = float(is_correct) is_correct_weight = float(is_correct)
new_result['score'] += fireEvent('score.calculate', new_result, self.movie, single = True) new_result['score'] += fireEvent('score.calculate', new_result, self.media, single = True)
old_score = new_result['score'] old_score = new_result['score']
new_result['score'] = int(old_score * is_correct_weight) new_result['score'] = int(old_score * is_correct_weight)