34 lines
947 B
JavaScript
34 lines
947 B
JavaScript
|
|
/* decrypt helper function */
|
|
function decryptCharcode(n,start,end,offset) {
|
|
n = n + offset;
|
|
if (offset > 0 && n > end) {
|
|
n = start + (n - end - 1);
|
|
} else if (offset < 0 && n < start) {
|
|
n = end - (start - n - 1);
|
|
}
|
|
return String.fromCharCode(n);
|
|
}
|
|
/* decrypt string */
|
|
function decryptString(enc,offset) {
|
|
var dec = "";
|
|
var len = enc.length;
|
|
for(var i=0; i < len; i++) {
|
|
var n = enc.charCodeAt(i);
|
|
if (n >= 0x2B && n <= 0x3A) {
|
|
dec += decryptCharcode(n,0x2B,0x3A,offset); /* 0-9 . , - + / : */
|
|
} else if (n >= 0x40 && n <= 0x5A) {
|
|
dec += decryptCharcode(n,0x40,0x5A,offset); /* A-Z @ */
|
|
} else if (n >= 0x61 && n <= 0x7A) {
|
|
dec += decryptCharcode(n,0x61,0x7A,offset); /* a-z */
|
|
} else {
|
|
dec += enc.charAt(i);
|
|
}
|
|
}
|
|
return dec;
|
|
}
|
|
/* decrypt spam-protected emails */
|
|
function linkTo_UnCryptMailto(s) {
|
|
location.href = decryptString(s,-2);
|
|
}
|
|
|