Created
January 25, 2020 17:01
-
-
Save henryjfry/4856bc5e7768974092130bd6f9ef179d to your computer and use it in GitHub Desktop.
TMDBHelper - Artwork + List Sort - ~/.kodi/addons/plugin.video.themoviedb.helper/resources/lib/listitem.py
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class ListItem(object): | |
def __init__(self, label=None, label2=None, dbtype=None, library=None, tmdb_id=None, imdb_id=None, dbid=None, tvdb_id=None, | |
cast=None, infolabels=None, infoproperties=None, poster=None, thumb=None, icon=None, fanart=None, nextpage=None, | |
streamdetails=None, clearlogo=None, clearart=None, banner=None, landscape=None, mixed_type=None, url=None, is_folder=True): | |
self.addon = xbmcaddon.Addon() | |
self.addonpath = self.addon.getAddonInfo('path') | |
self.select_action = self.addon.getSettingInt('select_action') | |
self.label = label or 'N/A' | |
self.label2 = label2 or '' | |
self.library = library or '' # <content target= video, music, pictures, none> | |
self.tmdb_id = tmdb_id or '' # ListItem.Property(tmdb_id) | |
self.imdb_id = imdb_id or '' # IMDb ID for item | |
self.tvdb_id = tvdb_id or '' # IMDb ID for item | |
self.poster, self.thumb = poster, thumb | |
self.clearlogo, self.clearart, self.banner, self.landscape = clearlogo, clearart, banner, landscape | |
self.url = url or {} | |
self.mixed_type = mixed_type or '' | |
self.streamdetails = streamdetails or {} | |
self.icon = icon or '{0}/resources/poster.png'.format(self.addonpath) | |
self.fanart = fanart or '{0}/fanart.jpg'.format(self.addonpath) | |
self.cast = cast or [] # Cast list | |
self.is_folder = is_folder | |
self.infolabels = infolabels or {} # ListItem.Foobar | |
self.infoproperties = infoproperties or {} # ListItem.Property(Foobar) | |
self.dbid = dbid | |
self.nextpage = nextpage | |
def __getitem__(self, item): | |
return getattr(self, item) | |
######## | |
def get_extra_artwork(self, tmdb=None, fanarttv=None): | |
if not fanarttv: | |
return | |
artwork = None | |
if self.infolabels.get('mediatype') == 'tvshow' and (self.tvdb_id or tmdb): | |
self.tvdb_id = self.tvdb_id or tmdb.get_item_externalid('tv', self.tmdb_id, 'tvdb_id') | |
artwork = fanarttv.get_tvshow_allart_lc(self.tvdb_id) | |
elif self.infolabels.get('mediatype') == 'movie': | |
artwork = fanarttv.get_movie_allart_lc(self.tmdb_id) | |
if artwork: | |
self.discart = self.discart or artwork.get('discart') | |
self.clearart = self.clearart or artwork.get('clearart') | |
self.clearlogo = self.clearlogo or artwork.get('clearlogo') | |
self.landscape = self.landscape or artwork.get('landscape') | |
self.banner = self.banner or artwork.get('banner') | |
self.fanart = self.fanart or artwork.get('fanart') | |
self.poster = self.poster or artwork.get('poster') |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment