Deutschland United States United Kingdom
ContentLion - Open Source CMS

User-System wir kommen! :)

User-System wir kommen! :)

Da ich das Gimmicks-Plugin eingestellt habe, bin ich bei der Realisierung eines neuen Plugins. :D
Und diesmal zur Abwechslung mal was sehr nützliches. :D
Das Plugin heißt "Register" und fügt, wie der Name schon sagt, ein Registrierungsformular zu ContentLion hinzu, sodass sich die User auch registrieren können. Das Ganze ist so implementiert, dass auch Events geworfen werden, mit denen man weitere Felder, die zur Registrierung notwendig sind, hinzufügen kann. :)

Hier noch der Download:
register.zip

Voraussetzung:
- Das PluginData-Plugin wird benötigt. (DOWNLOAD: plugindata.zip)

Version: 1.0.0

Damit ist es jetzt endlich möglich, dass sich User registrieren können. :)
Juhuu! :D

Das Plugin wirft unheimlich viele Events, damit es sehr gut erweiterbar ist.
So ist es möglich (über Events & Plugins), zusätzliche Felder bei der Registrierung hinzuzufügen, die Rolle auswählen zu lassen oder nach der Registrierung dem User eine Willkommens-Nachricht zukommen zu lassen. :D

EDIT:
@Stefan: Ein Repo bitte! :D

PS:
Evtl. solltet ihr die Rechte der Seite im Admin-Bereich noch anpassen, damit sich die User auch wirklich registrieren können. :D

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »JuKu« (1. Februar 2013, 18:55)


Könnte mal jemand nen Plugin für die Nutzungsbedingungen erstellen? :)
Dazu müsste man einen Event "plugin_register_form" hinzufügen mit z.B. folgendem Code:

PHP-Quelltext

1
$_GLOBALS['plugin_register_fields'][] = array('TITLE' => "Nutzungsbedingungen"'VALUE' => "<textarea>Nutzungsbedingungen bla bla</textarea><br /><input type="checkbox" name="nutzungsbedingungen" value="ok"> Ich habe die Nutzungsbedingungen gelesen und akzeptiert");


Dann noch ein Event namens "plugin_register_check", der das Feld überprüft:

PHP-Quelltext

1
2
3
4
if (!isset($_REQUEST['nutzungsbedingungen'])) {
  //Falls kein Häckchen gesetzt wurde, wird ein Error ausgegeben
  $_GLOBALS['plugin_register_errors'][] = "Du musst die Nutzungsbedingungen akzeptieren, um dich registrieren zu können!";
}


Wie ihr seht, habe ich das Ganze eig. relativ einfach realisiert. :)
Sobald im Array $_GLOBALS['plugin_register_errors'] mind. 1 Eintrag vorhanden ist, wird das Formular wieder ausgegeben (allerdings diesmal mit den Fehlern ^^ ) und die Registrierung nicht abgeschlossen. ;)

Hier noch ne Live-Demo: :D
http://contentlion.pf-control.de/register.html

Und bevor ich es vergesse: Das PluginData-Plugin wird benötigt!
(wegen der Anpassbarkeit) DOWNLOAD des Plugins PluginData: plugindata.zip

PS:
Der Text gehört nicht dazu.
Um so einen Text einzufügen, empfiehlt es sich, im Skin Ordner einen Unterordner "templates" mit wiederrum einem Unterordner "plugins" und noch einem Unterordner "register" zu erstellen. :D
Also in Kurzfassung: -> SkinOrdner (system/skins/<Dein Skin>) --> templates --> plugins --> register
Nun kopiert ihr die Datei "form.html" aus dem Ordner "system/plugins/register/templates" da rein. :D
Jetzt könnt ihr die Template-Datei (Die im SkinOrdner (<skin>/templates/plugins/register/form.html)) nach euren Wünschen anpassen und wenn ihr das Plugin mal deinstallieren solltet, gehen die Änderungen auch nicht verloren. ;)
Soll die alte Template-Datei wiederhergestellt werden, einfach die Datei "system/skins/<Dein Skin>/templates/plugins/register/form.html" wieder löschen! :D
Fertig! :)

Und wenn wir schon dabei sind.^^
Es ist ratsam, eine Rolle "Registrierte Benutzer" (am Besten mit der ID 4) zu erstellen, falls ihr das Admintools-Plugin nicht habt.
Dieses erstellt diese Rolle nämlich automatisch. ;)

Anmerkung:

Ihr wollt die Rolle ändern, die der User bei der Registrierung automatisch zugewiesen bekommt?
Das ist leider derzeit noch nicht im Backend möglich.
Aber es gibt trotzdem eine Möglichkeit. ;)
Dazu musst du dich in PhpMyAdmin anmelden und die Tabelle "<Dein Präfix>plugin_plugindata_data" suchen, und bei dem Eintrag, wo bei "property" "plugin_register_role" steht, den Wert (Feld: value (!)) auf die ID der gewünschten Rolle setzen. Evtl. noch den Cache leeren und fertig! :)

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »JuKu« (1. Februar 2013, 18:53)


Repro dürfte in max. einer Stunde da sein. Sag Bescheid wenn du alles eingecheckt hast, dann teste ich und wenn alles ok ist veröffentliche ich es auch.

Bei Maxi gabs noch Probleme beim User, dürfte aber klappen jetzt. Falls es nicht läuft sag Bescheid. Zugangsdaten sind hier: http://www.contentlion.de/entwickler/svn-zugang.html

Url der Repro wird folgende sein: http://code.contentlion.de/svn/contentlion-plugin-register

Irgendwie klappts nicht. ;(

Quellcode

1
2
3
4
Checkout from http://code.contentlion.de/svn/contentlion-plugin-register, revision HEAD, Fully recursive, Externals included
Unable to connect to a repository at URL
 'http://code.contentlion.de/svn/contentlion-plugin-register'
Access to 'http://code.contentlion.de/svn/contentlion-plugin-register' forbidden


Weiß jemand, wo der Fehler liegt?

EDIT:
Hier noch nen Screenshot:

Häng mal an deine URL /trunk an _;)

Ne, es geht jetzt.^^
Musste erst den Auth-Cache bei TortoiseSVN (Kontextmenü --> TortoiseSVN --> Settings --> Advenced o.ä.) leeren... :rolleyes:

Muss ich den Ordner mitkopieren, oder nur den Inhalt? :)

So, alle Dateien sind jetzt im SVN-Repo bitte testen! :D

PS:
Und wenn du schon gerade dabei bist: Teste bitte auch gleich das snow-Plugin und veröffentliche es.^^
Im Sommer braucht das nämlich niemand mehr. ^^

Jo, check ich dann gleich mal.
Kommt im Sommer dann kein Regen runter?^^

Stefan zum User system. Könnte man bei der Installation vom Nutzer nich die Email Adresse mit eintragen? Das würde zum beispiel ein Passwort zurücksetzen Plugin leichter machen ;)

Ne, die Installation soll so schnell wie möglich sein.
Du kannst den User nach der Aktivierung deines Plugins doch einfach nach der E-Mail Adresse fragen^^

Jep. :D

@Regen:
Geile Idee, aber im Sommer mag man es lieber, wenn die Sonne scheint, damit man baden gehen kann. :D

Ähnliche Themen