Rev 5 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 5 | Rev 6 | ||
---|---|---|---|
Line 10... | Line 10... | ||
10 | 10 | ||
11 | // ======================================================================== |
11 | // ======================================================================== |
12 | 12 | ||
13 | // SOURCE: SIGMA 3.0 ANTISPAM FILTER |
13 | // SOURCE: SIGMA 3.0 ANTISPAM FILTER |
14 | 14 | ||
15 | function secure_email_triv($email) |
- | |
16 | { |
- | |
17 | if (!function_exists('alas_js_crypt')) |
- | |
18 | { |
- | |
19 | function alas_js_crypt($text) |
15 | function alas_js_crypt($text) |
20 | { |
16 | { |
21 | $tmp = ''; |
17 | $tmp = ''; |
22 | for ($i=0; $i<strlen($text); $i++) |
18 | for ($i=0; $i<strlen($text); $i++) |
23 | { |
19 | { |
24 | $tmp .= 'document.write("&#'.ord(substr($text, $i, 1)).';");'; |
20 | $tmp .= 'document.write("&#'.ord(substr($text, $i, 1)).';");'; |
25 | } |
21 | } |
26 | return $tmp; |
22 | return $tmp; |
27 | } |
23 | } |
28 | } |
- | |
29 | 24 | ||
- | 25 | function secure_email_triv($email) |
|
- | 26 | { |
|
30 | $aus = ''; |
27 | $aus = ''; |
31 | if ($email != '') |
28 | if ($email != '') |
32 | { |
29 | { |
33 | $aus .= '<script language="JavaScript" type="text/javascript"><!--'."\n"; |
30 | $aus .= '<script language="JavaScript" type="text/javascript"><!--'."\n"; |
34 | $aus .= alas_js_crypt($email); |
31 | $aus .= alas_js_crypt($email); |
Line 83... | Line 80... | ||
83 | return $complete; |
80 | return $complete; |
84 | } |
81 | } |
85 | } |
82 | } |
86 | } |
83 | } |
87 | 84 | ||
88 | function link_cb_2($a) { |
- | |
89 | $mailaddr = $a[1]; // Letztes |
- | |
90 | - | ||
91 | if (CFG_MAKE_MAIL_ADDRESSES_CLICKABLE) { |
- | |
92 | return secure_email($mailaddr, $mailaddr, true, CFG_DEFAULT_CLASS); |
- | |
93 | } else { |
- | |
94 | return secure_email_triv($mailaddr); |
- | |
95 | } |
- | |
96 | } |
- | |
97 | - | ||
98 | function protect_mail_address_urls($content, $correct_missing_mailto = true) { |
85 | function protect_mail_address_urls($content, $correct_missing_mailto = true) { |
99 | $t = new MailLinkProtector; |
86 | $t = new MailLinkProtector; |
100 | $t->correct_missing_mailto = $correct_missing_mailto; |
87 | $t->correct_missing_mailto = $correct_missing_mailto; |
101 | return $t->process($content); |
88 | return $t->process($content); |
102 | } |
89 | } |
Line 120... | Line 107... | ||
120 | // als Teil der Adresse angesehen werden. Die Liste ist länger als $addr_spec eigentlich benötigt (z.B. schließt $addr_spec |
107 | // als Teil der Adresse angesehen werden. Die Liste ist länger als $addr_spec eigentlich benötigt (z.B. schließt $addr_spec |
121 | // einen Punkt am Ende automatisch aus). Aber sicher ist sicher. |
108 | // einen Punkt am Ende automatisch aus). Aber sicher ist sicher. |
122 | $exclude_mail_chars_beginning = '\^°!"§$%&/()=\?´`}\]\[{\+*~\'#-_\.:,;'; |
109 | $exclude_mail_chars_beginning = '\^°!"§$%&/()=\?´`}\]\[{\+*~\'#-_\.:,;'; |
123 | $exclude_mail_chars_ending = $exclude_mail_chars_beginning; |
110 | $exclude_mail_chars_ending = $exclude_mail_chars_beginning; |
124 | 111 | ||
125 | $content = preg_replace_callback("@(?![$exclude_mail_chars_beginning])($addr_spec)(?<![$exclude_mail_chars_ending])@sm", 'link_cb_2', $content); |
112 | $content = preg_replace_callback("@(?![$exclude_mail_chars_beginning])($addr_spec)(?<![$exclude_mail_chars_ending])@sm", function($a) { |
- | 113 | $mailaddr = $a[1]; // Letztes |
|
- | 114 | ||
- | 115 | if (CFG_MAKE_MAIL_ADDRESSES_CLICKABLE) { |
|
- | 116 | return secure_email($mailaddr, $mailaddr, true, CFG_DEFAULT_CLASS); |
|
- | 117 | } else { |
|
- | 118 | return secure_email_triv($mailaddr); |
|
- | 119 | } |
|
- | 120 | }, $content); |
|
126 | 121 | ||
127 | // Output |
122 | // Output |
128 | 123 | ||
129 | return $content; |
124 | return $content; |
130 | } |
125 | } |