Bug #16399 ยป class.tslib_pagegen.patch
TYPO3core/typo3/sysext/cms/tslib/class.tslib_pagegen.php (working copy) | ||
---|---|---|
$GLOBALS['TSFE']->spamProtectEmailAddresses = 'ascii';
|
||
} else {
|
||
$GLOBALS['TSFE']->spamProtectEmailAddresses = t3lib_div::intInRange($GLOBALS['TSFE']->config['config']['spamProtectEmailAddresses'],-10,10,0);
|
||
if ($GLOBALS['TSFE']->spamProtectEmailAddresses) {
|
||
$GLOBALS['TSFE']->additionalJavaScript['UnCryptMailto()']='
|
||
// 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 <= 0x39) {
|
||
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,'.($GLOBALS['TSFE']->spamProtectEmailAddresses*-1).');
|
||
}
|
||
' ;
|
||
}
|
||
}
|
||
... | ... | |
if (msie4) {theObject.blur();}
|
||
}
|
||
';
|
||
|
||
if ($GLOBALS['TSFE']->spamProtectEmailAddresses && $GLOBALS['TSFE']->spamProtectEmailAddresses !== 'ascii') {
|
||
$_scriptCode .= '
|
||
// 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 <= 0x39) {
|
||
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,'.($GLOBALS['TSFE']->spamProtectEmailAddresses*-1).');
|
||
}
|
||
';
|
||
}
|
||
if (!$GLOBALS['TSFE']->config['config']['removeDefaultJS']) {
|
||
// NOTICE: The following code must be kept synchronized with "tslib/default.js"!!!
|
||
$GLOBALS['TSFE']->content.='
|
||
<script type="text/javascript">
|
||
/*<![CDATA[*/
|