datenspuren mitschnitte: implement <include-feeds> from media.ccc.de

This commit is contained in:
Astro 2015-10-25 11:31:16 +01:00
parent 644561c9f9
commit 06de519935
3 changed files with 63 additions and 4 deletions

View File

@ -272,6 +272,18 @@ build/news/%.html: content/news/%.xml $(STYLE) $(NAVIGATION) $(DATESTAMP)
# Datenspuren
# As of 2015-10-25 all these feeds contain just .mp4 files:
DS_FEEDS=datenspuren-2015-mp4.xml #datenspuren-2015-webm.xml datenspuren-2015-opus.xml datenspuren-2015-mp3.xml
datenspuren-2015-mp4.xml:
$(WGET) -O $@ https://media.ccc.de/podcast/conferences%2Fdatenspuren%2F2015/mp4
#datenspuren-2015-webm.xml:
# $(WGET) -O $@ https://media.ccc.de/podcast/conferences%2Fdatenspuren%2F2015/webm
#datenspuren-2015-opus.xml:
# $(WGET) -O $@ https://media.ccc.de/podcast/conferences%2Fdatenspuren%2F2015/opus
#datenspuren-2015-mp3.xml:
# $(WGET) -O $@ https://media.ccc.de/podcast/conferences%2Fdatenspuren%2F2015/mp3
build/datenspuren/$(DS_YEAR)/schedule-%.raw.xml: content/static/datenspuren/$(DS_YEAR)/fahrplan/schedule/%.html scripts/hyphenate.sed $(DATESTAMP)
scripts/hyphenate.sed < $< > $@
build/datenspuren/$(DS_YEAR)/schedule-%.xml : VFLAGS_IN=$(VFLAGS) --html
@ -281,7 +293,7 @@ build/datenspuren/$(DS_YEAR)/schedule-%.xml: build/datenspuren/$(DS_YEAR)/schedu
$(call xml_process)
build/datenspuren/$(DS_YEAR)/%html : STYLE=$(DS_STYLE)
build/datenspuren/$(DS_YEAR)/%.html: content/datenspuren/%.xml $(DS_STYLE) news.xml $(DS_SCHEDULE)
build/datenspuren/$(DS_YEAR)/%.html: content/datenspuren/%.xml $(DS_STYLE) news.xml $(DS_SCHEDULE) $(DS_FEEDS)
$(call xml_process)
build/datenspuren/$(DS_YEAR)/news-rss.xml : STYLE=xsl/rss.xsl

View File

@ -21,8 +21,15 @@
</p>
<p title="Datenspuren 2015" id="ds2015">
Erscheinen <link href="https://media.ccc.de/c/ds2015">auf media.ccc.de</link>
Übernommen durch das <link href="http://c3voc.de/">CCC Video Operation Center</link>,
erscheinen <link href="https://media.ccc.de/c/ds2015">auf media.ccc.de</link>.
</p>
<include-feeds>
<feed>../../datenspuren-2015-mp4.xml</feed>
<!-- <feed>../../datenspuren-2015-webm.xml</feed> -->
<!-- <feed>../../datenspuren-2015-opus.xml</feed> -->
<!-- <feed>../../datenspuren-2015-mp3.xml</feed> -->
</include-feeds>
<p title="Datenspuren 2014" id="ds2014">
<link href="http://datenspuren.de/2014/mitschnitte-rss.xml">Podcast-Feed</link>

View File

@ -3,7 +3,9 @@
xmlns="http://www.w3.org/1999/xhtml"
xmlns:date="http://exslt.org/dates-and-times"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="xsl date">
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
exclude-result-prefixes="xsl date dc itunes">
<xsl:include href="../common.xsl" />
@ -262,5 +264,43 @@
</span>
</xsl:template>
</xsl:stylesheet>
<xsl:template match="include-feeds">
<xsl:variable name="feeds" select="."/>
<xsl:for-each select="feed[1]">
<xsl:for-each select="document(.)/rss/channel/item">
<xsl:variable name="identifier" select="dc:identifier"/>
<xsl:variable name="title" select="substring-after(title, ': ')"/>
<xsl:variable name="preview"
select="concat('https://static.media.ccc.de/media/events/datenspuren/2015/',
substring-before(substring-after(link ,'/datenspuren15-'), '-'),
'-sd_preview.jpg')"/>
<section class="resource">
<h4><xsl:value-of select="$title"/></h4>
<div class="preview">
<img src="{$preview}" title="$title"/>
</div>
<ul class="links">
<xsl:for-each select="$feeds/feed">
<xsl:for-each select="document(.)/rss/channel/item[dc:identifier = $identifier]/enclosure">
<li>
<a href="{@url}" type="{@type}">
<xsl:call-template name="mime-for-human-short">
<xsl:with-param name="mime" select="@type"/>
</xsl:call-template>
</a>
</li>
</xsl:for-each>
</xsl:for-each>
<li>
<span class="size">
<xsl:value-of select="itunes:duration"/>
</span>
</li>
</ul>
</section>
</xsl:for-each>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>