Apply custom filtering to dynamic content?
#76
That should work out of the box:
Code:

plugin://script.embuary.helper/?info=getbyargs&filter_args='"{"and": [{"or": [{"operator": "is", "field": "actor", "value": $ESCINFO[Container(90050).ListItemAbsolute(0).Label]},{"operator": "is", "field": "actor", "value": $ESCINFO[Container(90050).ListItemAbsolute(1).Label]},{"operator": "is", "field": "actor", "value": $ESCINFO[Container(90050).ListItemAbsolute(3).Label]}]}, {"operator": "isnot", "field": "title", "value": $ESCINFO[ListItem.Title]}]}"'&type=movie
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#77
if you have issues it's always save to urlencode it.

Edit:
Tested and can confirm that you have to urlencode it for some what ever reasons. Anyway. Works as it should
Code:
plugin://script.embuary.helper/?info=getbyargs&filter_args=%7B%22and%22%3A%20%5B%7B%22or%22%3A%20%5B%7B%22operator%22%3A%20%22is%22%2C%20%22field%22%3A%20%22actor%22%2C%20%22value%22%3A%20%22$INFO[Container(200).ListItem.Label]%22%7D%2C%7B%22operator%22%3A%20%22is%22%2C%20%22field%22%3A%20%22actor%22%2C%20%22value%22%3A%20%22$INFO[Container(200).ListItem(1).Label]%22%7D%2C%7B%22operator%22%3A%20%22is%22%2C%20%22field%22%3A%20%22actor%22%2C%20%22value%22%3A%20%22$INFO[Container(200).ListItem(2).Label]%22%7D%5D%7D%2C%20%7B%22operator%22%3A%20%22isnot%22%2C%20%22field%22%3A%20%22title%22%2C%20%22value%22%3A%20%22$INFO[ListItem.Label]%22%7D%5D%7D&type=movie
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#78
(2019-09-03, 16:16)sualfred Wrote: if you have issues it's always save to urlencode it.

Edit:
Tested and can confirm that you have to urlencode it for some what ever reasons. Anyway. Works as it should
Code:
plugin://script.embuary.helper/?info=getbyargs&filter_args=%7B%22and%22%3A%20%5B%7B%22or%22%3A%20%5B%7B%22operator%22%3A%20%22is%22%2C%20%22field%22%3A%20%22actor%22%2C%20%22value%22%3A%20%22$INFO[Container(200).ListItem.Label]%22%7D%2C%7B%22operator%22%3A%20%22is%22%2C%20%22field%22%3A%20%22actor%22%2C%20%22value%22%3A%20%22$INFO[Container(200).ListItem(1).Label]%22%7D%2C%7B%22operator%22%3A%20%22is%22%2C%20%22field%22%3A%20%22actor%22%2C%20%22value%22%3A%20%22$INFO[Container(200).ListItem(2).Label]%22%7D%5D%7D%2C%20%7B%22operator%22%3A%20%22isnot%22%2C%20%22field%22%3A%20%22title%22%2C%20%22value%22%3A%20%22$INFO[ListItem.Label]%22%7D%5D%7D&type=movie

@sualfred, thanks! I will do it this way. I tried without url encoding and it worked, except for movies with & and ‘ in the title, which threw a plugin error in the log.

Regards,

Bart
Reply
#79
@sualfred, thank you, it works as expected.

Regards,

Bart
Reply
#80
np
Main: Lancool II Mesh  - Ryzen 9 5900x - MSI x570 Unify - Zotac RTX 3080 AMP HOLO - 32GB Trident Z Neo 3600 CL16 -  EVO 960 M.2 250GB / EVO 940 250GB / MX100 512GB /  Crucial P1 2TB / WD Blue 3D Nand 2TB 
Sound: Saxx AS30 DSP - Beyer Dynamic Custom One Pro 
TV: Nvidia Shield 2019 Pro- Adalight 114x LEDs - Sony 65XG9505 - Kodi / Emby - Yamaha RX-V683 - Heco Victa 700/101/251a + Dynavoice Magic FX-4
Server: i3 Skylake - 8GB - OMV4 - 22TB Storage
Reply
#81
Sorry for the basic question - I read through this thread and I'm slightly confused. Should infolabels work in xsp? I'm in the movie info screen and as soon as I move from static text to an info labe, I can no longer get this working. Is this just for text input from the keyboard or can it also be used to populate content for lists based off the selected list item in infoscreens?

videodb://movies/titles/?xsp={"rules":{"and":[{"field":"director","operator":"is","value":["Quentin Tarantino"]}]},"type":"movies"}

This works well, but I can't figure out how to have this dynamically...
Reply
#82
(2019-03-06, 06:10)jurialmunkey Wrote: Proof of concept:

Here's local video info being called from videoinfo dialog for movies in the set. This is done entirely with the skinning engine and local content. There is even a breadrcrumb memory so that you can backtrack.

Also @jurialmunkey, how do you get the information for the newly selected video to repopulate the infoscreen on this video?
Reply
#83
(2020-09-12, 15:42)QuizKid Wrote: Sorry for the basic question - I read through this thread and I'm slightly confused. Should infolabels work in xsp? I'm in the movie info screen and as soon as I move from static text to an info labe, I can no longer get this working. Is this just for text input from the keyboard or can it also be used to populate content for lists based off the selected list item in infoscreens?

videodb://movies/titles/?xsp={"rules":{"and":[{"field":"director","operator":"is","value":["Quentin Tarantino"]}]},"type":"movies"}

This works well, but I can't figure out how to have this dynamically...

Just in case anyone else was having issues with this in the future, I realised what I was doing wrong is that I was putting the whole section after the xsp= into a json URL encoder so it was also encoding the characters within the infolabel string, - $ [ ] - but they should be kept as is. So the above would be:

videodb://movies/titles/?xsp=%7b%22rules%22%3a%7b%22and%22%3a%5b%7b%22field%22%3a%22director%22%2c%22operator%22%3a%22is%22%2c%22value%22%3a%5b%22$INFO[ListItem.Director]%22%5d%7d%5d%7d%2c%22type%22%3a%22movies%22%7d
Reply
#84
(2020-09-13, 08:28)QuizKid Wrote:
(2019-03-06, 06:10)jurialmunkey Wrote: Proof of concept:

Here's local video info being called from videoinfo dialog for movies in the set. This is done entirely with the skinning engine and local content. There is even a breadrcrumb memory so that you can backtrack.

Also @jurialmunkey, how do you get the information for the newly selected video to repopulate the infoscreen on this video?
hi, i was'nt get asked and unsure if he us doin it the same way, but
the result may be the same.
video: https://streamable.com/vn0nh
- i use the dialog, replace window and focus the wished item by using its db id.
- the path need to be conditional to differ between a kodi setting ( show movie set folder)


<include condition="!Skin.HasSetting(Dialog_ItemsForceSelect)" content="Action_ItemForceInfo"/>
<include condition="Skin.HasSetting(Dialog_ItemsForceSelect)" content="Action_ItemForceSelect"/>

<include name="Action_ItemForceInfo">
<onclick>Dialog.Close(movieinformation)</onclick>
<onclick condition="String.IsEqual(Container($PARAM[id]).ListItem.dbtype,movie) + [!System.GetBool(videolibrary.groupmoviesets) | [System.GetBool(videolibrary.groupmoviesets) + String.IsEmpty(Container($PARAM[id]).ListItem.SetId)]]">ReplaceWindow(Videos,videodb://movies/titles/$INFO[Container($PARAM[id]).ListItem.dbid])</onclick>
<onclick condition="String.IsEqual(Container($PARAM[id]).ListItem.dbtype,movie) + System.GetBool(videolibrary.groupmoviesets) + !String.IsEmpty(Container($PARAM[id]).ListItem.SetId)">ReplaceWindow(Videos,videodb://movies/sets/$INFO[Container($PARAM[id]).ListItem.SetId]/$INFO[Container($PARAM[id]).ListItem.dbid]?setid=$INFO[Container($PARAM[id]).ListItem.SetId])</onclick>
<onclick condition="String.IsEqual(Container($PARAM[id]).ListItem.dbtype,tvshow)">ReplaceWindow(Videos,videodb://tvshows/titles/$INFO[Container($PARAM[id]).ListItem.dbid])</onclick>
<onclick>Action(info)</onclick> maybe use alarm clock if !window.ismedia, as it dont perform the info when coming from home.xml
</include>

<include name="Action_ItemForceSelect">
<onclick condition="String.IsEqual(Container($PARAM[id]).ListItem.dbtype,movie)">PlayMedia($INFO[Container($PARAM[id]).ListItem.filenameandpath],resume)</onclick>
<onclick>Dialog.Close(movieinformation)</onclick>
<onclick condition="String.IsEqual(Container($PARAM[id]).ListItem.dbtype,tvshow)">ReplaceWindow(Videos,videodb://tvshows/titles/$INFO[Container($PARAM[id]).ListItem.dbid]/)</onclick>
</include>
- the $PARAM[id] is the container id which uses the override onclick

hope that helps.
Skins                                                                                        
Reply



Logout Mark Read Team Forum Stats Members Help
Apply custom filtering to dynamic content?0
This forum uses Lukasz Tkacz MyBB addons.