Hilfe - Suche - Mitglieder - Kalender
Vollansicht: eMail Kodierer v1.0
Forum Sefrengo.org > Downloads > Plugins
mrtt
Plugin-name:
---------------------------------------------------------------------------
eMail Kodierer


Status:
---------------------------------------------------------------------------
stable - das Plugin ist für den produktiven Einsatz geeignet und getestet


Bechreibung:
---------------------------------------------------------------------------
Diese Plugin dient dazu, E-Mailadressen welche im Output vorkommen zu
codieren und Sie somit gegen Spam-Roboter die E-Mailadressen sammeln
zu schützen.


Features:
---------------------------------------------------------------------------
- Ausgabe alle Mail-Adressen im ASCII-Code


Known Issues:
---------------------------------------------------------------------------
- Bei installiertem SmartyPants Plugin keine funktion (29.12.2006)


Autor(en):
---------------------------------------------------------------------------
mrtt - Sebastian Tiegel


Lizenz:
---------------------------------------------------------------------------
GPL,

Benötigte Sefrengo Version:
---------------------------------------------------------------------------
>= 01.03.00 (Sefrengo 1.4 Beta1)


Installation:
---------------------------------------------------------------------------
Wechseln Sie in Ihrer Sefrengo Version in den Bereich "Administration -> Plugins".
Klicken Sie oben rechts auf "Plugin importieren". Am unteren Ende des Bereichs
befindet sich ein Uploadfeld. Wählen Sie hier die gewünschte "*.cmsplug"- Datei
aus. Mit einem Klick auf das Diskettensymbol wird das Plugin in das CMS importiert.
Das Plugin ist nun innerhalb des CMS nutzbar. Installieren Sie das Plugin mit einem
klick auf das Plugin-Importieren-Symbol in der Pluginzeile.
!!! Es werden keine neuen Menü-Einträge in Sefrengo erstellt. !!!
!!! Sobald Plugin ins Projekt importiert wird, arbeitet es. !!!


Update/ Migration:
---------------------------------------------------------------------------

Dokumentation:
---------------------------------------------------------------------------
"Keine vorhanden"
andi
oh super...wollte ich gerade hochladen. bekam leider folgende fehlermeldung:

Es wurde keine gültige *.cmsplug- Datei hochgeladen/gefunden


kann das jemand bestätigen?


gruss andi
bkm
ZITAT(andi @ Thu. 28. December 2006, 19:33) *
Es wurde keine gültige *.cmsplug- Datei hochgeladen/gefunden
kann das jemand bestätigen?

ja dry.gif

Und nach dem manuellen Installieren, stimmt irgendwie der Pfad zur ausführenden Datei nicht.
mrtt
Sorry, ist wohl nen Fehler Passiert.

Hab die Datei ersetzt, sollte jetzt Funktionieren.
andi
perfekt, funktioniert.


vielen vielen dank!
alexander
ich hab die Beschreibung des Plugins angepasst. Manchmal stand da Modul obwohl es ein Plugin ist, die Beschreibung hat gefehlt ....

Ich habs nur im Thread gemacht, wäre gut, wenn du das auch im Download nachziehst ... dafür hab ich jetzt keine Zeit wink.gif
mrtt
ZITAT(alexander @ Thu. 28. December 2006, 21:08) *
Manchmal stand da Modul obwohl es ein Plugin ist, die Beschreibung hat gefehlt ....


Ich hab die Vorlage des Moduls verwendet und dabei nicht alle "Module" entfernt.
Ich weiß auch nicht was mit mir los ist! Erst funktioniert der Upload nicht und dann sowas.

Ich habs geändert.
gunwalt
ZITAT(andi @ Thu. 28. December 2006, 20:15) *
perfekt, funktioniert.


Bei mir leider noch nicht. sad.gif
Habe die letzte Version hochgeladen, was auch ohne Probleme funktioniert. Aber Emailadressen, die ich über Textarea oder wysiwyg2 eingegeben habe, werden nicht kodiert. Zumindestens kann ich in der Seitenquelltextanzeige des Browser (FF2) nichts dergleichen erkennen.
saschapi
noch keine Möglichkeit gehabt es zu testen. sad.gif

ABER wenn es funktioniert, dann bin ich einfach mal super begeistert wie einfach man Output-Manipulation als Plugin anbieten kann. Da lassen sich bestimmt einige sehr geniale Plugins einbauen, die z.B. Ajax effekte über das DOM einbinden.
mrtt
@gunwalt: Hast du das Plugin SmartyPants installiert? Wenn ich das installiere geht es nicht.

Sebastian
gunwalt
ZITAT(mrtt @ Fri. 29. December 2006, 13:30) *
@gunwalt: Hast du das Plugin SmartyPants installiert? Wenn ich das installiere geht es nicht.


Geht jetzt. Da soll mal jemand drauf kommen. wink.gif
Woran liegt das? Beide Plugins sind schon hilfreich und ich möchte eigentlich nicht würfeln ... smile.gif

@mrtt: Schreibe doch diese Einschränkung bitte einmal oben in den Text rein. Stichwort: Known Issues

@all: da es um das Umschreiben von Code geht, wäre nicht eine Vereinigung beider möglich und sinnvoll?
MaZderMind
Und vorallem - was ist die ASCII-Form einer E-Mail-Adresse?

Gruß, Peter
MaZderMind
Hi
so der Grund für die Smartypants-Inkompatibilität ist, dass das Smartypants-Plugin /mit voller absicht/ die von Smartypants erzeugten Entitäten wieder durch normale Unicodezewichen ersetzt, sofern als sprache unicode eingestellt ist. Der grund ist Klar: Wenn der Zeichensatz auf Unicode gesetzt ist, sind alle Entitäten außer & " > und < absolut sinnlos...
Außnahme: Die Codierung von eMail-Adressen.
Einziger Workaround wäre die deaktivierung der ersetzung im Smartypants-Plugin. Dazu in der process.php if($sf_lang_stack[$lang]['charset'] == 'utf-8') durch if(false) ersetzen.

Ich persönlich halte die Codierung von Mailadressen in Entitäten generell für nicht unbedingt schön, da viele Crawler mittlerweile auch entitäten dekodieren können (zumindest würde ich wenn ich einen Crawler bauen würde diese funktion einbauen da sie ja nicht besonders schwehr einzubauen ist.. Einen IMHO besseren Vorschlag habe ich hier gepostet und ich denke diesen Weg sollten wir auch einschlagen.

Noch was zu seinem Plugin an sich: Warum benutzt du überall preg_replace? das braucht doch fast 3x so lange wie str_replace. du kannst alle preg_replaces durch str_replaces ersetzen ohne dass dir funktionalität verlorengeht. Dann solltest du die funktion "umwandeln" umbenennen. Denk dran dass deine Datei im selben Scope wie Module, andere Plugins und das System selbst läuft. Deine Funktionen sollten immer was mit dem Namen deines Plugins zu tun haben (Präfix oder sowas) damit dr Name nicht doppeltbelegt wird.
Außerdem hast du garkeine Überprüfung drin, ob du überhaupt im System bist odr direkt aufgerufen wirst. Anbei eine verbesserte Version der mail_protector.php in der all das verbessert wurde

CODE
<?php

if(! defined('CMS_CONFIGFILE_INCLUDED')){
die('NO CONFIGFILE FOUND');
}

function mailprotect($string) {
for ($i = 0; $i < strlen($string); $i++) {
$return .= "&#".ord(substr($string,$i,1)). ";";
}
return $return;
}

preg_match_all('!([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+!si', $output, $treffer );
for ($i=0; $i < count($treffer[0]); $i++) {
$output = str_replace($treffer[0][$i], mailprotect($treffer[0][$i]), $output);
}
$output = str_replace('mailto:', 'mailto:', $output);

?>


Gruß, Peter
mrtt
Hi Peter,

hab mir gerade deinen Vorschlag im anderen Thread durchgelesen und denke, das die Vorgeschlagene Variante umsetzten sollten.
Somit, denke ich, sollte(n) ich/wir dieses Plugin "sterben" lassen und durch die andere Variante ersetzten.

Sebastian
MaZderMind
Hi
Naja mach doch einfach ne version 1.1 drauß ^^ hätte den Vorteil dass man auch Updaten kann smile.gif

Gruß, Peter
saschapi
ZITAT(MaZderMind @ Sat. 30. December 2006, 14:33) *
Naja mach doch einfach ne version 1.1 drauß ^^ hätte den Vorteil dass man auch Updaten kann smile.gif


Dafür!!!! biggrin.gif

Würde mich sehr freuen wenn das was wird. Meine Seiten werden nämlich ziemlich viel gecrawled und es wäre schon ein echtes Ding wenn man das einfach so ersetzten kann wink.gif
Michael Brassat
Hi!

Also erstmal Danke für die PluginIdee. Wenns den funzt sollte man das echt fest ins System integrieren.

Aber:
Bei mir wird leider auch nix codiert. E-Maileingabe erfolgte über ContentFlex. Das Plugin wurde aber nachträglich Installiert. Liegt es daran?
mrtt
ZITAT(Michael Brassat @ Tue. 6. February 2007, 22:01) *
Aber:
Bei mir wird leider auch nix codiert. E-Maileingabe erfolgte über ContentFlex. Das Plugin wurde aber nachträglich Installiert. Liegt es daran?



Hi,

es spielt keine rolle mit welchem Modul du Mail-Adressen eingibst.
Es werden derzeit nur Adressen im Format name@domain.tld oder mail:name@domain.tld unterstützt.
Das nachfolge Plugin wird (eMail Schutz) wird da mehr können.

Auch die Tatsache, dass du das Plugin nachträglich installiert hast ist nicht Ursache des Problems. Plugins können jederzeit ins System integriert werden.

Was sein könnte: Ein erforderlicher "Autostart"-Eintrag wurde nicht in die Datenbank geschrieben.
Was mir gerade noch einfällt: Hast du SmartyPants installiert? SmartyPants < v1.0.2 vertragen sich nicht


Gruß
Sebastian
Dieses ist eine vereinfachte Darstellung unseres Foreninhaltes. Um die detaillierte Vollansicht mit Formatierung und Bildern zu betrachten, bitte hier klicken.
Invision Power Board © 2001-2024 Invision Power Services, Inc.