ukázka/js/skript.js
author František Kučera <franta-hg@frantovo.cz>
Thu, 24 Oct 2019 22:06:44 +0200
changeset 136 d5feb9d8ebc3
parent 125 20a52ce68314
permissions -rw-r--r--
fix license version: GNU GPLv3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
84
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     1
/**
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     2
 * XML Web generátor – program na generování webových stránek
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     3
 * Copyright © 2012 František Kučera (frantovo.cz)
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     4
 * 
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     5
 * This program is free software: you can redistribute it and/or modify
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     6
 * it under the terms of the GNU General Public License as published by
136
d5feb9d8ebc3 fix license version: GNU GPLv3
František Kučera <franta-hg@frantovo.cz>
parents: 125
diff changeset
     7
 * the Free Software Foundation, version 3 of the License.
84
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     8
 * 
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
     9
 * This program is distributed in the hope that it will be useful,
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    10
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    11
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    12
 * GNU General Public License for more details.
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    13
 * 
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    14
 * You should have received a copy of the GNU General Public License
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    15
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    16
 */
11
78a8dd1eeb2b statický obsah a úloha pro čištění
František Kučera <franta-hg@frantovo.cz>
parents:
diff changeset
    17
84
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    18
/**
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    19
 * XML Web generátor – jmenný prostor 
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    20
 */
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    21
var xwg = { 
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    22
	/**
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    23
	 * Zašifruje/dešifruje obsah elementu pomocí Rot13.
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    24
	 * @param id ID elementu, jehož text chceme změnit.
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    25
	 */
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    26
	rot13: function(id) {
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    27
		var e = document.getElementById(id);
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    28
		e.textContent = e.textContent.rot13();
93
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    29
	},
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    30
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    31
	/**
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    32
	 * Vloží klikatelný odkaz.
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    33
	 * @param id ID span elementu obsahujícího data
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    34
	 */
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    35
	odkazNaElektronickouPoštu: function(id) {
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    36
		var spanČesky = document.getElementById(id);
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    37
		var spanObsah = document.getElementById(id + "b");
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    38
		var česky = spanČesky.innerHTML;
125
20a52ce68314 odkazy na e-maily: nahrazování všech výskytů tečky a zavináče, ne jen prvních
František Kučera <franta-hg@frantovo.cz>
parents: 120
diff changeset
    39
		var adresa = česky
20a52ce68314 odkazy na e-maily: nahrazování všech výskytů tečky a zavináče, ne jen prvních
František Kučera <franta-hg@frantovo.cz>
parents: 120
diff changeset
    40
						.replace(new RegExp(" zavináč ", "g"), "@")
20a52ce68314 odkazy na e-maily: nahrazování všech výskytů tečky a zavináče, ne jen prvních
František Kučera <franta-hg@frantovo.cz>
parents: 120
diff changeset
    41
						.replace(new RegExp(" tečka ", "g"),".");
93
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    42
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    43
		var odkaz = document.createElement("a");
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    44
		odkaz.href = "mailto:" + adresa;
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    45
		if (spanObsah.innerHTML.length > 0) {
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    46
			odkaz.innerHTML = spanObsah.innerHTML;
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    47
		} else {
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    48
			odkaz.innerHTML = adresa;
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    49
		}
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    50
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    51
		spanČesky.parentNode.insertBefore(odkaz, spanČesky);
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    52
		spanČesky.parentNode.removeChild(spanČesky);
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    53
		spanObsah.parentNode.removeChild(spanObsah);
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    54
	},
5b55827de220 #16 „obfuskované“ odkazy na e-maily, které znesnadní sběr spamovacím robotům
František Kučera <franta-hg@frantovo.cz>
parents: 84
diff changeset
    55
84
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    56
};
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    57
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    58
/**
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    59
 * Vrací hodnotu textového řetězce zašifrovanou/dešifrovanou algoritmem Rot13 
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    60
 */
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    61
String.prototype.rot13 = function() {
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    62
	return this.replace(/[a-zA-Z]/g, function(z) {
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    63
		return String.fromCharCode((z <= "Z" ? 90 : 122) >= (z = z.charCodeAt(0) + 13) ? z : z - 26);
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    64
	});
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    65
};
f866267d7b3c ROT13 – šifrování #18
František Kučera <franta-hg@frantovo.cz>
parents: 11
diff changeset
    66