Hey,
pvrid ist leer/nicht belegt. Das führt zu einem Fehler. Sollte ich abfangen und schauen, warum dieser Parameter nicht belegt ist.
Ne, ne.. Das stimmt ja in dem Fall. Das Problem ist ja ein anderes:
Ich generiere ja die Widget aus einem Code Template über das script skin shortcuts:
<control type="group">
<control type="panel" id="510">
<include>animation_home_fadeinout</include>
<skinshortcuts>visibility</skinshortcuts>
<orientation>horizontal</orientation>
<include name="PanelWidget1">
<param name="PWidth">$SKINSHORTCUTS[Pwidth]</param>
<param name="PHeight">$SKINSHORTCUTS[Pheight]</param>
</include>
<include name="$SKINSHORTCUTS[artlayout]">
<param name="Texture">$SKINSHORTCUTS[artwork]</param>
<param name="Width">$SKINSHORTCUTS[width]</param>
<param name="Height">$SKINSHORTCUTS[height]</param>
<param name="Aspect">$SKINSHORTCUTS[aspect]</param>
<param name="Aligny">$SKINSHORTCUTS[aligny]</param>
<param name="Reflecttop">$SKINSHORTCUTS[reflecttop]</param>
<param name="IsBorder">$SKINSHORTCUTS[isborder]</param>
<param name="IsBorderless">$SKINSHORTCUTS[isborderless]</param>
</include>
<content target="$SKINSHORTCUTS[target]" sortby="$SKINSHORTCUTS[sortby]" sortorder="$SKINSHORTCUTS[sort]">$SKINSHORTCUTS[content]</content>
</control>
</control>
Alles anzeigen
Ich erhalte dann eine include Datei des scriptes mit menü und widgets drin.
Dort erstellt das script für jedes gewählte widget eine group und teilt sie dem Menüpunkt zu
<control type="group">
<control id="510" type="panel">
<include>animation_home_fadeinout</include>
<visible>StringCompare(Container(9000).ListItem.Property(submenuVisibility),movies)</visible>
<orientation>horizontal</orientation>
<include name="PanelWidget1">
<param name="PWidth">848</param>
<param name="PHeight">170</param>
</include>
<include name="widgetPanelPoster">
<param name="Texture">$VAR[widget1_art_Poster]</param>
<param name="Width">104</param>
<param name="Height">150</param>
<param name="Aspect">scale</param>
<param name="Aligny">bottom</param>
<param name="Reflecttop">130</param>
<param name="IsBorder">true</param>
<param name="IsBorderless">false</param>
</include>
<content sortby="" sortorder="" target="video">plugin://service.library.data.provider?type=recentmovies</content>
</control>
</control>
Alles anzeigen
schreib ich nun in templates das click dazu falls es das addon ist.
<onclick condition="StringCompare(Container(9000).ListItem.Property(widget),FreeTV-Serienplaner)">RunScript(plugin.service.gto,"action=switch_channel&pvrid=$INFO[ListItem.Property(ChannelID)]")</onclick>
landet das in jeder group in jedem Widget und führt dann dazu das nur noch der click im Addon geht.
<control type="group">
<control id="510" type="panel">
<include>animation_home_fadeinout</include>
<visible>StringCompare(Container(9000).ListItem.Property(submenuVisibility),movies)</visible>
<orientation>horizontal</orientation>
<include name="PanelWidget1">
<param name="PWidth">848</param>
<param name="PHeight">170</param>
</include>
<include name="widgetPanelPoster">
<param name="Texture">$VAR[widget1_art_Poster]</param>
<param name="Width">104</param>
<param name="Height">150</param>
<param name="Aspect">scale</param>
<param name="Aligny">bottom</param>
<param name="Reflecttop">130</param>
<param name="IsBorder">true</param>
<param name="IsBorderless">false</param>
</include>
<onclick condition="StringCompare(Container(9000).ListItem.Property(widget),FreeTV-Serienplaner)">RunScript(plugin.service.gto,"action=switch_channel&pvrid=$INFO[ListItem.Property(ChannelID)]")</onclick>
<content sortby="" sortorder="" target="video">plugin://service.library.data.provider?type=recentmovies</content>
</control>
</control>
Alles anzeigen
Ohne die condition führt er den click für alle aus und daraus entsteht dann der Fehler, was ja logisch und korrekt ist - beim start eines Filmes gibts ja keine KanalID.
So wie ich es sehe bräuchte ich den Click direkt vom addon ohne Angabe wie es z.B. service.library.data.provider auch macht..
die Negierung für alles was nicht FreeTV-Serienplaner ist mit action select geht leider nicht, und verschiedene conditions dafür bekomm ich nicht gebacken (da kann ja alles drin sein, von Musik über Addons bis zu Filmen oder einem Widget wie deinem).
Grüße