fix chapter titles in toc
[librarian.git] / librarian / epub / xsltContent.xsl
index 548bcb7..24315c5 100644 (file)
@@ -1,46 +1,67 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dc="http://purl.org/dc/elements/1.1/">\r
-  <xsl:output method="html" version="1.0" omit-xml-declaration="no" />\r
-\r
-  <xsl:template match="/">\r
-    <package xmlns="http://www.idpf.org/2007/opf" unique-identifier="BookId" version="2.0">\r
-      <metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:opf="http://www.idpf.org/2007/opf">\r
-        <xsl:apply-templates select="//dc:title" />\r
-        <dc:language xsi:type="dcterms:RFC3066">\r
-          <xsl:apply-templates select="//dc:language" />\r
-        </dc:language>\r
-        <dc:identifier id="BookId" opf:scheme="URI">\r
-          <xsl:apply-templates select="//dc:identifier.url" />\r
-        </dc:identifier>\r
-        <dc:subject>\r
-          <xsl:apply-templates select="//dc:identifier.url" />\r
-        </dc:subject>\r
-        <dc:creator>\r
-          <xsl:apply-templates select="//dc:creator" />\r
-        </dc:creator>\r
-        <dc:publisher>\r
-          <xsl:apply-templates select="//dc:publisher" />\r
-        </dc:publisher>\r
-        <dc:date xsi:type="dcterms:W3CDTF">\r
-          <xsl:apply-templates select="//dc:date" />\r
-        </dc:date>\r
-      </metadata>\r
-      <manifest>\r
-        <item id="toc" href="toc.ncx" media-type="application/x-dtbncx+xml" />\r
-        <item id="style" href="style.css" media-type="text/css" />\r
-        <item id="titlePage" href="title.html" media-type="application/xhtml+xml" />\r
-        <item id="logo_wolnelektury" href="logo_wolnelektury.png" media-type="image/png" />\r
-      </manifest>\r
-      <spine toc="toc">\r
-        <itemref idref="titlePage" />\r
-      </spine>\r
-    </package>\r
-  </xsl:template>\r
-\r
-  <xsl:template match="dc:title" >\r
-    <dc:title>\r
-      <xsl:value-of select="." />\r
-    </dc:title>\r
-  </xsl:template>\r
-\r
-</xsl:stylesheet>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:wl="http://wolnelektury.pl/functions">
+  <xsl:output method="html" version="1.0" omit-xml-declaration="no" />
+
+  <xsl:template match="/">
+    <package xmlns="http://www.idpf.org/2007/opf" unique-identifier="BookId" version="2.0">
+      <metadata xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:opf="http://www.idpf.org/2007/opf">
+        <xsl:apply-templates select="//dc:title" />
+        <dc:language>
+          <xsl:apply-templates select="//dc:language" mode="language" />
+        </dc:language>
+        <dc:identifier id="BookId" opf:scheme="URI">
+          <xsl:apply-templates select="//dc:identifier.url" />
+        </dc:identifier>
+        <dc:subject>
+          <xsl:apply-templates select="//dc:identifier.url" />
+        </dc:subject>
+        <dc:creator opf:role="aut">
+          <xsl:attribute name="opf:file-as">
+            <xsl:value-of select="//dc:creator" />
+          </xsl:attribute>
+          <xsl:for-each select="//dc:creator/text()">
+              <xsl:value-of select="wl:person_name(.)"/>
+              <xsl:if test="not(position() = last())">, </xsl:if>
+          </xsl:for-each>
+        </dc:creator>
+        <dc:publisher>
+          <xsl:for-each select="//dc:publisher/text()">
+            <xsl:value-of select="."/>
+            <xsl:if test="not(position() = last())">; </xsl:if>
+          </xsl:for-each>
+        </dc:publisher>
+        <dc:date opf:event="publication">
+          <xsl:apply-templates select="//dc:date" />
+        </dc:date>
+      </metadata>
+      <manifest>
+        <item id="toc" href="toc.ncx" media-type="application/x-dtbncx+xml" />
+        <item id="style" href="style.css" media-type="text/css" />
+        <item id="titlePage" href="title.html" media-type="application/xhtml+xml" />
+        <item id="logo_wolnelektury" href="logo_wolnelektury.png" media-type="image/png" />
+        <item id="jedenprocent" href="jedenprocent.png" media-type="image/png" />
+      </manifest>
+      <spine toc="toc">
+        <itemref idref="titlePage" />
+      </spine>
+      <guide>
+        <reference type="text" title="PoczÄ…tek" href="part1.html" />
+      </guide>
+    </package>
+  </xsl:template>
+
+  <xsl:template match="dc:title" >
+    <dc:title>
+      <xsl:value-of select="." />
+    </dc:title>
+  </xsl:template>
+  
+  <xsl:template match="text()" mode="person">
+    <xsl:value-of select="wl:person_name(.)" />
+  </xsl:template>
+  
+  <xsl:template match="text()" mode="language">
+    <xsl:value-of select="wl:lang_code_3to2(.)" />
+  </xsl:template>
+
+</xsl:stylesheet>