diff --git a/platformcode/launcher.py b/platformcode/launcher.py
index 498bdd73..3cccb0cd 100644
--- a/platformcode/launcher.py
+++ b/platformcode/launcher.py
@@ -447,14 +447,15 @@ def play_from_library(item):
import xbmcgui
import xbmcplugin
import xbmc
- from time import sleep
+ from time import sleep, time
from core import jsontools
autoplay_node = jsontools.get_node_from_file('autoplay', 'AUTOPLAY')
channel_node = autoplay_node.get(item.channel, {})
settings_node = channel_node.get('settings', {})
- AP = config.get_setting('autoplay') or settings_node['active']
+ AP = config.get_setting('autoplay') or settings_node.has_key('active')
APS = config.get_setting('autoplay_server_list')
+ NE = config.get_setting('autoplay_next')
# Intentamos reproducir una imagen (esto no hace nada y ademas no da error)
xbmcplugin.setResolvedUrl(int(sys.argv[1]), True,
@@ -478,7 +479,35 @@ def play_from_library(item):
if xbmc.getCondVisibility('Window.IsMedia') and not window_type == 1:
# Ventana convencional
xbmc.executebuiltin("Container.Update(" + sys.argv[0] + "?" + item.tourl() + ")")
- if AP and APS:
+ if AP and NE:
+ while not platformtools.is_playing():
+ pass
+ while platformtools.is_playing():
+ pass
+ sleep(0.5)
+ counter = time()
+ play_next = False
+ if platformtools.dialog_yesno('Prossimo Episodio?', '', nolabel="Sì", yeslabel="No", autoclose=5000) == 0:
+ ep = '%dx%02d' % (season, episode)
+ next_ep = '%dx%02d' % (season, episode+1)
+ next_season = '%dx%02d' % (season+1, 1)
+ next_ep_path = item.strm_path.replace(ep,next_ep)
+ next_season_path = item.strm_path.replace(ep,next_ep)
+ if os.path.isfile(path+next_ep_path):
+ item.contentEpisodeNumber = item.infoLabels['episode'] = episode+1
+ item.contentTitle = item.infoLabels['title'] = next_ep
+ item.strm_path = next_ep_path
+ logger.info(str(item))
+ play_from_library(item)
+ elif os.path.isfile(item.strm_path.replace(path+'%dx%2d' % (season, episode),'%dx%2d' % (season+1, 1))):
+ item.contentSeason = item.infoLabels['season'] = season+1
+ item.contentEpisodeNumber = item.infoLabels['episode'] = 1
+ item.contentTitle = item.infoLabels['title'] = next_season
+ item.strm_path = next_season_path
+ logger.info(str(item))
+ play_from_library(item)
+
+ elif AP and APS:
while not platformtools.is_playing():
pass
while platformtools.is_playing():
@@ -486,7 +515,6 @@ def play_from_library(item):
sleep(0.5)
xbmc.executebuiltin('Action(Back)')
-
else:
# Ventana emergente
from specials import videolibrary
diff --git a/resources/settings.xml b/resources/settings.xml
index 5b2adf9e..a91e3494 100644
--- a/resources/settings.xml
+++ b/resources/settings.xml
@@ -5,6 +5,7 @@
+