diff --git a/core/support.py b/core/support.py
index fd3d2e82..59d4dde7 100755
--- a/core/support.py
+++ b/core/support.py
@@ -536,7 +536,7 @@ def scrape(func):
if function == 'episodios': autorenumber.start(itemlist, item)
else: autorenumber.start(itemlist)
- if action != 'play' and 'patronMenu' not in args and not disabletmdb and inspect.stack()[1][3] not in ['add_tvshow'] or (function in ['episodios'] and config.get_setting('episode_info')): # and function != 'episodios' and item.contentType in ['movie', 'tvshow', 'episode', 'undefined']
+ if action != 'play' and 'patronMenu' not in args and not disabletmdb and inspect.stack()[1][3] not in ['add_tvshow'] and function != 'episodios' or (function in ['episodios'] and config.get_setting('episode_info')): # and function != 'episodios' and item.contentType in ['movie', 'tvshow', 'episode', 'undefined']
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
if not group and not args.get('groupExplode') and ((pagination and len(matches) <= pag * pagination) or not pagination): # next page with pagination
diff --git a/core/tmdb.py b/core/tmdb.py
index fa716e60..1028de5b 100644
--- a/core/tmdb.py
+++ b/core/tmdb.py
@@ -17,7 +17,7 @@ from future.builtins import object
import ast, copy, re, time
-from core import filetools, httptools, jsontools, scrapertools, support
+from core import filetools, httptools, jsontools, scrapertools
from core.item import InfoLabels
from platformcode import config, logger, platformtools
import threading
@@ -246,6 +246,7 @@ def set_infoLabels_item(item, seekTmdb=True, search_language=def_lang):
global otmdb_global
def read_data(otmdb_aux):
+ # item.infoLabels = otmdb_aux.get_infoLabels(item.infoLabels)
infoLabels = otmdb_aux.get_infoLabels(item.infoLabels)
if not infoLabels['plot']: infoLabels['plot'] = otmdb_aux.get_plot('en')
item.infoLabels = infoLabels
@@ -404,7 +405,7 @@ def set_infoLabels_item(item, seekTmdb=True, search_language=def_lang):
# carry out another search to expand the information
otmdb = Tmdb(id_Tmdb=otmdb.result.get("id"), search_type=search_type,
search_language=search_language)
- if otmdb:
+ if otmdb and config.get_setting('tmdb_plus_info'):
info = otmdb.get_infoLabels(item.infoLabels)
otmdb = Tmdb(id_Tmdb=info['tmdb_id'], search_type=search_type,
search_language=search_language)
@@ -837,7 +838,7 @@ class Tmdb(object):
self.search_text = re.sub('\[\\\?(B|I|COLOR)\s?[^\]]*\]', '', self.searched_text).strip()
self.search_type = kwargs.get('search_type', '')
self.search_language = kwargs.get('search_language', def_lang)
- self.fallback_language = kwargs.get('search_language', 'en')
+ self.fallback_language = 'en'
# self.search_include_adult = kwargs.get('include_adult', False)
self.search_year = kwargs.get('year', '')
self.search_filter = kwargs.get('filtro', {})
@@ -937,7 +938,7 @@ class Tmdb(object):
if self.search_id:
if source == "tmdb":
url = ('{}/{}/{}?api_key={}&language={}&append_to_response=images,videos,external_ids,credits&include_image_language={},en,null'.format(host, self.search_type, self.search_id, api, self.search_language, self.search_language))
- searching = "id_Tmdb: " + self.search_id
+ searching = "id_Tmdb: {}".format(self.search_id)
else:
url = ('{}/find/{}?external_source={}&api_key={}8&language={}'.format(host, self.search_id, source, api, self.search_language))
searching = "{}: {}".format(source.capitalize(), self.search_id)
@@ -957,6 +958,13 @@ class Tmdb(object):
else:
result = result['tv_episode_results'][0]
+ Mpaaurl = '{}/{}/{}/{}?api_key={}'.format(host, self.search_type, result['id'], 'release_dates' if self.search_type == 'movie' else 'content_ratings', api)
+ Mpaas = self.get_json(Mpaaurl).get('results',[])
+ for m in Mpaas:
+ if m.get('iso_3166_1','').lower() == 'us':
+ result['mpaa'] = m.get('rating', m.get('release_dates', [{}])[0].get('certification'))
+ break
+
self.results = [result]
self.total_results = 1
self.total_pages = 1
@@ -1333,19 +1341,14 @@ class Tmdb(object):
# http://api.themoviedb.org/3/tv/1407/season/1?api_key=a1ab8b8669da03637a4b98fa39c39228&language=es&
# append_to_response=credits
url = "{}/tv/{}/season/{}?api_key={}&language={}&append_to_response=videos,images,credits,external_ids&include_image_language={},en,null".format(host, self.result["id"], seasonNumber, api, search_language, search_language)
- fallbackUrl = "{}/tv/{}/season/{}?api_key={}&language=en&append_to_response=videos,images,credits&include_image_language={},en,null".format(host, self.result["id"], seasonNumber, api, search_language)
+ # fallbackUrl = "{}/tv/{}/season/{}?api_key={}&language=en&append_to_response=videos,images,credits&include_image_language={},en,null".format(host, self.result["id"], seasonNumber, api, search_language)
logger.debug('TMDB URL', url)
searching = "id_Tmdb: " + str(self.result["id"]) + " season: " + str(seasonNumber) + "\nURL: " + url
logger.debug("[Tmdb.py] Searching " + searching)
# from core.support import dbg;dbg()
try:
- info = self.get_json(url)
- if not language:
- fallbackInfo = self.get_json(fallbackUrl)
- self.season[seasonNumber] = parse_fallback_info(info, fallbackInfo)
- else:
- self.season[seasonNumber] = self.get_json(url)
+ self.season[seasonNumber] = self.get_json(url)
if not isinstance(self.season[seasonNumber], dict):
self.season[seasonNumber] = ast.literal_eval(self.season[seasonNumber].decode('utf-8'))
@@ -1372,16 +1375,19 @@ class Tmdb(object):
_id = collection.get('id')
if _id:
url = '{}/collection/{}?api_key={}&language={}&append_to_response=images'.format(host, _id, api, self.search_language)
- fallbackUrl = '{}/collection/{}?api_key={}&language=en&append_to_response=images'.format(host, _id, api)
+ tanslationurl = '{}/collection/{}/translations?api_key={}'.format(host, _id, api)
info = self.get_json(url)
- fallbackInfo = self.get_json(fallbackUrl)
- ret['set'] = info.get('name') if info.get('name') else fallbackInfo.get('name')
- ret['setoverview'] = info.get('overview') if info.get('overview') else fallbackInfo.get('overview')
- posters = ['https://image.tmdb.org/t/p/original' + (info.get('poster_path') if info.get('poster_path') else fallbackInfo.get('poster_path'))]
- fanarts = ['https://image.tmdb.org/t/p/original' + (info.get('backdrop_path') if info.get('backdrop_path') else fallbackInfo.get('backdrop_path'))]
- for image in info['images']['posters'] + fallbackInfo['images']['posters']:
+ for t in self.get_json(tanslationurl).get('translations'):
+ if t.get('iso_639_1') == self.fallback_language:
+ translation = t.get('data',{})
+ break
+ ret['set'] = info.get('name') if info.get('name') else translation.get('name')
+ ret['setoverview'] = info.get('overview') if info.get('overview') else translation.get('overview')
+ posters = ['https://image.tmdb.org/t/p/original' + info.get('poster_path')] if info.get('poster_path') else []
+ fanarts = ['https://image.tmdb.org/t/p/original' + info.get('backdrop_path')] if info.get('backdrop_path') else []
+ for image in info['images']['posters']:
posters.append('https://image.tmdb.org/t/p/original' + image['file_path'])
- for image in info['images']['backdrops'] + fallbackInfo['images']['backdrops']:
+ for image in info['images']['backdrops']:
fanarts.append('https://image.tmdb.org/t/p/original' + image['file_path'])
ret['setposters'] = posters
ret['setfanarts'] = fanarts
@@ -1633,11 +1639,11 @@ class Tmdb(object):
elif k == 'release_date':
ret_infoLabels['year'] = int(v[:4])
- ret_infoLabels['premiered'] = v.split("-")[2] + "/" + v.split("-")[1] + "/" + v.split("-")[0]
+ ret_infoLabels['premiered'] = v
elif k == 'first_air_date':
ret_infoLabels['year'] = int(v[:4])
- ret_infoLabels['aired'] = v.split("-")[2] + "/" + v.split("-")[1] + "/" + v.split("-")[0]
+ ret_infoLabels['aired'] = v
ret_infoLabels['premiered'] = ret_infoLabels['aired']
elif k == 'original_title' or k == 'original_name':
@@ -1704,6 +1710,7 @@ class Tmdb(object):
ret_infoLabels[k] = v
elif k == 'production_countries' or k == 'origin_country':
+ # support.dbg()
if isinstance(v, str):
l_country = list(set(l_country + v.split(',')))
@@ -1713,9 +1720,9 @@ class Tmdb(object):
elif isinstance(v[0], dict):
# {'iso_3166_1': 'FR', 'name':'France'}
for i in v:
- if 'iso_3166_1' in i:
- pais = Tmdb.dic_country.get(i['iso_3166_1'], i['iso_3166_1'])
- l_country = list(set(l_country + [pais]))
+ if 'name' in i:
+ # pais = Tmdb.dic_country.get(i['iso_3166_1'], i['iso_3166_1'])
+ l_country = list(set(l_country + [i['name']]))
elif k == 'credits_crew' or k == 'episode_crew' or k == 'season_crew':
for crew in v:
@@ -1737,13 +1744,6 @@ class Tmdb(object):
# logger.debug("Atributos no añadidos: " + k +'= '+ str(v))
pass
- Mpaaurl = '{}/{}/{}/content_ratings?api_key={}'.format(host, self.search_type, ret_infoLabels['tmdb_id'], api)
- Mpaas = self.get_json(Mpaaurl).get('results',[])
- for m in Mpaas:
- if m.get('iso_3166_1','').lower() == 'us':
- ret_infoLabels['Mpaa'] = m['rating']
- break
-
# Sort the lists and convert them to str if necessary
if l_castandrole:
ret_infoLabels['castandrole'] = sorted(l_castandrole, key=lambda tup: tup[0])
diff --git a/resources/language/resource.language.en_gb/strings.po b/resources/language/resource.language.en_gb/strings.po
index ab89450a..1f5c4554 100644
--- a/resources/language/resource.language.en_gb/strings.po
+++ b/resources/language/resource.language.en_gb/strings.po
@@ -1373,7 +1373,7 @@ msgid "More than 17 years old"
msgstr ""
msgctxt "#60292"
-msgid "Searching for TV show information"
+msgid "Search for information on episodes"
msgstr ""
msgctxt "#60293"
diff --git a/resources/language/resource.language.it_it/strings.po b/resources/language/resource.language.it_it/strings.po
index 6497826c..9edf874c 100644
--- a/resources/language/resource.language.it_it/strings.po
+++ b/resources/language/resource.language.it_it/strings.po
@@ -1372,8 +1372,8 @@ msgid "More than 17 years old"
msgstr "Più di 17 anni"
msgctxt "#60292"
-msgid "Searching for TV show information"
-msgstr "Ricerca informazioni sulla serie TV"
+msgid "Search for information on episodes"
+msgstr "Cerca informazioni sugli episodi"
msgctxt "#60293"
msgid "Please wait..."
diff --git a/resources/settings.xml b/resources/settings.xml
index b13e0096..d28c4258 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -12,7 +12,6 @@
-
@@ -93,6 +92,7 @@
+