#20 Skriptování: uvnitř zadání skriptu lze používat jiná makra (interpretují se před provedením skriptu).
2 * XML Web generátor – program na generování webových stránek
3 * Copyright © 2012 František Kučera (frantovo.cz)
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
20 * XML Web generátor – jmenný prostor
24 * Zašifruje/dešifruje obsah elementu pomocí Rot13.
25 * @param id ID elementu, jehož text chceme změnit.
28 var e = document.getElementById(id);
29 e.textContent = e.textContent.rot13();
33 * Vloží klikatelný odkaz.
34 * @param id ID span elementu obsahujícího data
36 odkazNaElektronickouPoštu: function(id) {
37 var spanČesky = document.getElementById(id);
38 var spanObsah = document.getElementById(id + "b");
39 var česky = spanČesky.innerHTML;
40 var adresa = česky.replace(" zavináč ", "@").replace(" tečka ",".");
42 var odkaz = document.createElement("a");
43 odkaz.href = "mailto:" + adresa;
44 if (spanObsah.innerHTML.length > 0) {
45 odkaz.innerHTML = spanObsah.innerHTML;
47 odkaz.innerHTML = adresa;
50 spanČesky.parentNode.insertBefore(odkaz, spanČesky);
51 spanČesky.parentNode.removeChild(spanČesky);
52 spanObsah.parentNode.removeChild(spanObsah);
58 * Vrací hodnotu textového řetězce zašifrovanou/dešifrovanou algoritmem Rot13
60 String.prototype.rot13 = function() {
61 return this.replace(/[a-zA-Z]/g, function(z) {
62 return String.fromCharCode((z <= "Z" ? 90 : 122) >= (z = z.charCodeAt(0) + 13) ? z : z - 26);