šablona/stránka.xsl
changeset 10 4e70453a027f
parent 8 ad0ee12d13fd
child 11 78a8dd1eeb2b
--- a/šablona/stránka.xsl	Sun Apr 03 18:44:35 2011 +0200
+++ b/šablona/stránka.xsl	Sun Apr 03 20:12:33 2011 +0200
@@ -13,14 +13,19 @@
 		encoding="UTF-8"		
 		doctype-public="-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" 
 		doctype-system="http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd"/>
+		
+	<xsl:param name="konfigurák"/>
 	
 	<!-- Celý dokument: -->
 	<xsl:template match="/">
+		<xsl:variable name="konfigurace" select="document($konfigurák)"/>
 		<html>
 			<head>
 				<title><xsl:value-of select="g:stránka/g:nadpis"/></title>
 				<link title="Novinky (Atom)" href="atom.xml" type="application/atom+xml" rel="alternate"/>
-				<link title="Novinky (RSS)"  href="rss.xml"  type="application/rss+xml"  rel="alternate"/>				
+				<link title="Novinky (RSS)"  href="rss.xml"  type="application/rss+xml"  rel="alternate"/>
+				<xsl:apply-templates select="$konfigurace/g:web/g:js"/>
+				<xsl:apply-templates select="$konfigurace/g:web/g:css"/>				
 			</head>
 			<body>
 				<xsl:apply-templates select="document(fn:encode-for-uri('../vstup/záhlaví.inc'))/g:stránka/h:text/node()"/>			
@@ -49,5 +54,31 @@
 			<xsl:apply-templates/>
 		</xsl:element>
     </xsl:template>
+    
+    <xsl:template match="g:web/g:js">
+    	<script src="{text()}" type="text/javascript" />
+    </xsl:template>
+    <xsl:template match="g:web/g:css">
+    	<link href="{text()}" type="text/css" rel="StyleSheet" />
+    </xsl:template>
+    
+    <!-- Ukázka vlastního „makra“: -->
+    <xsl:template match="g:měřák">
+    	<xsl:variable name="hodnota" select="number(@hodnota)"/>
+    	<xsl:variable name="šířkaGrafu" select="128"/>
+		<xsl:choose>			
+			<xsl:when test="$hodnota &gt;= 0 and $hodnota &lt;= 100">				
+				<div style="border: 1px solid black; width: {$šířkaGrafu}px; height: 16px; padding: 0px; text-align: center; background-color: #cfc;">			
+					<div style="margin: 0px; background-color: #A4E666; width: {@hodnota*$šířkaGrafu div 100}px; height: 16px;"/>
+					<p style="margin: 0px; font-size: 12px; position: relative; top: -15px;">
+						<xsl:value-of select="@hodnota"/>/100
+					</p>	
+				</div>
+			</xsl:when>
+			<xsl:otherwise>
+				<xsl:message terminate="yes">Hodnota měřáku musí být nejméně 0 a nejvíce 100 (udává procenta).</xsl:message>
+			</xsl:otherwise>
+		</xsl:choose>
+	</xsl:template>
 
 </xsl:stylesheet>