Schnuppertauchgang

C3D2-Web

C3D2 Lightning Talks

2013-02-12

Was ist C3D2-Web?

Check it out:

git clone http://www.c3d2.de/c3d2-web.git &&
cd c3d2-web &&
make -j3 &&
x-www-browser www/news.html

Dependencies: make, xsltproc, rsync

(Prä-)historisches (1/2)

(Prä-)historisches (2/2)

Historisches

Ran an den Code!

Wichtigste Frage:

Where's the content?

c3d2-web % ls content/
datenspuren/
events.xml
navigation.xml
news/
old-site/
pages/
static/

Bauen!

make

Navigation

content/navigation.xml

<?xml version="1.0" encoding="UTF-8"?>

<!--
When changing the position of these files in the navigation sidebar,
please adjust the #navigation li:nth-child(...) rules in the CSS file.
-->
<navigation>
  <file title="News">news</file>
  <file>whois</file>
  <file>treff</file>
  <file>themenabende</file>
  <file>events</file>
  <file>schule</file>

  <file>kontakt</file>
  <file>mailingliste</file>
  <file>muc</file>
  <file>wiki</file>

  <file>radio</file>
  <file>podcast</file>
  <file>pentamusic</file>

  <file>shop</file>
  <file>warez</file>
</navigation>

Pages (1/3)

Pages (2/3)

Dank XML ist auch XHTML erlaubt. Beispiel content/news/event-tpb-afk.xml:

<iframe xmlns="http://www.w3.org/1999/xhtml"
        src="http://www.youtube-nocookie.com/embed/KCAGb7oSwDs" 
        width="640" height="360" 
        frameborder="0" allowfullscreen="allowfullscreen">
</iframe>

Pages (2/3)

Spezielle Funktionalitäten in XSLT implementiert:

content/pages/events.xml
<news-list prefix="event-" details="event"/>
content/pages/themenabende.xml
<news-list prefix="ta-" details="event"/>
content/pages/radio.xml
<news-list prefix="pentaradio24-" details="resources-only"/>
content/pages/podcast.xml
<news-list prefix="pentacast-" details="resources-only"/>

News (1/2)

News (2/2)

Veröffentlichung von Multimedia

Kalender (1/2)

Kalender (2/2)

Statisch und trotzdem interaktiv

Committing to C3D2-Web

Committed to C3D2-Web