mirror of
https://projects.vdr-developer.org/git/vdr-plugin-skindesigner.git
synced 2023-10-19 17:58:31 +02:00
256 lines
21 KiB
XML
256 lines
21 KiB
XML
|
<menudetailedepg x="0" y="0" width="100%" height="100%" fadetime="0">
|
||
|
<background>
|
||
|
<area x="0" y="0" width="100%" height="100%" layer="1">
|
||
|
<fill color="{clrTransBlack}" />
|
||
|
<drawrectangle x="0" y="0" width="100%" height="10%" color="{clrDarkBlue}" />
|
||
|
</area>
|
||
|
<area x="0" y="0" width="100%" height="10%" layer="2">
|
||
|
<drawimage imagetype="skinpart" path="headertop" x="0" y="0" width="100%" height="100%"/>
|
||
|
</area>
|
||
|
</background>
|
||
|
<scrollbar>
|
||
|
<area x="97%" y="25%" width="2%" height="60%" layer="2">
|
||
|
<fill color="{clrDarkBlue}" />
|
||
|
<drawrectangle x="2" y="2" width="{areawidth} - 4" height="{areaheight} - 4" color="{clrTransparent}" />
|
||
|
<drawrectangle x="4" y="4 + {areaheight} * {offset} / 1000" width="{areawidth} - 8" height="{areaheight} * {height} / 1000 - 8" color="{clrDarkGreen}" />
|
||
|
</area>
|
||
|
</scrollbar>
|
||
|
<!-- Available Variables in detailheader elements:
|
||
|
{title} title of event
|
||
|
{shorttext} shorttext of event
|
||
|
{start} event start time in hh::mm
|
||
|
{stop} event stop time
|
||
|
{day} day of current event
|
||
|
{date} date of current event in dd.mm.yy
|
||
|
{running} true if event is currently running
|
||
|
{elapsed} elapsed time of event, if not running 0
|
||
|
{duration} duration of event
|
||
|
{channelid} ChannelID as path to display channel logo
|
||
|
{ismovie} true if event is scraped as a movie
|
||
|
{isseries} true if event is scraped as a series
|
||
|
{posteravailable} true if a poster is available
|
||
|
{posterwidth} width of scraped poster
|
||
|
{posterheight} height of scraped poster
|
||
|
{posterpath} absolute path of scraped poster
|
||
|
{banneravailable} true if a banner is available
|
||
|
{bannerwidth} width of banner
|
||
|
{bannerheight} height of banner
|
||
|
{bannerpath} path of banner
|
||
|
{epgpicavailable} true if a epg picture is available
|
||
|
{epgpicpath} path of epg picture
|
||
|
-->
|
||
|
<detailheader>
|
||
|
<area x="1%" y="10%" width="98%" height="15%" layer="2">
|
||
|
<fill color="{clrTransBlack}" />
|
||
|
</area>
|
||
|
<area x="1%" y="10%" width="98%" height="15%" layer="3">
|
||
|
<drawimage name="logo" imagetype="channellogo" path="{channelid}" x="0" height="80%" valign="center" />
|
||
|
|
||
|
<drawimage condition="{isseries}++{banneravailable}++not{epgpicavailable}" imagetype="image" path="{bannerpath}" x="{areawidth} - {areawidth}/3 - 10" valign="center" width="{areawidth}/3" height="{areawidth}/3 * {bannerheight} / {bannerwidth}"/>
|
||
|
<drawimage condition="{ismovie}++{posteravailable}++not{epgpicavailable}" imagetype="image" path="{posterpath}" x="{areawidth} - {areaheight}*8/10" valign="center" width="{areaheight}*8 / 10 * {posterheight} / {posterwidth}" height="{areaheight}*8 / 10"/>
|
||
|
<drawimage condition="{epgpicavailable}" imagetype="image" path="{epgpicpath}" x="{areawidth} - {areaheight}*8/10 * 174 / 130" valign="center" width="{areaheight}*8/10 * 174 / 130" height="{areaheight}*8 / 10"/>
|
||
|
|
||
|
<drawtext name="title" x="{width(logo)} + 20" valign="center" font="{vdrOsd}" fontsize="35%" color="{clrWhite}" text="{title}" />
|
||
|
<drawtext name="datetime" x="{width(logo)} + 20" y="{posy(title)} - {height(datetime)}" font="{vdrOsd}" fontsize="25%" color="{clrWhite}" text="{day} {date} {start} - {stop} ({duration} mins)" />
|
||
|
<drawtext name="shorttext" x="{width(logo)} + 20" y="{posy(title)} + {height(title)}" font="{vdrOsd}" fontsize="25%" color="{clrWhite}" text="{shorttext}" />
|
||
|
</area>
|
||
|
</detailheader>
|
||
|
|
||
|
<!-- Available Variables in tab elements:
|
||
|
{title} title of event
|
||
|
{shorttext} shorttext of event
|
||
|
{description} description of event
|
||
|
{start} event start time in hh::mm
|
||
|
{stop} event stop time
|
||
|
{day} day of current event
|
||
|
{date} date of current event in dd.mm.yy
|
||
|
{running} true if event is currently running
|
||
|
{elapsed} elapsed time of event, if not running 0
|
||
|
{duration} duration of event
|
||
|
{channelid} ChannelID as path to display channel logo
|
||
|
{hasreruns} true if reruns of this event are found
|
||
|
{reruns[]} array with reruns
|
||
|
{reruns[title]} title of rerun
|
||
|
{reruns[shorttext]} shorttext of rerun
|
||
|
{reruns[date]} date of rerun in dd:mm
|
||
|
{reruns[day]} short dayname of rerun
|
||
|
{reruns[start]} start time of rerun in hh:mm
|
||
|
{reruns[stop]} stop time of rerun in hh:mm
|
||
|
{reruns[channelname]} name of channel on which rerun occurs
|
||
|
{reruns[channelnumber]} number of channel on which rerun occurs
|
||
|
{reruns[channelid]} id of channel on which rerun occurs to display channel logo
|
||
|
{reruns[channellogoexists]} true if channel logo exists
|
||
|
{epgpic1avaialble} true if first epg picture is available
|
||
|
{epgpic2avaialble} true if first epg picture is available
|
||
|
{epgpic3avaialble} true if first epg picture is available
|
||
|
{epgpic1path} path of first epg picture
|
||
|
{epgpic2path} path of second epg picture
|
||
|
{epgpic3path} path of third epg picture
|
||
|
|
||
|
{ismovie} true if event is scraped as a movie
|
||
|
Available variables for movies:
|
||
|
{movietitle} movie title from themoviedb
|
||
|
{movieoriginalTitle} movie original title from themoviedb
|
||
|
{movietagline} movie tagline from themoviedb
|
||
|
{movieoverview} movie overview from themoviedb
|
||
|
{movieadult} true if movie is rated as adult
|
||
|
{moviebudget} movie budget from themoviedb in $
|
||
|
{movierevenue} movie revenue from themoviedb in $
|
||
|
{moviegenres} movie genres from themoviedb
|
||
|
{moviehomepage} movie homepage from themoviedb
|
||
|
{moviereleasedate} movie release date from themoviedb
|
||
|
{movieruntime} movie runtime from themoviedb
|
||
|
{moviepopularity} movie popularity from themoviedb
|
||
|
{movievoteaverage} movie vote average from themoviedb
|
||
|
{posterwidth} width of scraped poster
|
||
|
{posterheight} height of scraped poster
|
||
|
{posterpath} absolute path of scraped poster
|
||
|
{fanartwidth} width of scraped fanart
|
||
|
{fanartheight} height of scraped fanart
|
||
|
{fanartpath} absolute path of scraped fanart
|
||
|
{movieiscollection} true if movie is part of a collection
|
||
|
{moviecollectionName} name of movie collection
|
||
|
{collectionposterwidth} width of scraped collection poster
|
||
|
{collectionposterheight} height of scraped collection poster
|
||
|
{collectionposterpath} absolute path of scraped collection poster
|
||
|
{collectionfanartwidth} width of scraped collection fanart
|
||
|
{collectionfanartheight} height of scraped collection fanart
|
||
|
{collectionfanartpath} absolute path of scraped collection fanart
|
||
|
{actors[]} array with movie actors
|
||
|
{actors[name]} real name of actor
|
||
|
{actors[role]} actor role
|
||
|
{actors[thumb]} absolute path of scraped actor thumb
|
||
|
{actors[thumbwidth]} width of scraped actor thumb
|
||
|
{actors[thumbheight]} height of scraped actor thumb
|
||
|
|
||
|
{isseries} true if event is scraped as a series
|
||
|
Available variables for series:
|
||
|
{seriesname} name of series
|
||
|
{seriesoverview} series overview
|
||
|
{seriesfirstaired} first aired date
|
||
|
{seriesnetwork} network which produces series
|
||
|
{seriesgenre} series genre
|
||
|
{seriesrating} series thetvdb rating
|
||
|
{seriesstatus} status of series (running / finished)
|
||
|
{episodetitle} title of episode
|
||
|
{episodenumber} number of episode
|
||
|
{episodeseason} season of episode
|
||
|
{episodefirstaired} first aired date of episode
|
||
|
{episodegueststars} guest stars of episode
|
||
|
{episodeoverview} episode overview
|
||
|
{episoderating} user rating for episode
|
||
|
{episodeimagewidth} episode image width
|
||
|
{episodeimageheight} episode image height
|
||
|
{episodeimagepath} episode image path
|
||
|
{seasonposterwidth} episode season poster width
|
||
|
{seasonposterheight} episode season poster height
|
||
|
{seasonposterpath} episode season poster path
|
||
|
{seriesposter1width} width of 1st poster
|
||
|
{seriesposter1height} height of 1st poster
|
||
|
{seriesposter1path} path of 1st poster
|
||
|
{seriesposter2width} width of 2nd poster
|
||
|
{seriesposter2height} height of 2nd poster
|
||
|
{seriesposter2path} path of 2nd poster
|
||
|
{seriesposter3width} width of 3rd poster
|
||
|
{seriesposter3height} height of 3rd poster
|
||
|
{seriesposter3path} path of 3rd poster
|
||
|
{seriesfanart1width} width of 1st fanart
|
||
|
{seriesfanart1height} height of 1st fanart
|
||
|
{seriesfanart1path} path of 1st fanart
|
||
|
{seriesfanart2width} width of 2nd fanart
|
||
|
{seriesfanart2height} height of 2nd fanart
|
||
|
{seriesfanart2path} path of 2nd fanart
|
||
|
{seriesfanart3width} width of 3rd fanart
|
||
|
{seriesfanart3height} height of 3rd fanart
|
||
|
{seriesfanart3path} path of 3rd fanart
|
||
|
{seriesbanner1width} width of 1st banner
|
||
|
{seriesbanner1height} height of 1st banner
|
||
|
{seriesbanner1path} path of 1st banner
|
||
|
{seriesbanner2width} width of 2nd banner
|
||
|
{seriesbanner2height} height of 2nd banner
|
||
|
{seriesbanner2path} path of 2nd banner
|
||
|
{seriesbanner3width} width of 3rd banner
|
||
|
{seriesbanner3height} height of 3rd banner
|
||
|
{seriesbanner3path} path of 3rd fanart
|
||
|
{actors[]} array with movie actors
|
||
|
{actors[name]} real name of actor
|
||
|
{actors[role]} actor role
|
||
|
{actors[thumb]} absolute path of scraped actor thumb
|
||
|
{actors[thumbwidth]} width of scraped actor thumb
|
||
|
{actors[thumbheight]} height of scraped actor thumb
|
||
|
-->
|
||
|
|
||
|
<!-- TAB EPGINFO -->
|
||
|
<tab name="EPG Info" x="2%" y="25%" width="94%" height="60%" layer="2" scrollheight="{areaheight}/4">
|
||
|
<drawtextbox condition="not{isseries}++not{ismovie}" x="0" y="10" width="96%" font="{vdrOsd}" fontsize="6%" color="{clrWhite}" text="{description}" />
|
||
|
<drawimage condition="{isseries}" name="seriesposter" imagetype="image" path="{seriesposter1path}" x="{areawidth}*0.75" y="10" width="{areawidth}*0.25" height="{areawidth} * 0.25 * {seriesposter1height} / {seriesposter1width}"/>
|
||
|
<drawimage condition="{ismovie}" name="movieposter" imagetype="image" path="{posterpath}" x="{areawidth}*0.75" y="10" width="{areawidth}*0.25" height="{areawidth} * 0.25 * {posterheight} / {posterwidth}" />
|
||
|
<drawtextbox condition="{isseries}" x="0" y="10" width="96%" float="topright" floatwidth="{width(seriesposter)} + 10" floatheight="{height(seriesposter)} + 20" font="{vdrOsd}" fontsize="6%" color="{clrWhite}" text="{description}" />
|
||
|
<drawtextbox condition="{ismovie}" x="0" y="10" width="96%" float="topright" floatwidth="{width(movieposter)} + 10" floatheight="{height(movieposter)} + 20" font="{vdrOsd}" fontsize="6%" color="{clrWhite}" text="{description}" />
|
||
|
</tab>
|
||
|
<!-- TAB RERUNS -->
|
||
|
<tab condition="{hasreruns}" name="{tr(reruns)}" x="2%" y="25%" width="94%" height="60%" layer="2" scrollheight="{areaheight}/4">
|
||
|
<drawtext align="center" y="0" name="title" font="{vdrOsd}" fontsize="10%" color="{clrWhite}" text="{tr(rerunsof)} '{title}'" />
|
||
|
<loop name="reruns" x="0" y="{height(title)} + 10" width="{areawidth}" orientation="vertical">
|
||
|
<drawimage name="logo" condition="{reruns[channellogoexists]}" imagetype="channellogo" path="{reruns[channelid]}" x="0" height="10%" />
|
||
|
<drawtext name="channelname" condition="not{reruns[channellogoexists]}" x="-5" font="{vdrOsd}" fontsize="10%" color="{clrWhite}" text="{reruns[channelname]}" />
|
||
|
<drawtext condition="{reruns[channellogoexists]}" x="{width(logo)}+20" y="-5" width="{areawidth} - {width(logo)} - 20" font="{vdrOsd}" fontsize="8%" color="{clrWhite}" text="{reruns[day]} {reruns[date]} {reruns[start]} - {reruns[stop]}: {reruns[title]} {reruns[shorttext]}" />
|
||
|
<drawtext condition="not{reruns[channellogoexists]}" x="{width(channelname)}+20" y="-5" width="{areawidth} - {width(logo)} - 20" font="{vdrOsd}" fontsize="8%" color="{clrWhite}" text="{reruns[day]} {reruns[date]} {reruns[start]} - {reruns[stop]}: {reruns[title]} {reruns[shorttext]}" />
|
||
|
</loop>
|
||
|
</tab>
|
||
|
<!-- TAB ACTORS -->
|
||
|
<tab condition="{isseries}||{ismovie}" name="{tr(actors)}" x="2%" y="25%" width="94%" height="60%" layer="2" scrollheight="{areaheight}/4">
|
||
|
<drawtext align="center" name="title" y="0" font="{vdrOsd}" fontsize="15%" color="{clrWhite}" text="{tr(actors)}" />
|
||
|
<loop name="actors" x="0" y="{height(title)} + 10" width="{areawidth}" orientation="horizontal" columnwidth="{areawidth}/5" rowheight="{areawidth}/5*1.8" overflow="linewrap">
|
||
|
<drawimage name="thumb" imagetype="image" path="{actors[thumb]}" x="20" y="0" width="{columnwidth}-40" height="{columnwidth} * {actors[thumbheight]} / {actors[thumbwidth]} - 40 * {actors[thumbheight]} / {actors[thumbwidth]}"/>
|
||
|
<drawtext align="center" y="{height(thumb)} + 10" width="{columnwidth}" name="actorname" font="{vdrOsd}" fontsize="7%" color="{clrWhite}" text="{actors[name]}" />
|
||
|
<drawtext align="center" y="{height(thumb)} + 10 + {height(actorname)}" width="{columnwidth}" font="{vdrOsd}" fontsize="7%" color="{clrWhite}" text="{actors[role]}" />
|
||
|
</loop>
|
||
|
</tab>
|
||
|
<!-- TAB TVDBINFO -->
|
||
|
<tab condition="{isseries}" name="TvDBInfo" x="2%" y="25%" width="94%" height="60%" layer="2" scrollheight="{areaheight}/4">
|
||
|
<drawimage name="banner" imagetype="image" path="{seriesbanner1path}" align="center" y="10" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {seriesbanner1height} / {seriesbanner1width}"/>
|
||
|
<drawimage name="episodeimage" imagetype="image" path="{episodeimagepath}" x="{areawidth}*0.7" y="{height(banner)} + 20" width="{areawidth}*0.3" height="{areawidth} * 0.3 * {episodeimageheight} / {episodeimagewidth}"/>
|
||
|
<drawimage name="seasonposter" imagetype="image" path="{seasonposterpath}" x="{areawidth}*0.7" y="{height(banner)} + {height(episodeimage)} + 30" width="{areawidth}*0.3" height="{areawidth} * 0.3 * {seasonposterheight} / {seasonposterwidth}"/>
|
||
|
<drawtextbox x="0" y="{height(banner)} + 20" width="96%" float="topright" floatwidth="{width(seasonposter)} + 10" floatheight="{height(episodeimage)} + {height(seasonposter)} + 30" font="{vdrOsd}" fontsize="6%" color="{clrWhite}" text="{tr(episode)}: {episodetitle} ({tr(season)} {episodeseason}, {tr(episode)} {episodenumber}) {episodeoverview}| {tr(gueststars)}: {episodegueststars}|| {tr(seriesfirstaired)}: {seriesfirstaired}|| {tr(episodefirstaired)}: {episodefirstaired}|| {tr(network)}: {seriesnetwork}|| {tr(genre)}: {seriesgenre}|| {tr(status)}: {seriesstatus}|| {tr(rating)}: {seriesrating}|| {tr(episoderating)}: {episoderating} |{seriesoverview} " />
|
||
|
</tab>
|
||
|
<!-- TAB SERIESGALERY -->
|
||
|
<tab condition="{isseries}" name="{tr(seriesgalery)}" x="2%" y="25%" width="94%" height="60%" layer="2" scrollheight="{areaheight}/4">
|
||
|
<drawimage name="banner1" imagetype="image" path="{seriesbanner1path}" align="center" y="10" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {seriesbanner1height} / {seriesbanner1width}"/>
|
||
|
<drawimage name="fanart1" imagetype="image" path="{seriesfanart1path}" align="center" y="{posy(banner1)} + {height(banner1)} + 20" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {seriesfanart1height} / {seriesfanart1width}"/>
|
||
|
<drawimage name="banner2" imagetype="image" path="{seriesbanner2path}" align="center" y="{posy(fanart1)} + {height(fanart1)} + 20" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {seriesbanner2height} / {seriesbanner2width}"/>
|
||
|
<drawimage name="fanart2" imagetype="image" path="{seriesfanart2path}" align="center" y="{posy(banner2)} + {height(banner2)} + 20" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {seriesfanart2height} / {seriesfanart2width}"/>
|
||
|
<drawimage name="banner3" imagetype="image" path="{seriesbanner3path}" align="center" y="{posy(fanart2)} + {height(fanart2)} + 20" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {seriesbanner3height} / {seriesbanner3width}"/>
|
||
|
<drawimage name="fanart3" imagetype="image" path="{seriesfanart3path}" align="center" y="{posy(banner3)} + {height(banner3)} + 20" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {seriesfanart3height} / {seriesfanart3width}"/>
|
||
|
<drawimage name="poster1" imagetype="image" path="{seriesposter1path}" align="center" y="{posy(fanart3)} + {height(fanart3)} + 20" width="{areawidth}*0.5" height="{areawidth} * 0.5 * {seriesposter1height} / {seriesposter1width}"/>
|
||
|
<drawimage name="poster2" imagetype="image" path="{seriesposter2path}" align="center" y="{posy(poster1)} + {height(poster1)} + 20" width="{areawidth}*0.5" height="{areawidth} * 0.5 * {seriesposter2height} / {seriesposter2width}"/>
|
||
|
<drawimage name="poster3" imagetype="image" path="{seriesposter3path}" align="center" y="{posy(poster2)} + {height(poster2)} + 20" width="{areawidth}*0.5" height="{areawidth} * 0.5 * {seriesposter3height} / {seriesposter3width}"/>
|
||
|
</tab>
|
||
|
<!-- TAB MOVIEDBINFO -->
|
||
|
<tab condition="{ismovie}" name="MovieDBInfo" x="2%" y="25%" width="94%" height="60%" layer="2" scrollheight="{areaheight}/4">
|
||
|
<drawimage name="poster" imagetype="image" path="{posterpath}" x="70%" y="10" width="{areawidth}*0.3" height="{areawidth} * 0.3 * {posterheight} / {posterwidth}"/>
|
||
|
<drawtextbox x="0" y="10" width="96%" float="topright" floatwidth="{width(poster)} + 10" floatheight="{height(poster)} + 20" font="{vdrOsd}" fontsize="8%" color="{clrWhite}" text="{tr(originaltitle)}: {movieoriginalTitle} |{tr(genre)}: {moviegenres} ||{movietagline} |{movieoverview} |{tr(budget)}: {moviebudget} ||{tr(revenue)}: {movierevenue} ||{tr(adult)}: {movieadult} ||{tr(releasedate)}: {moviereleasedate} ||{tr(runtime)}: {movieruntime} min || {tr(popularity)}: {moviepopularity} || {tr(voteaverage)}: {movievoteaverage} || {tr(homepage)}: {moviehomepage}| " />
|
||
|
</tab>
|
||
|
<!-- TAB MOVIEGALERY -->
|
||
|
<tab condition="{ismovie}" name="{tr(moviegalery)}" x="2%" y="25%" width="94%" height="60%" layer="2" scrollheight="{areaheight}/4">
|
||
|
<drawimage name="fanart" imagetype="image" path="{fanartpath}" align="center" y="10" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {fanartheight} / {fanartwidth}"/>
|
||
|
<drawimage name="poster" imagetype="image" path="{posterpath}" align="center" y="{height(fanart)} + 30" width="{areawidth}*0.6" height="{areawidth} * 0.6 * {posterheight} / {posterwidth}"/>
|
||
|
<drawimage condition="{movieiscollection}" name="collectionfanart" imagetype="image" path="{collectionfanartpath}" align="center" y="{posy(poster)} + {height(poster)} + 20" width="{areawidth}*0.9" height="{areawidth} * 0.9 * {collectionfanartheight} / {collectionfanartwidth}"/>
|
||
|
<drawimage condition="{movieiscollection}" name="collectionposter" imagetype="image" path="{collectionposterpath}" align="center" y="{posy(collectionfanart)} + {height(collectionfanart)} + 20" width="{areawidth}*0.6" height="{areawidth} * 0.6 * {collectionposterheight} / {collectionposterwidth}"/>
|
||
|
</tab>
|
||
|
<!-- Available Variables tablabels:
|
||
|
{tabs[]} array with available tab labels
|
||
|
{tabs[title]} title of tab
|
||
|
{tabs[current]} true if tab is displayed currently
|
||
|
-->
|
||
|
<tablabels>
|
||
|
<area x="1%" y="85%" width="98%" height="5%" layer="3">
|
||
|
<loop name="tabs" x="0" y="0" orientation="horizontal">
|
||
|
<drawrectangle condition="{tabs[current]}" x="0" y="0" width="{width(label)}" height="100%" color="{clrDarkGreen}" />
|
||
|
<drawrectangle condition="not{tabs[current]}" x="0" y="0" width="{width(label)}" height="100%" color="{clrDarkGreen}" />
|
||
|
<drawrectangle condition="not{tabs[current]}" x="2" y="2" width="{width(label)} - 4" height="{areaheight}-4" color="{clrTransparent}" />
|
||
|
<drawtext name="label" x="0" valign="center" font="{vdrOsd}" fontsize="95%" color="{clrWhite}" text=" {tabs[title]} " />
|
||
|
</loop>
|
||
|
</area>
|
||
|
</tablabels>
|
||
|
</menudetailedepg>
|