Browse Source

Merge branch 'tv_metadata' into tv

pull/3730/merge
Dean Gardiner 11 years ago
parent
commit
a721a40d5e
  1. 9
      couchpotato/core/media/__init__.py
  2. 32
      couchpotato/core/media/movie/_base/main.py
  3. 5
      couchpotato/core/media/show/_base/main.py

9
couchpotato/core/media/__init__.py

@ -65,10 +65,13 @@ class MediaBase(Plugin):
return def_title or 'UNKNOWN'
def getPoster(self, image_urls, existing_files):
image_type = 'poster'
def getPoster(self, media, image_urls):
if 'files' not in media:
media['files'] = {}
existing_files = media['files']
# Remove non-existing files
image_type = 'poster'
file_type = 'image_%s' % image_type
# Make existing unique

32
couchpotato/core/media/movie/_base/main.py

@ -301,37 +301,11 @@ class MovieBase(MovieTypeBase):
media['title'] = def_title
# Files
images = info.get('images', [])
media['files'] = media.get('files', {})
for image_type in ['poster']:
# Remove non-existing files
file_type = 'image_%s' % image_type
existing_files = list(set(media['files'].get(file_type, [])))
for ef in media['files'].get(file_type, []):
if not os.path.isfile(ef):
existing_files.remove(ef)
# Replace new files list
media['files'][file_type] = existing_files
if len(existing_files) == 0:
del media['files'][file_type]
# Loop over type
for image in images.get(image_type, []):
if not isinstance(image, (str, unicode)):
continue
if file_type not in media['files'] or len(media['files'].get(file_type, [])) == 0:
file_path = fireEvent('file.download', url = image, single = True)
if file_path:
media['files'][file_type] = [file_path]
break
else:
break
image_urls = info.get('images', [])
db.update(media)
self.getPoster(media, image_urls)
db.update(media)
return media
except:
log.error('Failed update media: %s', traceback.format_exc())

5
couchpotato/core/media/show/_base/main.py

@ -242,11 +242,10 @@ class ShowBase(MediaBase):
# Update image file
image_urls = info.get('images', [])
existing_files = media.get('files', {})
self.getPoster(image_urls, existing_files)
db.update(media)
self.getPoster(media, image_urls)
db.update(media)
return media
except:
log.error('Failed update media: %s', traceback.format_exc())

Loading…
Cancel
Save