šablona/stránka-společné.xsl
changeset 87 25dec6931f18
parent 77 2f11f0ba6f13
child 126 be52f52e7d39
equal deleted inserted replaced
86:3136e1ad9a5b 87:25dec6931f18
    38 	
    38 	
    39 	<xsl:variable name="konfigurace" select="document(concat($vstup, 'web.conf'))"/>
    39 	<xsl:variable name="konfigurace" select="document(concat($vstup, 'web.conf'))"/>
    40 	
    40 	
    41 	<xsl:include href=".makra-seznam.xsl"/>
    41 	<xsl:include href=".makra-seznam.xsl"/>
    42 	
    42 	
    43 	<!-- 
    43 	<!--
    44 		Kopírujeme elementy, ale vynecháme nepoužité xmlns deklarace: 
    44 		Kopírujeme elementy, ale vynecháme nepoužité xmlns deklarace:
    45 	-->
    45 	-->
    46 	<xsl:template match="*">
    46 	<xsl:template match="*">
    47 		<xsl:element name="{name()}">
    47 		<xsl:element name="{name()}">
    48 			<xsl:copy-of select="@*"/>
    48 			<xsl:copy-of select="@*"/>
    49 			<xsl:apply-templates/>
    49 			<xsl:apply-templates/>
    50 		</xsl:element>
    50 		</xsl:element>
    51 	</xsl:template>
    51 	</xsl:template>
    52     
    52 
    53 	<!-- 
    53 	<!--
    54 		Varování pro případ, že jsme v režimu podpory pro zaostalé prohlížeče 
    54 		Varování pro případ, že jsme v režimu podpory pro zaostalé prohlížeče
    55 	-->
    55 	-->
    56 	<xsl:template name="varováníRetardace">
    56 	<xsl:template name="varováníRetardace">
    57 		<xsl:if test="$podporaZaostalýchProhlížečů">
    57 		<xsl:if test="$podporaZaostalýchProhlížečů">
    58 			<xsl:comment>
    58 			<xsl:comment>
    59 				Generátor byl spuštěn v režimu podpory zaostalých prohlížečů.
    59 				Generátor byl spuštěn v režimu podpory zaostalých prohlížečů.
    60 				Uživatelům doporučujeme upgrade na skutečný WWW prohlížeč,
    60 				Uživatelům doporučujeme upgrade na skutečný WWW prohlížeč,
    61 				jako je např. Firefox nebo Chromium (případně Opera či Safari).
    61 				jako je např. Firefox nebo Chromium (případně Opera či Safari).
    62 			</xsl:comment>
    62 			</xsl:comment>
    63 		</xsl:if>
    63 		</xsl:if>
    64 	</xsl:template>
    64 	</xsl:template>
    65 	
    65 
    66 	<!-- 
    66 	<!-- 
    67 		Odkazy na JavaScript a kaskádové styly 
    67 		Odkazy na JavaScript a kaskádové styly
    68 	-->    
    68 	-->    
    69 	<xsl:template match="k:web/k:js">    	
    69 	<xsl:template match="k:web/k:js">
    70 		<script src="{text()}" type="text/javascript">
    70 		<script src="{text()}" type="text/javascript">
    71 			<xsl:call-template name="varováníRetardace"/>
    71 			<xsl:call-template name="varováníRetardace"/>
    72 		</script>
    72 		</script>
    73 	</xsl:template>
    73 	</xsl:template>
    74 	<xsl:template match="k:web/k:css">
    74 	<xsl:template match="k:web/k:css">
    75 		<link href="{text()}" type="text/css" rel="StyleSheet" />
    75 		<link href="{text()}" type="text/css" rel="StyleSheet" />
    76 	</xsl:template>
    76 	</xsl:template>
    77     
    77 
    78     <!--
    78 	<!--
    79     	Vloží nečíslovaný seznam obsahující hlavní nabídku webu (seznam stránek)
    79 		Vloží nečíslovaný seznam obsahující hlavní nabídku webu (seznam stránek)
    80     	Pro potřeby CSS stylování má nabídka @id='nabídka'
    80 		Pro potřeby CSS stylování má nabídka @id='nabídka'
    81     -->
    81 	-->
    82 	<xsl:template name="vložNabídku">
    82 	<xsl:template name="vložNabídku">
    83 		<ul id="nabídka">
    83 		<ul id="nabídka">
    84 			<xsl:for-each select="collection(concat('./', $vstup ,'/?select=*', $vstupníPřípona))[s:stránka/s:pořadí]">
    84 			<xsl:for-each select="collection(concat('./', $vstup ,'/?select=*', $vstupníPřípona))[s:stránka/s:pořadí]">
    85 				<xsl:sort select="empty(./s:stránka/s:pořadí)"/>
    85 				<xsl:sort select="empty(./s:stránka/s:pořadí)"/>
    86 				<xsl:sort select="./s:stránka/s:pořadí"/>
    86 				<xsl:sort select="./s:stránka/s:pořadí"/>
    90 					<a href="{fn:encode-for-uri($xhtmlSoubor)}"><xsl:value-of select="./s:stránka/s:nadpis"/></a>
    90 					<a href="{fn:encode-for-uri($xhtmlSoubor)}"><xsl:value-of select="./s:stránka/s:nadpis"/></a>
    91 				</li>
    91 				</li>
    92 			</xsl:for-each>
    92 			</xsl:for-each>
    93 		</ul>
    93 		</ul>
    94 	</xsl:template>
    94 	</xsl:template>
    95 	
    95 
    96 	<!--
    96 	<!--
    97 		Vloží záhlaví (společné pro všechny stránky)
    97 		Vloží záhlaví (společné pro všechny stránky)
    98 		Pro potřeby CSS stylování má @id='záhlaví'
    98 		Pro potřeby CSS stylování má @id='záhlaví'
    99 	-->
    99 	-->
   100 	<xsl:template name="vložZáhlaví">
   100 	<xsl:template name="vložZáhlaví">
   101 		<div id="záhlaví">
   101 		<div id="záhlaví">
   102 			<xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'záhlaví', $vsuvkováPřípona)))/s:stránka/h:text/node()"/>
   102 			<xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'záhlaví', $vsuvkováPřípona)))/s:stránka/h:text/node()"/>
   103 		</div>
   103 		</div>
   104 	</xsl:template>
   104 	</xsl:template>
   105 	
   105 
   106 	<!--
   106 	<!--
   107 		Vloží zápatí (společné pro všechny stránky)
   107 		Vloží zápatí (společné pro všechny stránky)
   108 		Pro potřeby CSS stylování má @id='zápatí'
   108 		Pro potřeby CSS stylování má @id='zápatí'
   109 	-->
   109 	-->
   110 	<xsl:template name="vložZápatí">
   110 	<xsl:template name="vložZápatí">
   111 		<div id="zápatí">
   111 		<div id="zápatí">
   112 			<xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'zápatí', $vsuvkováPřípona)))/s:stránka/h:text/node()"/>
   112 			<xsl:apply-templates select="document(fn:encode-for-uri(concat($vstup, 'zápatí', $vsuvkováPřípona)))/s:stránka/h:text/node()"/>
   113 		</div>
   113 		</div>
   114 	</xsl:template>
   114 	</xsl:template>
   115 
   115 
   116     <!--
   116 	<!--
   117     	Vrací cestu v URL kódování, ale lomítka nekóduje
   117 		Vrací cestu v URL kódování, ale lomítka nekóduje
   118     -->
   118 	-->
   119     <xsl:function name="m:escapuj-url-zachovej-lomítka" as="xs:string">
   119 	<xsl:function name="m:escapuj-url-zachovej-lomítka" as="xs:string">
   120 		<xsl:param name="cesta"/>
   120 		<xsl:param name="cesta"/>
   121 		<xsl:value-of select="replace(encode-for-uri($cesta), '%2F', '/')"/>
   121 		<xsl:value-of select="replace(encode-for-uri($cesta), '%2F', '/')"/>
   122 	</xsl:function>
   122 	</xsl:function>
   123 	
   123 
   124 	<!--
   124 	<!--
   125 		Vrací obsah textového souboru ve vstupním adresáři.
   125 		Vrací obsah textového souboru ve vstupním adresáři.
   126 		Obvykle jako parametr předáváme atribut „src“.
   126 		Obvykle jako parametr předáváme atribut „src“.
   127 	-->
   127 	-->
   128 	<xsl:function name="m:načti-textový-soubor" as="xs:string">
   128 	<xsl:function name="m:načti-textový-soubor" as="xs:string">
   129 		<xsl:param name="soubor"/>
   129 		<xsl:param name="soubor"/>
   130 		<xsl:value-of select="unparsed-text(concat($vstup, $soubor))"/>
   130 		<xsl:value-of select="unparsed-text(concat($vstup, $soubor))"/>
   131 	</xsl:function>
   131 	</xsl:function>
   132     
   132 
   133 </xsl:stylesheet>
   133 </xsl:stylesheet>
       
   134