Mein Problem ist ähnlich gelagert. Da powermail inzwischen ja die abgeschickten Daten eines Formulars in der Tabelle "tx_powermail_mails" speichert, würde ich gerne die UID des entsprechenden Eintrages in der generierten Mail mitschicken.
Funktioniert das? Ist das schon mit Boardmitteln möglich? Jemand schon gemacht?
Mit Boardmitteln derzeit noch nicht
Gibt es einen Hook, der vor dem Mailversand, aber nach dem Datenbankeintrag eingreift?
Blöderweise wird der DB entry erst nach dem E-Mail Versand generiert.
Workarround:
Über Hook aktuelle UID auslesen und dann +1
Oder eigenen DB Entry
Okay, habe einen Hook angelegt, der mir die letzte ID ausliest, die ID hochzählt und speichere den Wert als neuen Marker im markerArray.
Jetzt dachte ich, ich muss nur noch den neuen Marker in den RTE eintragen, damit das in der Bestätigungsmail mit ausgegeben wird. Leider wird der Marker nicht mit dem von mir generierten Wert ersetzt.
Habe ich noch was übersehen?
Keine Ahnung was für ein Hook und was der wo überschreibt
Sorry, hätte ein wenig aussagefreudiger sein können :-)
Spreche in einer eigenen Extension den Hook "PM_SubmitBeforeMarkerHook" an. Sieht so aus.
function PM_SubmitBeforeMarkerHook($obj, &$markerArray, &$sessiondata) {
// get latest entry from db
$result = $GLOBALS['TYPO3_DB']->exec_SELECTquery( 'max(uid) as uid', 'tx_powermail_mails', '');
$row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($result);
// generate a marker for the email - calculate uid + 1
$markerArray['###POWERMAIL_NEW_ID###'] = $row['uid']+1;
}
Den Marker habe ich dann in den Plugin-Einstellungen im RTE-Feld für die Empfänger-Mail eingetragen (unter ###POWERMAIL_ALL###). Mein erstellter Marker wird beim Versand aber nicht durch den generierten Wert ersetzt, sondern einfach ausgeblendet.
Wenn ich mir in der class.tx_powermail_submit.php das markerArray ausgeben lasse, ist mein neuer Marker aber mit drin.
Also ein Blick in die class.tx_powermail_submit.php verrät, dass markerArray erst nach dem Hook gesetzt werden - also nützt dir das an dieser Stelle nichts.
Warum nimmst du keine userFunc über einen dynamischen Marker in Powermail?
Habe es jetzt mit einer userFunc gelöst. Geht zusammen mit den dynamischen Markern in der Tat sehr einfach.