From 63e58a2193344e448b883796342a1a74d153a294 Mon Sep 17 00:00:00 2001 From: newt-sc <47229722+newt-sc@users.noreply.github.com> Date: Tue, 15 Oct 2024 22:35:55 +0300 Subject: [PATCH] release: v3.18.1 --- CHANGELOG.md | 3 +++ a4kSubtitles/api.py | 12 ++++++++---- a4kSubtitles/lib/video.py | 10 +++++++++- addon.xml | 5 ++++- packages/addons.xml | 5 ++++- packages/addons.xml.crc | 2 +- tests/test_suite.py | 2 +- 7 files changed, 30 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7cd21cd..5441c23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,6 @@ +* [v3.18.1](https://github.com/newt-sc/a4kSubtitles/releases/tag/service.subtitles.a4ksubtitles%2Fservice.subtitles.a4ksubtitles-3.18.1): + * Fix IMDB ID not found + * [v3.18.0](https://github.com/newt-sc/a4kSubtitles/releases/tag/service.subtitles.a4ksubtitles%2Fservice.subtitles.a4ksubtitles-3.18.0): * Use the newer InfoTagVideo KODI API (contributed by @kiamvdd) diff --git a/a4kSubtitles/api.py b/a4kSubtitles/api.py index 8b492d3..7f0c5fc 100644 --- a/a4kSubtitles/api.py +++ b/a4kSubtitles/api.py @@ -24,7 +24,7 @@ def __init__(self, mocks=None): os.environ[api_mode_env_name] = json.dumps(api_mode) self.core = importlib.import_module('a4kSubtitles.core') - def __mock_video_meta(self, meta={}): + def __mock_video_meta(self, meta): def get_info_label(label): if label == 'System.BuildVersionCode': return meta.get('version', '19.1.0') @@ -78,13 +78,17 @@ def restore(): self.core.kodi.addon.getSetting = default return restore - def search(self, params, settings={}, video_meta={}): + def search(self, params, settings=None, video_meta=None): restore_settings = None restore_video_meta = None try: - restore_settings = self.mock_settings(settings) - restore_video_meta = self.__mock_video_meta(video_meta) + if settings is not None: + restore_settings = self.mock_settings(settings) + + if video_meta is not None: + restore_video_meta = self.__mock_video_meta(video_meta) + return self.core.search(self.core, params) finally: if restore_settings: diff --git a/a4kSubtitles/lib/video.py b/a4kSubtitles/lib/video.py index ec6c51d..bc0c1bf 100644 --- a/a4kSubtitles/lib/video.py +++ b/a4kSubtitles/lib/video.py @@ -296,6 +296,7 @@ def __update_info_from_imdb(core, meta, pagination_token=''): def __get_basic_info(core): meta = utils.DictAsObject({}) + filename_and_path = '' if core.kodi.get_version_major() >= 20: # The InfoTagVideo API was added in kodi v20 video_info = xbmc.Player().getVideoInfoTag() @@ -311,17 +312,24 @@ def __get_basic_info(core): meta.imdb_id = video_info.getUniqueID('imdb') filename_and_path = video_info.getFilenameAndPath() - else: + + if meta.year == '': meta.year = xbmc.getInfoLabel('VideoPlayer.Year') + if meta.season == '': meta.season = xbmc.getInfoLabel('VideoPlayer.Season') + if meta.episode == '': meta.episode = xbmc.getInfoLabel('VideoPlayer.Episode') + if meta.tvshow == '': meta.tvshow = xbmc.getInfoLabel('VideoPlayer.TVShowTitle') + if meta.title == '': meta.title = xbmc.getInfoLabel('VideoPlayer.OriginalTitle') if meta.title == '': meta.title = xbmc.getInfoLabel('VideoPlayer.Title') + if meta.imdb_id == '': meta.imdb_id = xbmc.getInfoLabel('VideoPlayer.IMDBNumber') + if filename_and_path == '': filename_and_path = xbmc.getInfoLabel('Player.FilenameAndPath') meta.tvshow_year = '' diff --git a/addon.xml b/addon.xml index 027e092..29fa736 100644 --- a/addon.xml +++ b/addon.xml @@ -1,7 +1,7 @@ @@ -27,6 +27,9 @@ Supports: OpenSubtitles, BSPlayer, Podnadpisi.NET, SubDL, Addic7ed screenshot-03.png +[v3.18.1]: + * Fix IMDB ID not found + [v3.18.0]: * Use the newer InfoTagVideo KODI API (contributed by @kiamvdd) diff --git a/packages/addons.xml b/packages/addons.xml index f54da3d..a61ed10 100644 --- a/packages/addons.xml +++ b/packages/addons.xml @@ -4,7 +4,7 @@ @@ -30,6 +30,9 @@ Supports: OpenSubtitles, BSPlayer, Podnadpisi.NET, SubDL, Addic7ed screenshot-03.png +[v3.18.1]: + * Fix IMDB ID not found + [v3.18.0]: * Use the newer InfoTagVideo KODI API (contributed by @kiamvdd) diff --git a/packages/addons.xml.crc b/packages/addons.xml.crc index 767ff28..d870568 100644 --- a/packages/addons.xml.crc +++ b/packages/addons.xml.crc @@ -1 +1 @@ -988edaac8ac1382f3e7d9936d7639aed9cb23d71 \ No newline at end of file +f25ab410db7f2fa919a10fba60723f58f8742576 \ No newline at end of file diff --git a/tests/test_suite.py b/tests/test_suite.py index 460341d..40784ff 100644 --- a/tests/test_suite.py +++ b/tests/test_suite.py @@ -174,7 +174,7 @@ def test_search_missing_imdb_id(): 'languages': 'English', 'preferredlanguage': '', } - a4ksubtitles_api.search(params) + a4ksubtitles_api.search(params, {}, {}) log_error_spy.restore() log_error_spy.called_with('missing imdb id!')