• 1
  • 143
  • 144
  • 145(current)
  • 146
  • 147
  • 151
Release script.extendedinfo
Question which skins does this work with , I use it for Arctic-Zephyr but in kodi 17.6 I can't get plexkodiconnect to resume files & in kodi 18.6, fast forward & rewind are horrible with speed.  So I am stuck.
Reply
Hey guys!
I've been trying to customize script.extendedinfo so that a widget automatically lists all results of a search eg.: all movies in Portuguese language, sorted by descending date?

I looked into all the lists of command but can't seem to find an example for original language or country of origin and sorting parameters to add to RunScript(script.extendedinfo,)
Reply
(2019-12-12, 01:03)ontap Wrote: I have this script enabled in madnox skin, when i long press on OK whilst highlighting a movie, the extended info page slides into view , but when highlighting "play" on screen and pressing OK on keyboard or remote, nothing happens ? is there a setting anyway to activate the "play" button in EIS please ?
EDIT: found "patch" that Angelinas submitted , fixed, thank you sir.

What was tge solution Angelinas submitted? I have the same issue.
Reply
I have been working on this script (and dependency kodi65 same author) for Kodi 19.  To play youtube video via extendedinfo it is best to use the youtube plugin called from the script.  Also, to search Youtube, there was a hard-coded api key in kodi65 and these no longer work.  You need your own api key (the one you need also for the Youtube plugin).  I have it all working, but it is for Matrix only so not backwards compatible (my practice is to strip out non-working python2 code, not to try to make the same code base work in both python 2 and 3).  Feel free to checkout my Matrix branches of the two addons
kodi65
extendedinfo


scott s.
.
Reply
(2020-05-29, 18:54)scott967 Wrote: I have been working on this script (and dependency kodi65 same author) for Kodi 19.  To play youtube video via extendedinfo it is best to use the youtube plugin called from the script.  Also, to search Youtube, there was a hard-coded api key in kodi65 and these no longer work.  You need your own api key (the one you need also for the Youtube plugin).  I have it all working, but it is for Matrix only so not backwards compatible (my practice is to strip out non-working python2 code, not to try to make the same code base work in both python 2 and 3).  Feel free to checkout my Matrix branches of the two addons
kodi65
extendedinfo


scott s.
.
Hey Scott any chance you would have a simple solution to my issue down here?
Quote:I've been trying to customize script.extendedinfo so that a widget automatically lists all results of a search eg.: all movies in Portuguese language, sorted by descending date?

I looked into all the lists of command but can't seem to find an example for original language or country of origin and sorting parameters to add to RunScript(script.extendedinfo,)
Reply
(2020-06-04, 12:44)rorolei Wrote:
(2020-05-29, 18:54)scott967 Wrote: I have been working on this script (and dependency kodi65 same author) for Kodi 19.  To play youtube video via extendedinfo it is best to use the youtube plugin called from the script.  Also, to search Youtube, there was a hard-coded api key in kodi65 and these no longer work.  You need your own api key (the one you need also for the Youtube plugin).  I have it all working, but it is for Matrix only so not backwards compatible (my practice is to strip out non-working python2 code, not to try to make the same code base work in both python 2 and 3).  Feel free to checkout my Matrix branches of the two addons
kodi65
extendedinfo


scott s.
.
Hey Scott any chance you would have a simple solution to my issue down here?
Quote:I've been trying to customize script.extendedinfo so that a widget automatically lists all results of a search eg.: all movies in Portuguese language, sorted by descending date?

I looked into all the lists of command but can't seem to find an example for original language or country of origin and sorting parameters to add to RunScript(script.extendedinfo,)
I will have to take some time to investigate/ think about this.  Note that my goal was just to get the script working in Kodi 19 as it did before and I'm not that good about what the script really can do.

scott s.
.
Reply
(2020-06-09, 19:03)scott967 Wrote:
(2020-06-04, 12:44)rorolei Wrote:
(2020-05-29, 18:54)scott967 Wrote: I have been working on this script (and dependency kodi65 same author) for Kodi 19.  To play youtube video via extendedinfo it is best to use the youtube plugin called from the script.  Also, to search Youtube, there was a hard-coded api key in kodi65 and these no longer work.  You need your own api key (the one you need also for the Youtube plugin).  I have it all working, but it is for Matrix only so not backwards compatible (my practice is to strip out non-working python2 code, not to try to make the same code base work in both python 2 and 3).  Feel free to checkout my Matrix branches of the two addons
kodi65
extendedinfo


scott s.
.
Hey Scott any chance you would have a simple solution to my issue down here?
Quote:I've been trying to customize script.extendedinfo so that a widget automatically lists all results of a search eg.: all movies in Portuguese language, sorted by descending date?

I looked into all the lists of command but can't seem to find an example for original language or country of origin and sorting parameters to add to RunScript(script.extendedinfo,)
I will have to take some time to investigate/ think about this.  Note that my goal was just to get the script working in Kodi 19 as it did before and I'm not that good about what the script really can do.

scott s.
.
Of course. If you manage to pull something like that out if and whenever you have some spare time itll be awesome
Reply
Hi everybody, I have translated this addon into Spanish language 100% but @phil65  has not approved the latest pull request fix some bug on github it would be interesting for Kodi 19 to make this available
Reply
Hi,

I would like to convert the dialogue video-list into window. Can someone please assist with sections in windowManager.py that must be changed for this to work? Thanks

Code:
# -*- coding: utf8 -*-
# Copyright © 2015 - Philipp Temminghoff <phil65@kodi.tv>
# This program is Free Software see LICENSE file for details
import os
import re
import xbmc
import xbmcgui
import xbmcvfs
import TheMovieDB as tmdb
from kodi65 import windows
from kodi65 import addon
from kodi65 import utils
from kodi65 import busy
from kodi65 import player
from kodi65 import local_db
INFO_XML_CLASSIC = u'script-%s-DialogVideoInfo.xml' % (addon.ID)
LIST_XML_CLASSIC = u'script-%s-VideoList.xml' % (addon.ID)
ACTOR_XML_CLASSIC = u'script-%s-DialogInfo.xml' % (addon.ID)
if addon.bool_setting("force_native_layout") and addon.setting("xml_version") != addon.VERSION:
addon.set_setting("xml_version", addon.VERSION)
INFO_XML = u'script-%s-DialogVideoInfo-classic.xml' % (addon.ID)
LIST_XML = u'script-%s-VideoList-classic.xml' % (addon.ID)
ACTOR_XML = u'script-%s-DialogInfo-classic.xml' % (addon.ID)
path = os.path.join(addon.PATH, "resources", "skins", "Default", "1080i")
xbmcvfs.copy(strSource=os.path.join(path, INFO_XML_CLASSIC),
strDestination=os.path.join(path, INFO_XML))
xbmcvfs.copy(strSource=os.path.join(path, LIST_XML_CLASSIC),
strDestination=os.path.join(path, LIST_XML))
xbmcvfs.copy(strSource=os.path.join(path, ACTOR_XML_CLASSIC),
strDestination=os.path.join(path, ACTOR_XML))
else:
INFO_XML = INFO_XML_CLASSIC
LIST_XML = LIST_XML_CLASSIC
ACTOR_XML = ACTOR_XML_CLASSIC
class WindowManager(object):
window_stack = []
def __init__(self):
self.active_dialog = None
self.saved_background = addon.get_global("infobackground")
self.saved_control = xbmc.getInfoLabel("System.CurrentControlId")
self.saved_dialogstate = xbmc.getCondVisibility("Window.IsActive(Movieinformation)")
# self.monitor = SettingsMonitor()
def open_movie_info(self, movie_id=None, dbid=None, name=None, imdb_id=None):
"""
open movie info, deal with window stack
"""
busy.show_busy()
from dialogs.DialogMovieInfo import DialogMovieInfo
dbid = int(dbid) if dbid and int(dbid) > 0 else None
if not movie_id:
movie_id = tmdb.get_movie_tmdb_id(imdb_id=imdb_id,
dbid=dbid,
name=name)
dialog = DialogMovieInfo(INFO_XML,
addon.PATH,
id=movie_id,
dbid=dbid)
busy.hide_busy()
self.open_infodialog(dialog)
def open_tvshow_info(self, tmdb_id=None, dbid=None, tvdb_id=None, imdb_id=None, name=None):
"""
open tvshow info, deal with window stack
"""
busy.show_busy()
dbid = int(dbid) if dbid and int(dbid) > 0 else None
from dialogs.DialogTVShowInfo import DialogTVShowInfo
if tmdb_id:
pass
elif tvdb_id:
tmdb_id = tmdb.get_show_tmdb_id(tvdb_id)
elif imdb_id:
tmdb_id = tmdb.get_show_tmdb_id(tvdb_id=imdb_id,
source="imdb_id")
elif dbid:
tvdb_id = local_db.get_imdb_id(media_type="tvshow",
dbid=dbid)
if tvdb_id:
tmdb_id = tmdb.get_show_tmdb_id(tvdb_id)
elif name:
tmdb_id = tmdb.search_media(media_name=name,
year="",
media_type="tv")
dialog = DialogTVShowInfo(INFO_XML,
addon.PATH,
tmdb_id=tmdb_id,
dbid=dbid)
busy.hide_busy()
self.open_infodialog(dialog)
def open_season_info(self, tvshow_id=None, season=None, tvshow=None, dbid=None):
"""
open season info, deal with window stack
needs *season AND (*tvshow_id OR *tvshow)
"""
busy.show_busy()
from dialogs.DialogSeasonInfo import DialogSeasonInfo
if not tvshow_id:
params = {"query": tvshow,
"language": addon.setting("language")}
response = tmdb.get_data(url="search/tv",
params=params,
cache_days=30)
if response["results"]:
tvshow_id = str(response['results'][0]['id'])
else:
params = {"query": re.sub('\(.*?\)', '', tvshow),
"language": addon.setting("language")}
response = tmdb.get_data(url="search/tv",
params=params,
cache_days=30)
if response["results"]:
tvshow_id = str(response['results'][0]['id'])
dialog = DialogSeasonInfo(INFO_XML,
addon.PATH,
id=tvshow_id,
season=max(0, season),
dbid=int(dbid) if dbid and int(dbid) > 0 else None)
busy.hide_busy()
self.open_infodialog(dialog)
def open_episode_info(self, tvshow_id=None, season=None, episode=None, tvshow=None, dbid=None):
"""
open season info, deal with window stack
needs (*tvshow_id OR *tvshow) AND *season AND *episode
"""
from dialogs.DialogEpisodeInfo import DialogEpisodeInfo
if not tvshow_id and tvshow:
tvshow_id = tmdb.search_media(media_name=tvshow,
media_type="tv",
cache_days=7)
dialog = DialogEpisodeInfo(INFO_XML,
addon.PATH,
tvshow_id=tvshow_id,
season=max(0, season),
episode=episode,
dbid=int(dbid) if dbid and int(dbid) > 0 else None)
self.open_infodialog(dialog)
def open_actor_info(self, actor_id=None, name=None):
"""
open actor info, deal with window stack
"""
from dialogs.DialogActorInfo import DialogActorInfo
if not actor_id:
name = name.split(" %s " % addon.LANG(20347))
names = name[0].strip().split(" / ")
if len(names) > 1:
ret = xbmcgui.Dialog().select(heading=addon.LANG(32027),
list=names)
if ret == -1:
return None
name = names[ret]
else:
name = names[0]
busy.show_busy()
actor_info = tmdb.get_person_info(name)
if not actor_info:
return None
actor_id = actor_info["id"]
else:
busy.show_busy()
dialog = DialogActorInfo(ACTOR_XML,
addon.PATH,
id=actor_id)
busy.hide_busy()
self.open_infodialog(dialog)
def open_video_list(self, listitems=None, filters=None, mode="filter", list_id=False,
filter_label="", force=False, media_type="movie", search_str=""):
"""
open video list, deal with window stack
"""
from dialogs import DialogVideoList
Browser = DialogVideoList.get_window(windows.DialogXML)
dialog = Browser(LIST_XML,
addon.PATH,
listitems=listitems,
filters=[] if not filters else filters,
mode=mode,
list_id=list_id,
force=force,
filter_label=filter_label,
search_str=search_str,
type=media_type)
self.open_dialog(dialog)
def open_youtube_list(self, search_str="", filters=None, filter_label="", media_type="video"):
"""
open video list, deal with window stack
"""
from dialogs import DialogYoutubeList
YouTube = DialogYoutubeList.get_window(windows.DialogXML)
dialog = YouTube(u'script-%s-YoutubeList.xml' % addon.ID, addon.PATH,
search_str=search_str,
filters=[] if not filters else filters,
type=media_type)
self.open_dialog(dialog)
def open_infodialog(self, dialog):
if dialog.info:
self.open_dialog(dialog)
else:
self.active_dialog = None
utils.notify(addon.LANG(32143))
def open_dialog(self, dialog):
if self.active_dialog:
self.window_stack.append(self.active_dialog)
self.active_dialog.close()
utils.check_version()
if not addon.setting("first_start_infodialog"):
addon.set_setting("first_start_infodialog", "True")
xbmcgui.Dialog().ok(heading=addon.NAME,
line1=addon.LANG(32140),
line2=addon.LANG(32141))
self.active_dialog = dialog
dialog.doModal()
if dialog.cancelled:
addon.set_global("infobackground", self.saved_background)
self.window_stack = []
return None
if self.window_stack:
self.active_dialog = self.window_stack.pop()
xbmc.sleep(300)
self.active_dialog.doModal()
else:
addon.set_global("infobackground", self.saved_background)
def play_youtube_video(self, youtube_id="", listitem=None):
"""
play youtube vid with info from *listitem
"""
url, yt_listitem = player.youtube_info_by_id(youtube_id)
if not listitem:
listitem = yt_listitem
if not url:
utils.notify(header=addon.LANG(257),
message="no youtube id found")
return None
if self.active_dialog and self.active_dialog.window_type == "dialog":
self.active_dialog.close()
xbmc.executebuiltin("Dialog.Close(movieinformation)")
xbmc.Player().play(item=url,
listitem=listitem,
windowed=False,
startpos=-1)
if self.active_dialog and self.active_dialog.window_type == "dialog":
player.wait_for_video_end()
self.active_dialog.doModal()
wm = WindowManager()
Reply
Will extendedinfo be updated to work in Matrix?

Thank you
Reply
(2020-03-31, 18:19)scott967 Wrote: If anyone is interested, I have a Python 3  version available at my github releease page here:  Ver 5.6.0+matrix.1

You must first install my Python 3 update of script.module.kodi65  1.2.1+matrix.1

I added a new setting for a personal Youtube API key which is required to get Youtube search results (the hard-coded key in kodi65 won't work any more). Playback is via official Youtube plugin so if a user has that working they can use the API key from setting the plugin up in the extended info setting.

Currently there is some added code that's unique to my skin mod. I don't think that will affect any other skin (the code is there to restore the videos or music window view that was in effect prior to searching Youtube, as the addon was hard-coded for Estuary view IDs, otherwise IIRC you end up with view 50 after exiting the addon's dialog window.)

scott s.
.
@scott967  did you ever figure out how to change the default "info" action ( in any skin) to open extended info instead of the skin info screen ? I say "any skin" because I would mod a skin for my own use as long as it had this feature.
Maybe there was a tweak or two to yopur "onload" suggestion in post 152 that would do it ?
Reply
@ontap
In view xml on begining of list or panel write
Code:
<oninfo condition="String.IsEqual(ListItem.DBType,movie)">RunScript(script.extendedinfo,info=extendedinfo,imdb_id=$INFO[ListItem.IMDBNumber])</oninfo>
In mine mod I have custom dialog for "script.extendedinfo-DialogVideoInfo"  with name
script-script.extendedinfo-DialogVideoInfo.xml
and when I press "i" on keybord kodi open that dialog, similar for this I use for set, but dialog from Shs script.
https://github.com/Angelinas1/Aeonmq6-Le...t.xml#L787
All working
Edit:
Like in mine code for ViewsRightList.xml.....see github link
XBoxMediaCenter (Kodi Matrix ) 19.3 , AndroidBox -Matrix Skin AeonMQ6
Reply
(2020-12-23, 22:32)Angelinas Wrote: In view xml on begining of list or panel write
<code><oninfo condition="String.IsEqual(ListItem.DBType,movie)">RunScript(script.extendedinfo,info=extendedinfo,imdb_id=$INFO[ListItem.IMDBNumber])</oninfo></code>
In mine mod I have custom dialog for "script.extendedinfo-DialogVideoInfo"  with name
script-script.extendedinfo-DialogVideoInfo.xml
and when I press "i" on keybord kodi open that dialog, similar for this I use for set, but dialog from Shs script.
https://github.com/Angelinas1/Aeonmq6-Le...t.xml#L787
All working
Thanks for replying , could you explain a little more please .
"In view xml "   where exactly are you referring to please ?
I  can see that "script-script.extendedinfo-DialogVideoInfo.xml" in 1980i in your github link , will download that skin and have a look tx.
Reply
You Don't need to create new dialog...use default dialog from extended script that will work too.
XBoxMediaCenter (Kodi Matrix ) 19.3 , AndroidBox -Matrix Skin AeonMQ6
Reply
(2020-12-23, 23:07)Angelinas Wrote: You Don't need to create new dialog...use default dialog from extended script that will work too.
So to be clear , where, in default dialogvideoinfo.xml file should I paste <oninfo condition="String.IsEqual(ListItem.DBType,movie)">RunScript(script.extendedinfo,info=extendedinfo,imdb_id=$INFO[ListItem.IMDBNumber])</oninfo>
Reply
  • 1
  • 143
  • 144
  • 145(current)
  • 146
  • 147
  • 151

Logout Mark Read Team Forum Stats Members Help
script.extendedinfo29