From 2fd54901e7dcbca0d2ee9507112bc61bf722f52d Mon Sep 17 00:00:00 2001 From: Dean Gardiner Date: Fri, 6 Dec 2013 14:04:00 +1300 Subject: [PATCH] Added optional parameter 'include_identifier' to the 'searcher.get_search_title' event handler. --- couchpotato/core/media/movie/searcher/main.py | 2 +- couchpotato/core/media/show/searcher/main.py | 6 +++++- couchpotato/core/providers/base.py | 4 +++- couchpotato/core/providers/nzb/newznab/main.py | 4 ++-- couchpotato/core/providers/torrent/sceneaccess/main.py | 4 ++-- 5 files changed, 13 insertions(+), 7 deletions(-) diff --git a/couchpotato/core/media/movie/searcher/main.py b/couchpotato/core/media/movie/searcher/main.py index 744d6ce6..1fffb23f 100644 --- a/couchpotato/core/media/movie/searcher/main.py +++ b/couchpotato/core/media/movie/searcher/main.py @@ -343,7 +343,7 @@ class MovieSearcher(SearcherBase, MovieTypeBase): log.error('Failed searching for next release: %s', traceback.format_exc()) return False - def getSearchTitle(self, library): + def getSearchTitle(self, library, include_identifier = False): if library['type'] == 'movie': return getTitle(library) diff --git a/couchpotato/core/media/show/searcher/main.py b/couchpotato/core/media/show/searcher/main.py index 52406b9f..e0527ef1 100644 --- a/couchpotato/core/media/show/searcher/main.py +++ b/couchpotato/core/media/show/searcher/main.py @@ -133,7 +133,7 @@ class ShowSearcher(Plugin): return ret - def getSearchTitle(self, library): + def getSearchTitle(self, library, include_identifier = False): if library['type'] not in ['show', 'season', 'episode']: return @@ -172,6 +172,10 @@ class ShowSearcher(Plugin): else: return None + # Return show title if we aren't including the identifier + if not include_identifier: + return title + # Add the identifier to search title identifier = fireEvent('library.identifier', library, single = True) diff --git a/couchpotato/core/providers/base.py b/couchpotato/core/providers/base.py index 9f72df8d..6ef59380 100644 --- a/couchpotato/core/providers/base.py +++ b/couchpotato/core/providers/base.py @@ -207,7 +207,9 @@ class YarrProvider(Provider): self._search(media, quality, results) # Search possible titles else: - for title in possibleTitles(fireEvent('searcher.get_search_title', media['library'], single = True)): + media_title = fireEvent('searcher.get_search_title', media['library'], include_identifier = True, single = True) + + for title in possibleTitles(media_title): self._searchOnTitle(title, media, quality, results) return results diff --git a/couchpotato/core/providers/nzb/newznab/main.py b/couchpotato/core/providers/nzb/newznab/main.py index 565689b1..64e999af 100644 --- a/couchpotato/core/providers/nzb/newznab/main.py +++ b/couchpotato/core/providers/nzb/newznab/main.py @@ -191,7 +191,7 @@ class Movie(MovieProvider, Base): class Season(SeasonProvider, Base): def buildUrl(self, media, api_key): - search_title = fireEvent('searcher.get_search_title', media['library']['root_library']) + search_title = fireEvent('searcher.get_search_title', media['library']) identifier = fireEvent('library.identifier', media['library']) query = tryUrlencode({ @@ -206,7 +206,7 @@ class Season(SeasonProvider, Base): class Episode(EpisodeProvider, Base): def buildUrl(self, media, api_key): - search_title = fireEvent('searcher.get_search_title', media['library']['root_library']) + search_title = fireEvent('searcher.get_search_title', media['library']) identifier = fireEvent('library.identifier', media['library']) query = tryUrlencode({ diff --git a/couchpotato/core/providers/torrent/sceneaccess/main.py b/couchpotato/core/providers/torrent/sceneaccess/main.py index 5db25bae..073e2c6b 100644 --- a/couchpotato/core/providers/torrent/sceneaccess/main.py +++ b/couchpotato/core/providers/torrent/sceneaccess/main.py @@ -122,7 +122,7 @@ class Season(SeasonProvider, Base): ] def buildUrl(self, media, quality): - return self._buildUrl(fireEvent('searcher.get_search_title', media['library']['root_library']), quality['identifier']) + return self._buildUrl(fireEvent('searcher.get_search_title', media['library']), quality['identifier']) class Episode(EpisodeProvider, Base): @@ -132,4 +132,4 @@ class Episode(EpisodeProvider, Base): ] def buildUrl(self, media, quality): - return self._buildUrl(fireEvent('searcher.get_search_title', media['library']['root_library']), quality['identifier']) \ No newline at end of file + return self._buildUrl(fireEvent('searcher.get_search_title', media['library']), quality['identifier']) \ No newline at end of file