Fix possible dashboard error, add "types" parameter to "media.with_status", limit suggestions to movies (for now)

This commit is contained in:
Dean Gardiner
2014-07-28 20:33:50 +12:00
parent 72cb53bcc0
commit fe2e508e4c
3 changed files with 10 additions and 3 deletions
+8 -1
View File
@@ -160,10 +160,13 @@ class MediaPlugin(MediaBase):
'media': media,
}
def withStatus(self, status, with_doc = True):
def withStatus(self, status, types = None, with_doc = True):
db = get_db()
if types and not isinstance(types, (list, tuple)):
types = [types]
status = list(status if isinstance(status, (list, tuple)) else [status])
for s in status:
@@ -171,6 +174,10 @@ class MediaPlugin(MediaBase):
if with_doc:
try:
doc = db.get('id', ms['_id'])
if types and doc.get('type') not in types:
continue
yield doc
except RecordNotFound:
log.debug('Record not found, skipping: %s', ms['_id'])
+1 -1
View File
@@ -27,7 +27,7 @@ class Suggestion(Plugin):
else:
if not movies or len(movies) == 0:
active_movies = fireEvent('media.with_status', ['active', 'done'], single = True)
active_movies = fireEvent('media.with_status', ['active', 'done'], 'movie', single = True)
movies = [getIdentifier(x) for x in active_movies]
if not ignored or len(ignored) == 0:
+1 -1
View File
@@ -62,7 +62,7 @@ class Dashboard(Plugin):
for media_id in active_ids:
media = db.get('id', media_id)
pp = profile_pre.get(media['profile_id'])
pp = profile_pre.get(media.get('profile_id'))
if not pp: continue
eta = media['info'].get('release_date', {}) or {}