[TV] Renamed "[media].update_info" events, renamed "updateInfo" functions
This commit is contained in:
@@ -32,7 +32,7 @@ class ShowBase(MediaBase):
|
||||
})
|
||||
|
||||
addEvent('show.add', self.add)
|
||||
addEvent('show.update_info', self.updateInfo)
|
||||
addEvent('show.update', self.update)
|
||||
addEvent('show.update_extras', self.updateExtras)
|
||||
|
||||
def addView(self, **kwargs):
|
||||
@@ -79,53 +79,6 @@ class ShowBase(MediaBase):
|
||||
except:
|
||||
log.error('Failed adding media: %s', traceback.format_exc())
|
||||
|
||||
def updateInfo(self, media_id = None, media = None, identifiers = None, info = None):
|
||||
"""
|
||||
Update movie information inside media['doc']['info']
|
||||
|
||||
@param media_id: document id
|
||||
@param identifiers: identifiers from multiple providers
|
||||
{
|
||||
'thetvdb': 123,
|
||||
'imdb': 'tt123123',
|
||||
..
|
||||
}
|
||||
@param extended: update with extended info (parses more info, actors, images from some info providers)
|
||||
@return: dict, with media
|
||||
"""
|
||||
|
||||
if not info: info = {}
|
||||
if not identifiers: identifiers = {}
|
||||
|
||||
db = get_db()
|
||||
|
||||
if self.shuttingDown():
|
||||
return
|
||||
|
||||
if media is None and media_id:
|
||||
media = db.get('id', media_id)
|
||||
else:
|
||||
log.error('missing "media" and "media_id" parameters, unable to update')
|
||||
return
|
||||
|
||||
if not info:
|
||||
info = fireEvent('show.info', identifiers = media.get('identifiers'), merge = True)
|
||||
|
||||
try:
|
||||
identifiers = info.pop('identifiers', {})
|
||||
seasons = info.pop('seasons', {})
|
||||
|
||||
self.update(media, info)
|
||||
self.updateEpisodes(media, seasons)
|
||||
self.updateExtras(media, info)
|
||||
|
||||
db.update(media)
|
||||
return media
|
||||
except:
|
||||
log.error('Failed update media: %s', traceback.format_exc())
|
||||
|
||||
return {}
|
||||
|
||||
def create(self, info, params = None, force_readd = True, search_after = True, update_after = True, notify_after = True, status = None):
|
||||
db = get_db()
|
||||
|
||||
@@ -153,7 +106,7 @@ class ShowBase(MediaBase):
|
||||
seasons = info.pop('seasons', {})
|
||||
|
||||
# Update media with info
|
||||
self.update(media, info)
|
||||
self.updateInfo(media, info)
|
||||
|
||||
new = False
|
||||
try:
|
||||
@@ -230,7 +183,54 @@ class ShowBase(MediaBase):
|
||||
|
||||
fireEvent('show.episode.add', season.get('_id'), episode_info, update_after = False, single = True)
|
||||
|
||||
def update(self, media, info):
|
||||
def update(self, media_id = None, media = None, identifiers = None, info = None):
|
||||
"""
|
||||
Update movie information inside media['doc']['info']
|
||||
|
||||
@param media_id: document id
|
||||
@param identifiers: identifiers from multiple providers
|
||||
{
|
||||
'thetvdb': 123,
|
||||
'imdb': 'tt123123',
|
||||
..
|
||||
}
|
||||
@param extended: update with extended info (parses more info, actors, images from some info providers)
|
||||
@return: dict, with media
|
||||
"""
|
||||
|
||||
if not info: info = {}
|
||||
if not identifiers: identifiers = {}
|
||||
|
||||
db = get_db()
|
||||
|
||||
if self.shuttingDown():
|
||||
return
|
||||
|
||||
if media is None and media_id:
|
||||
media = db.get('id', media_id)
|
||||
else:
|
||||
log.error('missing "media" and "media_id" parameters, unable to update')
|
||||
return
|
||||
|
||||
if not info:
|
||||
info = fireEvent('show.info', identifiers = media.get('identifiers'), merge = True)
|
||||
|
||||
try:
|
||||
identifiers = info.pop('identifiers', {})
|
||||
seasons = info.pop('seasons', {})
|
||||
|
||||
self.updateInfo(media, info)
|
||||
self.updateEpisodes(media, seasons)
|
||||
self.updateExtras(media, info)
|
||||
|
||||
db.update(media)
|
||||
return media
|
||||
except:
|
||||
log.error('Failed update media: %s', traceback.format_exc())
|
||||
|
||||
return {}
|
||||
|
||||
def updateInfo(self, media, info):
|
||||
db = get_db()
|
||||
|
||||
# Remove season info for later use (save separately)
|
||||
@@ -261,7 +261,7 @@ class ShowBase(MediaBase):
|
||||
continue
|
||||
|
||||
# Update season
|
||||
fireEvent('show.season.update_info', season['_id'], info = season_info, single = True)
|
||||
fireEvent('show.season.update', season['_id'], info = season_info, single = True)
|
||||
|
||||
# Update episodes
|
||||
for episode_num in episodes:
|
||||
@@ -276,11 +276,9 @@ class ShowBase(MediaBase):
|
||||
fireEvent('show.episode.add', season.get('_id'), episode_info, update_after = False, single = True)
|
||||
continue
|
||||
|
||||
fireEvent('show.episode.update_info', episode['_id'], info = episode_info, single = True)
|
||||
fireEvent('show.episode.update', episode['_id'], info = episode_info, single = True)
|
||||
|
||||
def updateExtras(self, media, info, store=False):
|
||||
log.debug('Updating extras for "%s"', media['_id'])
|
||||
|
||||
db = get_db()
|
||||
|
||||
# Update image file
|
||||
|
||||
@@ -14,7 +14,7 @@ class Episode(MediaBase):
|
||||
|
||||
def __init__(self):
|
||||
addEvent('show.episode.add', self.add)
|
||||
addEvent('show.episode.update_info', self.updateInfo)
|
||||
addEvent('show.episode.update', self.update)
|
||||
|
||||
def add(self, parent_id, info = None, update_after = True, status = None):
|
||||
if not info: info = {}
|
||||
@@ -50,11 +50,11 @@ class Episode(MediaBase):
|
||||
# Update library info
|
||||
if update_after is not False:
|
||||
handle = fireEventAsync if update_after is 'async' else fireEvent
|
||||
handle('show.season.update_info', episode.get('_id'), identifiers, info, single = True)
|
||||
handle('show.season.update', episode.get('_id'), identifiers, info, single = True)
|
||||
|
||||
return episode
|
||||
|
||||
def updateInfo(self, media_id = None, identifiers = None, info = None):
|
||||
def update(self, media_id = None, identifiers = None, info = None):
|
||||
if not info: info = {}
|
||||
|
||||
identifiers = info.get('identifiers') or identifiers
|
||||
|
||||
@@ -14,7 +14,7 @@ class Season(MediaBase):
|
||||
|
||||
def __init__(self):
|
||||
addEvent('show.season.add', self.add)
|
||||
addEvent('show.season.update_info', self.updateInfo)
|
||||
addEvent('show.season.update', self.update)
|
||||
|
||||
def add(self, parent_id, info = None, update_after = True, status = None):
|
||||
if not info: info = {}
|
||||
@@ -50,11 +50,11 @@ class Season(MediaBase):
|
||||
# Update library info
|
||||
if update_after is not False:
|
||||
handle = fireEventAsync if update_after is 'async' else fireEvent
|
||||
handle('show.season.update_info', season.get('_id'), identifiers, info, single = True)
|
||||
handle('show.season.update', season.get('_id'), identifiers, info, single = True)
|
||||
|
||||
return season
|
||||
|
||||
def updateInfo(self, media_id = None, identifiers = None, info = None):
|
||||
def update(self, media_id = None, identifiers = None, info = None):
|
||||
if not info: info = {}
|
||||
|
||||
identifiers = info.get('identifiers') or identifiers
|
||||
|
||||
Reference in New Issue
Block a user