diff --git a/plexpy/__init__.py b/plexpy/__init__.py index 981818bb..07acbaa9 100644 --- a/plexpy/__init__.py +++ b/plexpy/__init__.py @@ -1943,6 +1943,19 @@ def dbcheck(): 'ALTER TABLE library_sections ADD COLUMN is_active INTEGER DEFAULT 1' ) + # Upgrade library_sections table from earlier versions + try: + result = c_db.execute('SELECT thumb, art FROM library_sections WHERE section_id = ?', + [common.LIVE_TV_SECTION_ID]).fetchone() + if result and (not result[0] or not result[1]): + logger.debug("Altering database. Updating database table library_sections.") + c_db.execute('UPDATE library_sections SET thumb = ?, art =? WHERE section_id = ?', + [common.DEFAULT_LIVE_TV_THUMB, + common.DEFAULT_LIVE_TV_ART_FULL, + common.LIVE_TV_SECTION_ID]) + except sqlite3.OperationalError: + pass + # Upgrade users table from earlier versions (remove UNIQUE constraint on username) try: result = c_db.execute('SELECT SQL FROM sqlite_master WHERE type="table" AND name="users"').fetchone() diff --git a/plexpy/common.py b/plexpy/common.py index e8ee7d86..c1f37252 100644 --- a/plexpy/common.py +++ b/plexpy/common.py @@ -48,6 +48,7 @@ DEFAULT_ART = "interfaces/default/images/art.png" DEFAULT_LIVE_TV_POSTER_THUMB = "interfaces/default/images/poster-live.png" DEFAULT_LIVE_TV_ART = "interfaces/default/images/art-live.png" DEFAULT_LIVE_TV_ART_FULL = "interfaces/default/images/art-live-full.png" +DEFAULT_LIVE_TV_THUMB = "interfaces/default/images/libraries/live.png" ONLINE_POSTER_THUMB = "https://tautulli.com/images/poster.png" ONLINE_COVER_THUMB = "https://tautulli.com/images/cover.png" diff --git a/plexpy/libraries.py b/plexpy/libraries.py index 064cc2c2..d70473b3 100644 --- a/plexpy/libraries.py +++ b/plexpy/libraries.py @@ -126,6 +126,8 @@ def add_live_tv_library(refresh=False): 'section_id': common.LIVE_TV_SECTION_ID, 'section_name': common.LIVE_TV_SECTION_NAME, 'section_type': 'live', + 'thumb': common.DEFAULT_LIVE_TV_THUMB, + 'art': common.DEFAULT_LIVE_TV_ART_FULL, 'is_active': 1 } diff --git a/plexpy/webserve.py b/plexpy/webserve.py index 263c3242..98450e28 100644 --- a/plexpy/webserve.py +++ b/plexpy/webserve.py @@ -4439,6 +4439,10 @@ class WebInterface(object): None ``` """ + if isinstance(img, str) and img.startswith('interfaces/default/images'): + fp = os.path.join(plexpy.PROG_DIR, 'data', img) + return serve_file(path=fp, content_type='image/png') + if not img and not rating_key: if fallback in common.DEFAULT_IMAGES: fbi = common.DEFAULT_IMAGES[fallback]