hallo,
es gibt ja die möglichkeit über ein addon sich smilliar movies oder tvshows anzeigen zulassen.
geht das ganze auch per playlisten opder so, also ohne addon?
und wenn ja was wird benötigt für den aufruf?
danke
hallo,
es gibt ja die möglichkeit über ein addon sich smilliar movies oder tvshows anzeigen zulassen.
geht das ganze auch per playlisten opder so, also ohne addon?
und wenn ja was wird benötigt für den aufruf?
danke
Hey,
Das geht indirekt mit Abstrichen die dem Skinning engine geschuldet sind, erfordert aber massive Eingriffe und Bearbeitung deines Skins.
Da muss man schon Übung haben dafür.
Der Skin Flex hat das drin.
Grüße
hallo und danke
kannst mir vielleicht nen kleines besipeil geben für den aufruf ? d brauch man die jeweillige id des films oder serie oder ?
kannst mir vielleicht nen kleines besipeil geben für den aufruf ? d brauch man die jeweillige id des films oder serie oder ?
Hey, Da gibts keinen Aufruf;).. Ist ja eine komplett "ausgedachte" Funktion die in einem Skin per Code erst mal vorhanden sein muss:
Eine ID des Filmes bringt die in dem Fall nichts, Similar im Sinn von ähnlich braucht dabei irgendeine Info eines Filme, Serie oder Episode.
Wir haben das Genre basiert gemacht. Als Ergebniss bekommt man Similarvorschläge Genrebasiert aus der eigenen Datenbank.
Also nix Online oder so.
Dabei wird die Datenbankinfo Genre mittel Teilvergleich abgefragt. Das geht auf den Skinengine zurück. Nur Substringvergleiche (also Teilvergleich) sind möglich
mit einer Datenbankinfo und einem Fixem Text.
Da ein Film ja mehrere Genres hat wie z.B. Comedy / Action, würde ja ein Vergleich zu Comedy nichts ergeben. Da es aber so hunderte Kombinationen geben könnte,
macht nur ein Teilvergleich sinn. Daraus ergiben sich dann aber Ergebniss die auf den ersten Wert treffen.
Das muss man vorher Berücksichtigen.
Bei einem Film Comedy / Action kommt also unter Umständen eine Empfehlung für Comedy raus.
Da ich persönlich nur ein bis zwei genres vergeben und keine 8 wie bei manchen, stört mich das wenig. Außerdem trifft es immer noch besser als die merkwürdigen
Ergebniss von Beispielsweise Extendedinfo, und es sind auch nur Filme oder Serien die Lokal vorliegen.
Der Code Ansich ist aber recht komplex und muss in einem Skin erst eingebaut werden.
Der Content für Playlisten als Variable für einen Container sieht dann bei uns so aus:
<variable name="videocontent_similar">
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Comedy) | Substring(ListItem.Genre,Sitcom) | Substring(ListItem.Genre,Komödie)]">special://skin/playlists/genres/tv/Komoedie.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Family) | Substring(ListItem.Genre,Familien) | Substring(ListItem.Genre,Kinder) | Substring(ListItem.Genre,Kids)]">special://skin/playlists/genres/tv/Familie.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,CSI) | Substring(ListItem.Genre,Crime) | Substring(ListItem.Genre,Krimi) | Substring(ListItem.Genre,Agenten)]">special://skin/playlists/genres/tv/Krimi.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Sci-Fi) | Substring(ListItem.Genre,fiction) | Substring(ListItem.Genre,Superhelden) | Substring(ListItem.Genre,Stargate) | Substring(ListItem.Genre,Marvel)]">special://skin/playlists/genres/tv/Science fiction.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Animation) | Substring(ListItem.Genre,Anime) | Substring(ListItem.Genre,Zeichentrick)]">special://skin/playlists/genres/tv/Animation.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Musik) | Substring(ListItem.Genre,Music) | Substring(ListItem.Genre,Musical)]">special://skin/playlists/genres/tv/Musik.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Mystic) | Substring(ListItem.Genre,Thrill) | Substring(ListItem.Genre,Mystery) | Substring(ListItem.Genre,Fantasy) | Substring(ListItem.Genre,Thriller)]">special://skin/playlists/genres/tv/Mystery.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Action) | Substring(ListItem.Genre,Kampfsport) | Substring(ListItem.Genre,Martial) | Substring(ListItem.Genre,Ninja)]">special://skin/playlists/genres/tv/Action.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Western) | Substring(ListItem.Genre,Abenteuer) | Substring(ListItem.Genre,Adventure)]">special://skin/playlists/genres/tv/Abenteuer.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,National) | Substring(ListItem.Genre,Nature)]">special://skin/playlists/genres/tv/Natur.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Dokumenation) | Substring(ListItem.Genre,Doku) | Substring(ListItem.Genre,Dokumentary) | Substring(ListItem.Genre,National) | Substring(ListItem.Genre,Nature)]">special://skin/playlists/genres/tv/Dokumenation.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Drama) | Substring(ListItem.Genre,Love) | Substring(ListItem.Genre,Romance)]">special://skin/playlists/genres/tv/Drama.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Sport) | Substring(ListItem.Genre,Sports) | Substring(ListItem.Genre,Boxer) | Substring(ListItem.Genre,Boxing) | Substring(ListItem.Genre,Football) | Substring(ListItem.Genre,Basketball) | Substring(ListItem.Genre,Baseball)]">special://skin/playlists/genres/tv/Sport.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Krieg) | Substring(ListItem.Genre,War)]">special://skin/playlists/genres/tv/Krieg.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Historie) | Substring(ListItem.Genre,History) | Substring(ListItem.Genre,Monumental) | Substring(ListItem.Genre,Classic) | Substring(ListItem.Genre,Klassik) | Substring(ListItem.Genre,tv-Noir)]">special://skin/playlists/genres/tv/History.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Horror) | Substring(ListItem.Genre,Zombies) | Substring(ListItem.Genre,Splatter)]">special://skin/playlists/genres/tv/Horror.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Romance) | Substring(ListItem.Genre,Romantik)]">special://skin/playlists/genres/tv/Romantik.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,DC) | Substring(ListItem.Genre,DC Comic)]">special://skin/playlists/genres/tv/DC.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + Substring(ListItem.Genre,Fantasy)">special://skin/playlists/genres/tv/Fantasy.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + Substring(ListItem.Genre,Indie)">special://skin/playlists/genres/tv/Indie.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Kampfsport) | Substring(ListItem.Genre,Martial Arts)]">special://skin/playlists/genres/tv/Kampfsport.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + Substring(ListItem.Genre,Marvel)">special://skin/playlists/genres/tv/Marvel.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + Substring(ListItem.Genre,Religion)">special://skin/playlists/genres/tv/Religion.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + [Substring(ListItem.Genre,Superhelden) | Substring(ListItem.Genre,Superheroes)]">special://skin/playlists/genres/tv/Superhelden.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + Substring(ListItem.Genre,Thriller)">special://skin/playlists/genres/tv/Thriller.xsp</value>
<value condition="[Container.Content(episodes) | Container.Content(tvshows) | Container.Content(seasons)] + Substring(ListItem.Genre,Western)">special://skin/playlists/genres/tv/Western.xsp</value>
</variable>
Alles anzeigen
Als Ergebnis bekommt man dann die Jeweilige Playliste als Similarvorschlag angezeigt und kann in Videoinfos oder eigenen Fenstern verwendet werden.
Vorteil ist aber auch das man die komplette Kontrolle hat. Ich kann also auch in den Playlisten die die Genres Filter sagen wenn das Ergebnis Marvel ist als Genre, filter ebenfalls noch Superhelden dazu.
Es lassen sich also die Ergebniss mehr oder weniger noch verfeinern.
Aber du siehst das es nicht unbedingt einfach ist und man sich in Skincodes schon auskennen sollte;)..
Grüße
okay
hab mich mal dran versucht, undn es läuft aber der onclick sollte mich eiogentlich zur db bringen oder ? den es passiert einfach nix
hab mich mal dran versucht, undn es läuft aber der onclick sollte mich eiogentlich zur db bringen oder ? den es passiert einfach nix
Sorry, war etwas im Stress .
Ich hab es so das Filme abgespielt werden und Serien öffnet. Der Content Provider hat an manchen Stellen etwas Probleme bei inhalten.
Das lässt sich aber umgehen indem man den Click überschreibt - geht ja seit Jarvis einfacher als früher.
Im prinzip brauchst dann im Container clicks mit condition, in der Art condition="String.IsEmpty(ListItem.TVShowtitle)" für einen Film und "ist nicht leer" für eine Serie.
Wie man das macht bleibt im prinzip jedem Überlassen. Duration als Bedingen geht dabei genauso wie ListItem.DBType.
Kommt aber drauf an wo es integriert hast:
In einer View sollte es von selbst gehen ohne Eingriff, in der Videoinfo, da es ein Dialog ist müsste es dann wiederrum so aussehen:
<onclick>Dialog.close(all)</onclick>
<onclick condition="Substring(ListItem.DBTYPE,movie)">PlayMedia("$INFO[ListItem.FilenameandPath]")</onclick>
<onclick condition="[Substring(ListItem.DBTYPE,season) | Substring(ListItem.DBTYPE,tvshow) | Substring(ListItem.DBTYPE,episode)]">ActivateWindow(videos,"videodb://tvshows/titles/$INFO[ListItem.DBID]/")</onclick>
Damit der Dialog vorher geschlossen wird (der liegt ja über deinen Ansichten).
Musst also immer testen und wenns nicht mit geht, dann etwas in der Art einbauen - einfach in den Container mit rein.
Grüße
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!