<resource/> für Downloaddaten auf der Website und Enclosures in RSS/ATOM (auch in der DTD!11)
scripts/ftp_to_resources.rb als kleine Hilfe für Bulk-resources resources für DS2005-, DS2006- und Pentaradio-Mitschnitte git-svn-id: svn://svn.c3d2.de/c3d2-web/trunk@405 31f61c52-7bfb-0310-b897-fc00f8a278f0
This commit is contained in:
parent
5a92911542
commit
c384cafa1d
|
@ -6,4 +6,19 @@
|
||||||
<p>
|
<p>
|
||||||
Alle <link href="http://datenspuren.dresden.ccc.de/">Datenspuren</link> Audio-Mitschnitte endlich zum Download. Per ftp über <link>ftp://ftp.skyhub.de/datenspuren/2005/</link>.
|
Alle <link href="http://datenspuren.dresden.ccc.de/">Datenspuren</link> Audio-Mitschnitte endlich zum Download. Per ftp über <link>ftp://ftp.skyhub.de/datenspuren/2005/</link>.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
<resource hide="yes" title="050508 datenspuren 01 Keynote Reinhard Wobst.ogg" size="17651000" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 01 Keynote Reinhard Wobst.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 02 TKÜV Hannah Seiffert.ogg" size="14730176" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 02 TKÜV Hannah Seiffert.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 03 Vorratsdatenspeicherung Hannah Seiffert.ogg" size="8910305" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 03 Vorratsdatenspeicherung Hannah Seiffert.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 04 Biometrie Technik starbug.ogg" size="8429893" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 04 Biometrie Technik starbug.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 05 Biometrie Politik starbug.ogg" size="19115597" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 05 Biometrie Politik starbug.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 06 Überwachungskameras Peter Bittner.ogg" size="24321063" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 06 Überwachungskameras Peter Bittner.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 07 Überwachungskameras Padeluun.ogg" size="18617513" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 07 Überwachungskameras Padeluun.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 08 AnOn Stefan Köpsell.ogg" size="29948158" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 08 AnOn Stefan Köpsell.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 09 Identitätsmanagement Henry Krasemann.ogg" size="20936154" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 09 Identitätsmanagement Henry Krasemann.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 10 Toll Collect Volker Birk.ogg" size="23891188" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 10 Toll Collect Volker Birk.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 11 RFID Frank Rosengart.ogg" size="22516888" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 11 RFID Frank Rosengart.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 12 mobilfunk abhören - lokalisieren Frank Rieger.ogg" size="31418886" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 12 mobilfunk abhören - lokalisieren Frank Rieger.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspuren 13 Podium.ogg" size="30693292" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspuren 13 Podium.ogg</resource>
|
||||||
|
<resource hide="yes" title="050508 datenspurn anonymizer-workshop.ogg" size="39940823" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2005/050508 datenspurn anonymizer-workshop.ogg</resource>
|
||||||
</item>
|
</item>
|
||||||
|
|
|
@ -16,4 +16,18 @@
|
||||||
Einen Bericht mit vielen Interviews von <link href="http://www.rdl.de/">Radio Dreyeckland aus Freiburg</link> gibts bei Chaosradio: <link>http://chaosradio.ccc.de/ctv043.html</link>
|
Einen Bericht mit vielen Interviews von <link href="http://www.rdl.de/">Radio Dreyeckland aus Freiburg</link> gibts bei Chaosradio: <link>http://chaosradio.ccc.de/ctv043.html</link>
|
||||||
</p>
|
</p>
|
||||||
</addendum>
|
</addendum>
|
||||||
|
|
||||||
|
<resource hide="yes" title="c3d2 060513 Tauss informationsfreiheitsgesetz Debatte.ogg" size="7965260" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060513 Tauss informationsfreiheitsgesetz Debatte.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060513 hefendehl datendammbrueche.ogg" size="17410548" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060513 hefendehl datendammbrueche.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060513 ohlig zensur in china - debatte.ogg" size="3687197" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060513 ohlig zensur in china - debatte.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060513 ohlig zensur in china.ogg" size="16712397" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060513 ohlig zensur in china.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060513 rieger+gonggrijp lost the war.ogg" size="31054136" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060513 rieger+gonggrijp lost the war.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060513 tauss Zwischenruf zur Vorratsdatenspeicherung.ogg" size="1250586" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060513 tauss Zwischenruf zur Vorratsdatenspeicherung.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060513 tauss informationsfreiheitsgesetz.ogg" size="12198052" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060513 tauss informationsfreiheitsgesetz.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060514 ThoMaus Gesundheitskarte08.ogg" size="59629363" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060514 ThoMaus Gesundheitskarte08.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060514 abschlussreden.ogg" size="2897652" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060514 abschlussreden.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060514 donnerhacke dns.ogg" size="28467873" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060514 donnerhacke dns.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060514 freude telemediengesetz.ogg" size="23567280" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060514 freude telemediengesetz.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060514 koepsel aufenthaltsdaten.ogg" size="24822234" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060514 koepsel aufenthaltsdaten.ogg</resource>
|
||||||
|
<resource hide="yes" title="c3d2 060514 rieger vorratsdatenspeicherung.ogg" size="18744992" type="application/ogg">ftp://ftp.skyhub.de/datenspuren/2006/c3d2 060514 rieger vorratsdatenspeicherung.ogg</resource>
|
||||||
</item>
|
</item>
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
<?xml-stylesheet type="text/xsl" href="../../xsl/html.xsl" ?>
|
<?xml-stylesheet type="text/xsl" href="../../xsl/html.xsl" ?>
|
||||||
<item title="RadioAbschalten!-Mitschnitt online" date="2006-06-09T14:59:23" author="pentaradio24-studios" category="(((c3d2)))">
|
<item title="RadioAbschalten!-Mitschnitt online" date="2006-06-09T14:59:23" author="pentaradio24-studios" category="(((c3d2)))">
|
||||||
<p>
|
<p>
|
||||||
Der Mitschnitt vom gestrigen RadioAbschalten!, produced by pentaradio24-studios, findet sich jetzt online unter <link>http://www.psycast.de/audio/c3d2-coloRadio-08062006.ogg</link>. Viel Spass beim Zuhören und ab August gibt es uns dann vorraussichtlich monatlich drei Stunden.
|
Der Mitschnitt vom gestrigen RadioAbschalten!, produced by pentaradio24-studios, findet sich jetzt online. Viel Spass beim Zuhören und ab August gibt es uns dann vorraussichtlich monatlich drei Stunden.
|
||||||
</p>
|
</p>
|
||||||
|
<resource title="c3d2-coloRadio-08062006.ogg" size="57299238" type="application/ogg">http://www.psycast.de/audio/c3d2-coloRadio-08062006.ogg</resource>
|
||||||
</item>
|
</item>
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<!ELEMENT news (newsfile)+>
|
<!ELEMENT news (newsfile)+>
|
||||||
<!ELEMENT newsfile (#PCDATA)>
|
<!ELEMENT newsfile (#PCDATA)>
|
||||||
|
|
||||||
<!ELEMENT item ((image)?, (%Block;)*, (addendum)?)>
|
<!ELEMENT item ((image)?, (%Block;)*, (addendum)?, (resource)*)>
|
||||||
<!ATTLIST item
|
<!ATTLIST item
|
||||||
title CDATA #REQUIRED
|
title CDATA #REQUIRED
|
||||||
date CDATA #REQUIRED
|
date CDATA #REQUIRED
|
||||||
|
@ -23,6 +23,14 @@
|
||||||
|
|
||||||
<!ELEMENT addendum (%Block;)*>
|
<!ELEMENT addendum (%Block;)*>
|
||||||
|
|
||||||
|
<!ELEMENT resource (#PCDATA)>
|
||||||
|
<!ATTLIST resource
|
||||||
|
size CDATA #REQUIRED
|
||||||
|
type CDATA #REQUIRED
|
||||||
|
hide (yes|no) #IMPLIED
|
||||||
|
title CDATA #IMPLIED
|
||||||
|
>
|
||||||
|
|
||||||
<!ELEMENT p %Inline;>
|
<!ELEMENT p %Inline;>
|
||||||
<!ATTLIST p
|
<!ATTLIST p
|
||||||
class CDATA #IMPLIED
|
class CDATA #IMPLIED
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
require 'uri'
|
||||||
|
require 'net/ftp'
|
||||||
|
|
||||||
|
if ARGV.size != 1
|
||||||
|
puts "Usage: #{$0} ftp://ftp.skyhub.de/foo/bar/baz/"
|
||||||
|
exit
|
||||||
|
end
|
||||||
|
|
||||||
|
uri = URI::parse(ARGV[0])
|
||||||
|
files = {}
|
||||||
|
|
||||||
|
Net::FTP.open(uri.host) { |ftp|
|
||||||
|
ftp.passive = true
|
||||||
|
ftp.login
|
||||||
|
ftp.chdir(uri.path)
|
||||||
|
ftp.list.each { |line|
|
||||||
|
chunks = line.split(' ', 9)
|
||||||
|
size, name = chunks[4], chunks[8]
|
||||||
|
files[name] = size.to_i
|
||||||
|
}
|
||||||
|
ftp.close
|
||||||
|
}
|
||||||
|
|
||||||
|
files.sort { |a,b| a.first <=> b.first }.each { |name,size|
|
||||||
|
puts "<resource title=\"#{name}\" size=\"#{size}\" type=\"application/ogg\">#{uri}#{name}</resource>"
|
||||||
|
}
|
|
@ -56,6 +56,14 @@
|
||||||
<xsl:apply-templates/>
|
<xsl:apply-templates/>
|
||||||
</div>
|
</div>
|
||||||
</content>
|
</content>
|
||||||
|
<xsl:for-each select="resource">
|
||||||
|
<link
|
||||||
|
rel="enclosure"
|
||||||
|
href="{.}"
|
||||||
|
type="{@type}"
|
||||||
|
length="{@size}"
|
||||||
|
/>
|
||||||
|
</xsl:for-each>
|
||||||
</entry>
|
</entry>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
</xsl:stylesheet>
|
</xsl:stylesheet>
|
||||||
|
|
|
@ -86,6 +86,10 @@
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
<!-- Resources gehören nicht zum generellen Artikeltext
|
||||||
|
und kommen explizit danach -->
|
||||||
|
<xsl:template match="resource"/>
|
||||||
|
|
||||||
<xsl:template name="navitem">
|
<xsl:template name="navitem">
|
||||||
<xsl:param name="file"/>
|
<xsl:param name="file"/>
|
||||||
<xsl:param name="baseurl"/>
|
<xsl:param name="baseurl"/>
|
||||||
|
|
15
xsl/rss.xsl
15
xsl/rss.xsl
|
@ -43,6 +43,19 @@
|
||||||
<author><xsl:value-of select="@author"/></author>
|
<author><xsl:value-of select="@author"/></author>
|
||||||
<category><xsl:value-of select="@category"/></category>
|
<category><xsl:value-of select="@category"/></category>
|
||||||
<pubDate><xsl:value-of select="@date"/></pubDate>
|
<pubDate><xsl:value-of select="@date"/></pubDate>
|
||||||
|
<!--
|
||||||
|
TODO:
|
||||||
|
Jemand mit iTunes (erhältlich für OSX und Windows)
|
||||||
|
muss mal die itunes-extensions einbauen:
|
||||||
|
http://www.apple.com/itunes/podcasts/techspecs.html
|
||||||
|
-->
|
||||||
|
<xsl:for-each select="resource">
|
||||||
|
<enclosure
|
||||||
|
url="{.}"
|
||||||
|
length="{@size}"
|
||||||
|
type="{@type}"
|
||||||
|
/>
|
||||||
|
</xsl:for-each>
|
||||||
</item>
|
</item>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
@ -64,4 +77,6 @@
|
||||||
<xsl:otherwise>href="<xsl:value-of select="."/>"</xsl:otherwise>
|
<xsl:otherwise>href="<xsl:value-of select="."/>"</xsl:otherwise>
|
||||||
</xsl:choose>><xsl:apply-templates mode="escaped"/></a>
|
</xsl:choose>><xsl:apply-templates mode="escaped"/></a>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template match="resource" mode="escaped"/>
|
||||||
</xsl:stylesheet>
|
</xsl:stylesheet>
|
||||||
|
|
|
@ -135,6 +135,10 @@
|
||||||
</xsl:if>
|
</xsl:if>
|
||||||
|
|
||||||
<xsl:apply-templates/>
|
<xsl:apply-templates/>
|
||||||
|
|
||||||
|
<xsl:call-template name="include-resources">
|
||||||
|
<xsl:with-param name="include-hidden">yes</xsl:with-param>
|
||||||
|
</xsl:call-template>
|
||||||
</div> <!-- id="content" -->
|
</div> <!-- id="content" -->
|
||||||
|
|
||||||
<!-- ### News ### -->
|
<!-- ### News ### -->
|
||||||
|
@ -189,6 +193,10 @@
|
||||||
<xsl:with-param name="itemposition" select="$itemposition"/>
|
<xsl:with-param name="itemposition" select="$itemposition"/>
|
||||||
</xsl:apply-templates>
|
</xsl:apply-templates>
|
||||||
|
|
||||||
|
<xsl:call-template name="include-resources">
|
||||||
|
<xsl:with-param name="include-hidden">no</xsl:with-param>
|
||||||
|
</xsl:call-template>
|
||||||
|
|
||||||
<xsl:if test="//addendum">
|
<xsl:if test="//addendum">
|
||||||
<p>
|
<p>
|
||||||
<a href="{substring-before(substring-after($newsfile, 'content/'), '.xml')}.html">
|
<a href="{substring-before(substring-after($newsfile, 'content/'), '.xml')}.html">
|
||||||
|
@ -221,6 +229,44 @@
|
||||||
</xsl:element>
|
</xsl:element>
|
||||||
</xsl:template>
|
</xsl:template>
|
||||||
|
|
||||||
|
<xsl:template name="include-resources">
|
||||||
|
<xsl:param name="include-hidden"/>
|
||||||
|
<xsl:choose>
|
||||||
|
<xsl:when test="$include-hidden='yes'">
|
||||||
|
<xsl:if test="resource">
|
||||||
|
<ul>
|
||||||
|
<xsl:for-each select="resource">
|
||||||
|
<li>
|
||||||
|
<a href="{.}" type="{@type}">
|
||||||
|
<xsl:choose>
|
||||||
|
<xsl:when test="@title"><xsl:value-of select="@title"/></xsl:when>
|
||||||
|
<xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
|
||||||
|
</xsl:choose>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</xsl:for-each>
|
||||||
|
</ul>
|
||||||
|
</xsl:if>
|
||||||
|
</xsl:when>
|
||||||
|
<xsl:otherwise>
|
||||||
|
<xsl:if test="resource[not(@hide='yes')]">
|
||||||
|
<ul>
|
||||||
|
<xsl:for-each select="resource[not(@hide='yes')]">
|
||||||
|
<li>
|
||||||
|
<a href="{.}" type="{@type}">
|
||||||
|
<xsl:choose>
|
||||||
|
<xsl:when test="@title"><xsl:value-of select="@title"/></xsl:when>
|
||||||
|
<xsl:otherwise><xsl:value-of select="."/></xsl:otherwise>
|
||||||
|
</xsl:choose>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</xsl:for-each>
|
||||||
|
</ul>
|
||||||
|
</xsl:if>
|
||||||
|
</xsl:otherwise>
|
||||||
|
</xsl:choose>
|
||||||
|
</xsl:template>
|
||||||
|
|
||||||
<xsl:template match="item/image">
|
<xsl:template match="item/image">
|
||||||
<xsl:param name="itemposition"/>
|
<xsl:param name="itemposition"/>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue