[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • XForm: E-Mail-Templates?
Seite 1 von 1

XForm: E-Mail-Templates?

Verfasst: 2. Mai 2008, 11:38
von Zuperfly
Ich habe das (brand-)aktuelle XForm-AddOn für Redaxo 4.1 installiert - erstmal vielen Dank dafür, doch leider ist (ausser für die Felddefinitionen) wieder keine Hilfe dabei.. was sind denn die E-Mail-Templates, die ich im Backend anlegen kann?

Scheinbar funktionieren die alten XForms auf meiner Site nun nicht mehr korrekt (ich habe das Modul aktualisiert), so zeigt z.B. das Formular für's Passwort versenden ("Passwort vergessen?"-Funktion) im Debug-Modus folgendes an:

Code: Alles auswählen

Query: select * from rex_xform_email_template where name="send_password"
- das kommt mir doch ein wenig seltsam vor.. Im Modul lauten die Zeilen für die entsprechende Aktion wie folgt:

Code: Alles auswählen

action|readtable|rex_com_user|email|email
action|db2email|send_password|email
Wo muss ich denn nun den Fehler suchen? Oder hat das etwas mit diesen E-Mail-Templates zu tun? Da sind ja nach der Installation noch keine angelegt..

Verfasst: 2. Mai 2008, 12:48
von Jan.Kristinus
hi,

erstmal sorry, dass mal wieder keine richtige doku dabei ist, aber ich hoffe da auf unterstützung von anderen.

wegen Deinem Problem. Das liegt wohl wirklich an dem email Template. Da muss Du zunächst Eins anlegen und den key "send_password" vergeben.

1) action|readtable|rex_com_user|email|email
2) action|db2email|send_password|email

sind 2 aktionen die nach den ganzen validierungen ausgeführt werden. readtable liest nochmal alle daten des users ein, anhand der unique email..
2) verschickt eine email mit dem email template "send_password" an das email label ..

ungefaehr verstanden ?

lg

jan

Verfasst: 2. Mai 2008, 14:08
von Zuperfly
Vielen Dank. Das mit dem "Key" ist ein bisschen verwirrend, ich hatte da an Zahlen gedacht ...

Nach dem Anlegen des Templates stimmt beim Query nun immerhin die Tabelle:

Code: Alles auswählen

Query: SELECT * from rex_com_user WHERE
Affected Rows: 0
Error Message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Error Code: 1064
..aber das mit der WHERE-Bedingung bekomme ich nicht hin. Was muss denn dann im Modul unter "Was soll passieren?" ausgewählt werden? Und muss ich unter "Where Klausel angeben" etwas eintragen? Danke!

Übrigens bekomme ich den Haken bei "Daten zu Beginn aus der Datenbank holen" nicht weg, der ist immer wieder angehakt, egal, was ich auswähle. Nach dem Speichern ist er immer wieder gesetzt...

Verfasst: 2. Mai 2008, 14:22
von Jan.Kristinus
hi,

ich gehe mal davon aus, dass du wegen der community nachfragst.. eigentlich wuerde ich an deiner stelle noch ein wenig warten - aber ich beschreibe das trotzdem mal kurz

In das Feld "Where Klausel angeben"

Code: Alles auswählen

<?php 

$xform->setObjectparams("main_where",'login="###login###"');

?>

Ich schreibe auch noch auf, was Du bei Profilveränderungen eintragen musst, also Daten eines Users wenn er eingeloggt ist.

Code: Alles auswählen

<?php 

$user_id = 0;
if (isset($REX["COM_USER"]) && is_object($REX["COM_USER"])) $user_id = $REX["COM_USER"]->getValue("id");
$xform->setObjectparams("main_where","id=$user_id");

?>
Aber im Moment will ich auf die Communityfeatures nicht komplett eingehen, das wäre eine längere Geschichte.. Kommt dann, sobald ich mit dem Community AddOn durch bin.

lg

Jan

Verfasst: 2. Mai 2008, 14:46
von Zuperfly
Danke. Es ging eigentlich nur darum, einem (aktuell noch nicht angemeldeten) User aus der rex_com_user-Tabelle sein Passwort für den Login zukommen zu lassen (in dem er seine E-Mail-Adresse angibt und das entsprechende Passwort dorthin geschickt wird).

Ich hab's nun auch hinbekommen, allerdings schaut der Query im Debug-Modus nun wieder so aus:

Code: Alles auswählen

Query: select * from rex_xform_email_template where name="send_password"
Affected Rows: 1
Das verstehe ich noch nicht so ganz..

Im Modul habe ich es bei

Code: Alles auswählen

action|readtable|rex_com_user|email|email
action|db2email|send_password|email
belassen und unter "Was soll passieren?" habe ich "E-Mail versenden und Datenbank abfragen" ausgewählt. Der Haken bei "Daten zu Beginn aus Datenbank holen ist wie gesagt immer gesetzt. Nun wird das Passwort mittels des zuvor angelegten E-Mail-Templates "send_password" an die eingegebene E-Mail-Adresse verschickt.

Verfasst: 2. Mai 2008, 14:52
von Jan.Kristinus
wenns klappt, dann ist ja schonmal gut.

select * from rex_xform_email_template where name="send_password"

heisst nur, dass die xform das template aus der datenbank holt. mehr nicht.. und das ist auch gut, dass es dann ein template findet.

lg

jan