fix for empty editors
[librarian.git] / librarian / xslt / book2txt.xslt
index cb74ed9..604b8bd 100755 (executable)
@@ -1,28 +1,13 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-#
-#    This file is part of Librarian.
-#
-#    Copyright © 2008,2009,2010 Fundacja Nowoczesna Polska <fundacja@nowoczesnapolska.org.pl>
-#    
-#    For full list of contributors see AUTHORS file. 
-#
-#    This program is free software: you can redistribute it and/or modify
-#    it under the terms of the GNU Affero General Public License as published by
-#    the Free Software Foundation, either version 3 of the License, or
-#    (at your option) any later version.
-#
-#    This program is distributed in the hope that it will be useful,
-#    but WITHOUT ANY WARRANTY; without even the implied warranty of
-#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-#    GNU Affero General Public License for more details.
-#
-#    You should have received a copy of the GNU Affero General Public License
-#    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
+   This file is part of Librarian, licensed under GNU Affero GPLv3 or later.
+   Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+  
 -->
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
-    xmlns:wl="http://wolnelektury.pl/functions" >
+    xmlns:wl="http://wolnelektury.pl/functions"
+    xmlns:dc="http://purl.org/dc/elements/1.1/" >
 
 <xsl:output encoding="utf-8" method="text" />
 
 <!-- = (can contain block tags, paragraph tags, standalone tags and special tags) = -->
 <!-- ============================================================================== -->
 <xsl:template match="powiesc|opowiadanie|liryka_l|liryka_lp|dramat_wierszowany_l|dramat_wierszowany_lp|dramat_wspolczesny">
-<xsl:if test="nazwa_utworu"><xsl:apply-templates select="autor_utworu|dzielo_nadrzedne|nazwa_utworu|podtytul" mode="header" /></xsl:if>
+<xsl:if test="nazwa_utworu">
+    <xsl:apply-templates select="autor_utworu|dzielo_nadrzedne|nazwa_utworu|podtytul" mode="header" />
+    <xsl:call-template name="translators" />
+    <xsl:text>
+</xsl:text>
+</xsl:if>
+<xsl:apply-templates />
 <xsl:text>
 
 </xsl:text>
-<xsl:apply-templates />
 </xsl:template>
 
 
 <!-- ========================================== -->
 <!-- Title page -->
 <xsl:template match="autor_utworu" mode="header">
+<xsl:apply-templates mode="inline" />
 <xsl:text>
 
 </xsl:text>
-<xsl:apply-templates mode="inline" />
 </xsl:template>
 
 <xsl:template match="nazwa_utworu" mode="header">
+<xsl:apply-templates mode="inline" />
 <xsl:text>
-
 </xsl:text>
-<xsl:apply-templates mode="inline" />
 </xsl:template>
 
 <xsl:template match="dzielo_nadrzedne" mode="header">
+<xsl:apply-templates mode="inline" />
 <xsl:text>
-    
 </xsl:text>
-<xsl:apply-templates mode="inline" />
 </xsl:template>
 
 <xsl:template match="podtytul" mode="header">
+<xsl:apply-templates mode="inline" />
 <xsl:text>
 </xsl:text>
-<xsl:apply-templates mode="inline" />
 </xsl:template>
 
 <!-- Section headers (included in index)-->
 
 <xsl:template match="motyw" mode="inline" />
 
+<xsl:template name="translators">
+    <xsl:if test="//dc:contributor.translator">
+        <text>tłum. </text>
+        <xsl:for-each select="//dc:contributor.translator/text()">
+            <xsl:if test="position() != 1">
+                <xsl:text>, </xsl:text>
+            </xsl:if>
+            <xsl:value-of select="wl:person_name(.)" />
+        </xsl:for-each>
+        <xsl:text>
+</xsl:text>
+    </xsl:if>
+</xsl:template>
+
 
 <!-- ================ -->
 <!-- = IGNORED TAGS = -->
 <xsl:template match="extra|uwaga" />
 <xsl:template match="extra|uwaga" mode="inline" />
 
+<xsl:template match="nota_red" />
 
 <!-- ======== -->
 <!-- = TEXT = -->