Personalizzazione Menu contestuale e piccoli fix

This commit is contained in:
Alhaziel
2020-03-05 15:28:55 +01:00
parent f7903b42c0
commit 4446bd852a
9 changed files with 115 additions and 52 deletions

View File

@@ -2,6 +2,7 @@
import glob
import os
import sys
from core import channeltools
from core.item import Item
@@ -11,6 +12,8 @@ import xbmcaddon
addon = xbmcaddon.Addon('plugin.video.kod')
downloadenabled = addon.getSetting('downloadenabled')
from specials import shortcuts
CONTEXT = shortcuts.context()
def getmainlist(view="thumb_"):
logger.info()
@@ -19,49 +22,55 @@ def getmainlist(view="thumb_"):
if config.dev_mode():
itemlist.append(Item(title="Redirect", channel="checkhost", action="check_channels",
thumbnail='',
category=config.get_localized_string(30119), viewmode="thumbnails"))
category=config.get_localized_string(30119), viewmode="thumbnails",
context = CONTEXT))
# Añade los canales que forman el menú principal
if addon.getSetting('enable_news_menu') == "true":
itemlist.append(Item(title=config.get_localized_string(30130), channel="news", action="mainlist",
thumbnail=get_thumb("news.png", view),
category=config.get_localized_string(30119), viewmode="thumbnails",
context=[{"title": config.get_localized_string(70285), "channel": "news", "action": "menu_opciones",
"goto": True}]))
context=CONTEXT + [{"title": config.get_localized_string(70285), "channel": "news", "action": "menu_opciones","goto": True}]))
if addon.getSetting('enable_channels_menu') == "true":
itemlist.append(Item(title=config.get_localized_string(30118), channel="channelselector", action="getchanneltypes",
thumbnail=get_thumb("channels.png", view), view=view,
category=config.get_localized_string(30119), viewmode="thumbnails"))
category=config.get_localized_string(30119), viewmode="thumbnails",
context = CONTEXT))
if addon.getSetting('enable_search_menu') == "true":
itemlist.append(Item(title=config.get_localized_string(30103), channel="search", path='special', action="mainlist",
thumbnail=get_thumb("search.png", view),
category=config.get_localized_string(30119), viewmode="list"))
category=config.get_localized_string(30119), viewmode="list",
context = CONTEXT + [{"title": config.get_localized_string(60412), "action": "setting_channel_new", "channel": "search"},
{"title": config.get_localized_string(70286), "action": "settings", "channel": "search"}]))
if addon.getSetting('enable_onair_menu') == "true":
itemlist.append(Item(channel="filmontv", action="mainlist", title=config.get_localized_string(50001),
thumbnail=get_thumb("on_the_air.png"), viewmode="thumbnails"))
thumbnail=get_thumb("on_the_air.png"), viewmode="thumbnails",
context = CONTEXT))
if addon.getSetting('enable_link_menu') == "true":
itemlist.append(Item(title=config.get_localized_string(70527), channel="kodfavorites", action="mainlist",
thumbnail=get_thumb("mylink.png", view), view=view,
category=config.get_localized_string(70527), viewmode="thumbnails"))
category=config.get_localized_string(70527), viewmode="thumbnails",
context = CONTEXT))
if addon.getSetting('enable_fav_menu') == "true":
itemlist.append(Item(title=config.get_localized_string(30102), channel="favorites", action="mainlist",
thumbnail=get_thumb("favorites.png", view),
category=config.get_localized_string(30102), viewmode="thumbnails"))
category=config.get_localized_string(30102), viewmode="thumbnails",
context = CONTEXT))
if config.get_videolibrary_support() and addon.getSetting('enable_library_menu') == "true":
itemlist.append(Item(title=config.get_localized_string(30131), channel="videolibrary", action="mainlist",
thumbnail=get_thumb("videolibrary.png", view),
category=config.get_localized_string(30119), viewmode="thumbnails",
context=[{"title": config.get_localized_string(70287), "channel": "videolibrary",
context=CONTEXT + [{"title": config.get_localized_string(70287), "channel": "videolibrary",
"action": "channel_config"}]))
if downloadenabled != "false":
itemlist.append(Item(title=config.get_localized_string(30101), channel="downloads", action="mainlist",
thumbnail=get_thumb("downloads.png", view), viewmode="list",
context=[{"title": config.get_localized_string(70288), "channel": "setting", "config": "downloads",
context=CONTEXT + [{"title": config.get_localized_string(70288), "channel": "setting", "config": "downloads",
"action": "channel_config"}]))
thumb_setting = "setting_%s.png" % 0 # config.get_setting("plugin_updates_available")
@@ -93,13 +102,13 @@ def getchanneltypes(view="thumb_"):
title = config.get_localized_string(30121)
itemlist.append(Item(title=title, channel="channelselector", action="filterchannels", view=view,
category=title, channel_type="all", thumbnail=get_thumb("channels_all.png", view),
viewmode="thumbnails"))
viewmode="thumbnails", context = CONTEXT))
for channel_type in channel_types:
title = config.get_localized_category(channel_type)
itemlist.append(Item(title=title, channel="channelselector", action="filterchannels", category=title,
channel_type=channel_type, viewmode="thumbnails",
thumbnail=get_thumb("channels_%s.png" % channel_type, view)))
thumbnail=get_thumb("channels_%s.png" % channel_type, view), context = CONTEXT))
# itemlist.append(Item(title='Oggi in TV', channel="filmontv", action="mainlist", view=view,
# category=title, channel_type="all", thumbnail=get_thumb("on_the_air.png", view),
@@ -109,7 +118,7 @@ def getchanneltypes(view="thumb_"):
itemlist.append(Item(title=config.get_localized_string(70685), channel="community", action="mainlist", view=view,
category=config.get_localized_string(70685), channel_type="all", thumbnail=get_thumb("channels_community.png", view),
viewmode="thumbnails"))
viewmode="thumbnails", context = CONTEXT))
return itemlist
@@ -215,7 +224,7 @@ def filterchannels(category, view="thumb_"):
channelslist.append(Item(title=channel_parameters["title"], channel=channel_parameters["channel"],
action="mainlist", thumbnail=channel_parameters["thumbnail"],
fanart=channel_parameters["fanart"], plot=channel_info, category=channel_parameters["title"],
language=channel_parameters["language"], viewmode="list", context=context))
language=channel_parameters["language"], viewmode="list", context=CONTEXT + context))
except:
logger.error("Se ha producido un error al leer los datos del canal '%s'" % channel)