Changeset 10:4e70453a027f
- Timestamp:
- 04/03/11 20:12:33 (15 years ago)
- Author:
- František Kučera <franta-hg@…>
- Branch:
- default
- Message:
-
Ukázka uživatelského „makra“ a vkládání odkazů na CSS a JS soubory.
- Files:
-
Legend:
- Unmodified
- Added
- Removed
-
|
r9
|
r10
|
|
| 13 | 13 | <target name="stránky" description="Vygeneruje XHTML webové stránky."> |
| 14 | 14 | <xslt basedir="${vstup}" destdir="${výstup}" includes="*.xml" extension=".xhtml" style="${šablona}/stránka.xsl"> |
| | 15 | <param name="konfigurák" expression="../${vstup}/web.conf"/> |
| 15 | 16 | <classpath location="/usr/share/java/saxonb-9.0.jar"/> |
| 16 | 17 | <classpath location="${funkce}"/> |
-
|
r4
|
r10
|
|
| 1 | | <stránka xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/prostor"> |
| | 1 | <stránka |
| | 2 | xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/prostor" |
| | 3 | xmlns:g="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/prostor"> |
| 2 | 4 | <nadpis>Produkty</nadpis> |
| 3 | 5 | <perex>Co vyrábíme.</perex> |
| … |
… |
|
| 8 | 10 | naše produkty… |
| 9 | 11 | </p> |
| | 12 | |
| | 13 | <p>Vhodnost zvířete do domácnosti:</p> |
| | 14 | <g:měřák hodnota="80"/> |
| 10 | 15 | </text> |
| 11 | 16 | |
-
|
r6
|
r10
|
|
| 6 | 6 | <email>nereknu_nechci_spam@example.com</email> |
| 7 | 7 | </autor> |
| | 8 | |
| | 9 | <!-- TODO: XML Schéma a popisy v něm--> |
| | 10 | |
| | 11 | <!-- Základní URL našeho webu, mělo by končit pomlčkou – pro generování RSS/Atom --> |
| 8 | 12 | <url>https://trac.frantovo.cz/xml-web-generator/</url> |
| | 13 | |
| | 14 | <!-- ID našeho webu (každý by si měl vygenerovat svoje) – pro Atom --> |
| 9 | 15 | <uuid>399a714c-956e-444c-a8f4-afe8f0df802a</uuid> |
| | 16 | |
| | 17 | <!-- Kód našeho webu, použije se jako součást identifikátoru položek v RSS/Atomu --> |
| 10 | 18 | <kod>PokusnyWeb123</kod> |
| 11 | 19 | |
| | 20 | <!-- |
| | 21 | Odkazy na JavaScripty a kaskádové styly, které se vloží do hlavičky každé stránky. |
| | 22 | Můžeme jich uvést libovolné množství. |
| | 23 | --> |
| | 24 | <css>css/styl.css</css> |
| | 25 | <js>js/skript.js</js> |
| | 26 | |
| 12 | 27 | </web> |
-
|
r8
|
r10
|
|
| 14 | 14 | doctype-public="-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN" |
| 15 | 15 | doctype-system="http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd"/> |
| | 16 | |
| | 17 | <xsl:param name="konfigurák"/> |
| 16 | 18 | |
| 17 | 19 | <!-- Celý dokument: --> |
| 18 | 20 | <xsl:template match="/"> |
| | 21 | <xsl:variable name="konfigurace" select="document($konfigurák)"/> |
| 19 | 22 | <html> |
| 20 | 23 | <head> |
| 21 | 24 | <title><xsl:value-of select="g:stránka/g:nadpis"/></title> |
| 22 | 25 | <link title="Novinky (Atom)" href="atom.xml" type="application/atom+xml" rel="alternate"/> |
| 23 | | <link title="Novinky (RSS)" href="rss.xml" type="application/rss+xml" rel="alternate"/> |
| | 26 | <link title="Novinky (RSS)" href="rss.xml" type="application/rss+xml" rel="alternate"/> |
| | 27 | <xsl:apply-templates select="$konfigurace/g:web/g:js"/> |
| | 28 | <xsl:apply-templates select="$konfigurace/g:web/g:css"/> |
| 24 | 29 | </head> |
| 25 | 30 | <body> |
| … |
… |
|
| 50 | 55 | </xsl:element> |
| 51 | 56 | </xsl:template> |
| | 57 | |
| | 58 | <xsl:template match="g:web/g:js"> |
| | 59 | <script src="{text()}" type="text/javascript" /> |
| | 60 | </xsl:template> |
| | 61 | <xsl:template match="g:web/g:css"> |
| | 62 | <link href="{text()}" type="text/css" rel="StyleSheet" /> |
| | 63 | </xsl:template> |
| | 64 | |
| | 65 | <!-- Ukázka vlastního „makra“: --> |
| | 66 | <xsl:template match="g:měřák"> |
| | 67 | <xsl:variable name="hodnota" select="number(@hodnota)"/> |
| | 68 | <xsl:variable name="šířkaGrafu" select="128"/> |
| | 69 | <xsl:choose> |
| | 70 | <xsl:when test="$hodnota >= 0 and $hodnota <= 100"> |
| | 71 | <div style="border: 1px solid black; width: {$šířkaGrafu}px; height: 16px; padding: 0px; text-align: center; background-color: #cfc;"> |
| | 72 | <div style="margin: 0px; background-color: #A4E666; width: {@hodnota*$šířkaGrafu div 100}px; height: 16px;"/> |
| | 73 | <p style="margin: 0px; font-size: 12px; position: relative; top: -15px;"> |
| | 74 | <xsl:value-of select="@hodnota"/>/100 |
| | 75 | </p> |
| | 76 | </div> |
| | 77 | </xsl:when> |
| | 78 | <xsl:otherwise> |
| | 79 | <xsl:message terminate="yes">Hodnota měřáku musí být nejméně 0 a nejvíce 100 (udává procenta).</xsl:message> |
| | 80 | </xsl:otherwise> |
| | 81 | </xsl:choose> |
| | 82 | </xsl:template> |
| 52 | 83 | |
| 53 | 84 | </xsl:stylesheet> |