Erweiterung der Registrierung mit eigenem Modul

Derzeit arbeite ich daran, die Registrierung um einen ganzen Haufen von zusätzlichen, optionalen Daten, die später auch separat gepflegt werden können, zu erweitern.

Leider scheitert es momentan daran, mein Modul, was eigentlich die Funktion “registerUser” überschreiben soll, richtig zu registrieren.

Genauer gesagt weiß ich nicht, welche Klasse genau überschrieben werden muss. Die Funktion “registerUser” ist Bestandteil des views oxcmp_user, doch irgendwie kann ich sie nicht überschreiben.

Wie kann ich also meine Logik, die eine eigene Tabelle befüllen soll, direkt nachdem die Registrierung erfolgreich ist, als Modul umsetzen? Die Methode “registerUser” erschien mir als perfekt, weil sie aufgerufen wird aus dem Template zur Registrierung, um diese abzuschließen. Ich hätte also den Inhalt der Funktion übernommen und noch zusätzlich meine Programmierung ergänzt.

Würde mich über Hilfe freuen!

Falls es jemanden interessiert, ich habe jetzt die Funktion “sendRegisterEmail” der Klasse oxEmail überladen. Zuvor hatte ich es mit der Funktion “createUser” der Klasse oxUser probiert, doch hier hatte ich noch keinen Zugriff auf alle Daten des Benutzers, der sich registriert hat. Erst nach Ausführung der Funktion und weiterer Abfragen ist das User-Objekt mit sämtlichen Nutzerdaten gefüllt, die zum Zeitpunkt der Registrierung eingegeben wurden.

[QUOTE=AlexWeedy;139846]Derzeit arbeite ich daran, die Registrierung um einen ganzen Haufen von zusätzlichen, optionalen Daten, die später auch separat gepflegt werden können, zu erweitern.[/QUOTE]

na denn. die registrierungswut mit allen möglichen daten geht allerdings richtung null. schon die mailadresse für nen newsl. anzugeben fällt vielen schwer. wenn sie dann auch noch einen wust an eingaben bekommen - auch optional - tschüß.

Hallo Alex,

den Ansatz die sendRegisterEmail() zu erweitern halte ich nicht für sinnvoll. Der richtige Ansatz ist die save() Methode der oxUser zu erweitern, da diese für das Model steht.
Hier solltest du auf deine zusätzlichen Parameter im Request prüfen und diese ggf. zusätzlich abspeichern.

So hast du die Speicherung zentral an einer Stelle und kannst aus allen Controllern (Registrierung, Mein Konto, etc.) darauf zugreifen.

Gruß
Roman