SHOW:
|
|
- or go back to the newest paste.
1 | - | <?php |
1 | + | |
2 | * Returns an obfuscated E-Maillink | |
3 | * with an maximum length of the linktext (if you want) | |
4 | * | |
5 | * @param mail mailaddress to obfuscate | |
6 | * @param cutTo if > 0 (and bigger then lenght of $postfix), linktext will be shorten to $cutTo chars (including added $postfix) | |
7 | * @param postFix will be added at the end of linktext, if strlen($mail) > $cutTo | |
8 | * @returns something like this: | |
9 | * <a href="javascript:window.location.href = 'mai' + 'lto:' + ['john','smith.'+'com'].join(String.fromCharCode(60 + 2*2))">john<!-- --><span class="tmp_obml">Irgendwas hier</span>@<!-- -->smith.<span class="tmp_obml">als auch hier!</span>com</a> | |
10 | * | |
11 | * Don't forget to add | |
12 | * .tmp_obml{display:none;} | |
13 | * to you CSS! | |
14 | * | |
15 | * obfuscate_Mail_Link("john.doo.franklin@example.org"); | |
16 | * obfuscate_Mail_Link("john.doo.franklin@example.org", 20); | |
17 | * obfuscate_Mail_Link("john.doo.franklin@example.org", 20, '..'); | |
18 | * | |
19 | */ | |
20 | - | */ |
20 | + | |
21 | $s1 = $s2 = $s3 = $s1_s = $s2_s = $s3_s = ''; | |
22 | $tmp_array = explode('@',$mail); | |
23 | $s1 = $s1_s = $tmp_array[0]; // Name vor dem @ | |
24 | $tmp_domain_array = count($tmp_array) > 1 ? explode('.',$tmp_array[1]) : array(); | |
25 | $s3 = $s3_s = (count($tmp_domain_array) > 0 ? array_pop($tmp_domain_array):''); // Topdomain = letztes Element | |
26 | $s2 = $s2_s = implode('.',$tmp_domain_array); // Domain ohne Topdomain = Rest | |
27 | $at = '@'; | |
28 | $dot = '.'; | |
29 | ||
30 | $pfl = strlen($postFix); | |
31 | //kürzen, wenn gefordert | |
32 | if($cutTo > $pfl && (strlen($s1_s.$s2_s.$s3_s)) > $cutTo){ | |
33 | if(strlen($s1_s) > $cutTo){ | |
34 | $s1_s = substr($s1_s, 0, $cutTo - $pfl).$postFix; | |
35 | $s2_s = $s3_s = ''; | |
36 | $at = ''; // es wurde vor dem @ gekürzt | |
37 | $dot = ''; | |
38 | }elseif(strlen($s1_s.$s2_s) > $cutTo - $pfl - 1){ // @ kommt dazu | |
39 | $s2_s = substr($s2_s, 0, $cutTo - $pfl - 1 - strlen($s1_s)).$postFix; | |
40 | $s3_s = ''; | |
41 | $dot = ''; // Topleveldomain weggekürzt | |
42 | }elseif(strlen($s1_s.$s2_s.$s3_s) > $cutTo - $pfl - 2){ // @ und . kommt dazu | |
43 | $s3_s = substr($s3_s, 0, $cutTo - $pfl - 2 - strlen($s1_s.$s2_s)).$postFix; | |
44 | $dot = ''; | |
45 | } | |
46 | } | |
47 | return '<a href="'."javascript:window.location.href = 'mai' + 'lto:' + ['".$s1."','".$s2.".'+'".$s3."'].join(String.fromCharCode(60 + 2*2))".'">'.$s1_s.'<!-- --><span class="tmp_obml">Irgendwas hier</span>'.$at.'<!-- -->'.$s2_s.$dot.'<span class="tmp_obml">und auch hier!</span>'.$s3_s.'</a>'; | |
48 | - | return "<a href=\"javascript:window.location.href = 'mai' + 'lto:' + ['".$s1."','".$s2.".'+'".$s3."'].join(String.fromCharCode(60 + 2*2))\">".$s1_s."<!-- --><span class=\"tmp_obml\">Irgendwas hier</span>".$at."<!-- -->".$s2_s.$dot."<span class=\"tmp_obml\">und auch hier!</span>".$s3_s."</a>"; |
48 | + | |
49 | ?> |