root/šablona/makra/šifra.xsl @ 84:f866267d7b3c

Revision 84:f866267d7b3c, 2.2 KB (checked in by František Kučera <franta-hg@…>, 13 years ago)

ROT13 – šifrování #18

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!--
3XML Web generátor – program na generování webových stránek
4Copyright © 2012 František Kučera (frantovo.cz)
5
6This program is free software: you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation, either version 3 of the License, or
9(at your option) any later version.
10
11This program is distributed in the hope that it will be useful,
12but WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14GNU General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with this program.  If not, see <http://www.gnu.org/licenses/>.
18-->
19<xsl:stylesheet version="2.0"
20        xmlns="http://www.w3.org/1999/xhtml"
21        xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"
22        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
23        xmlns:xs="http://www.w3.org/2001/XMLSchema"
24        exclude-result-prefixes="m xs">
25
26        <!--
27                Šifrování (Rot13)
28                *****************
29                Umožňuje vkládat „zašifrované“ části textu.
30                Použijeme např. pro text, který vyzrazuje, jak skončí film.
31                Pro zobrazení v čitelném tvaru je potřeba kliknout na tlačítko a text „dešifrovat“,
32                takže si ho nepřečteme omylem, aniž bychom chtěli.
33                *
34                @algoritmus zatím je výchozím a jediným algoritmem Rot13
35        -->
36        <xsl:template match="m:šifra">
37                <xsl:variable name="šifra-id">šifra-<xsl:number level="any"/></xsl:variable>
38                <span class="rot13" title="Tento text je „zašifrován“ algoritmem Rot13, abyste si ho omylem nepřečetli. Pokud číst chcete, klikněte na tlačítko…">
39                        <span id="{$šifra-id}"><xsl:value-of select="m:rot13(text())"/></span>
40                        <a onclick="javascipt:xwg.rot13('{$šifra-id}'); return false;" href="#{encode-for-uri(' &gt;&gt; zobrazí „zašifrovaný“ text &lt;&lt;')}"></a>
41                </span>
42        </xsl:template>
43
44        <xsl:function name="m:rot13" as="xs:string">
45                <xsl:param name="vstup"/>
46                <xsl:value-of select="translate($vstup, 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', 'nopqrstuvwxyzabcdefghijklmNOPQRSTUVWXYZABCDEFGHIJKLM')"/>
47        </xsl:function>
48
49</xsl:stylesheet>
50
Note: See TracBrowser for help on using the browser.