Hallo,
ich möchte aus einem Powermail-Formular mehrere multiple select fields (deren Inhalt die Redakteure unteriedlich ausprägen und immer wieder ergänzen können) mittels dbEntry in eine andere Tabelle eintragen lassen.
Im Beispiel der Dokumentation gibt es zwar einen Hinweis auf die MM-Tabellen-Funktion (die ich auch schon mit einem einzelnen Eintrag erfolgreich nutze), mit dieser lässt sich aber nur ein Feld eintragen.
Aus alten Powermail-Versionen habe ich noch den Hinweis gefunden, über ein COA-Objekt für jede mögliche Auswahl einen TS-Block anzulegen, was bei durch den Redakteur variabel befüllten Multi-Select-Feldern und mehreren dieser Felder unpraktikabel ist.
Hat jemand ein Beispiel für eine userFunc, die diese übernehmen kann?
Mir macht dabei gedanklich vor allem die Reihenfolge der Abarbeitung Sorgen, da ja VOR dem Eintrag der MM-Tabelleneinträge der "Eltern"-Datensatz gespeichert sein muss, um die UID des neuen Datensatzes zu erhalten.
Über die MM-Funktion in Powermail kann ich darauf ja mit uid_<myTable> zugreifen, dort ist es m.W. aber schon zu spät für eine userFunc...
Ideen, Ansätze?
Ich würde mich über ein Signal "hineinhooken" und dort meine Datensätze speichern. An die Werte kommst du ja bequem über GET/POST.
Siehe http://docs.typo3.org/typo3cms/extensions/powermail/ForDevelopers/SignalSlots/Index.html
Geeignet wäre wohl "createActionAfterSubmitView".
---
Was mir gerade noch einfällt: Du kannst auch einfach eine userfunc auf die Seite schmeißen (z.B. mit page.2000 = USER_INT ...) und die kann auf GET/POST-Parameter von powermail hören und die Einträge vornehmen
Hallo Leute,
Ich hänge auch gerade an dieser Stelle, bis jetzt habe ich folgendes Typoscript, welches aber leider nur den Wert der ersten Checkbox in die MM-Tabelle einträgt:
2 {
# Enable or disable db entry for table tablename_mm
_enable = TEXT
_enable.value = 1
# Set tableName to "tablename_mm"
_table = TEXT
_table.value = tablename_mm
# Fill tt_address_group_mm.uid_local with uid of tt_address record from above configuration 1. (usage .field=uid_[key])
uid_local = TEXT
uid_local.field = uid_1
# Fill new record of table "tt_address_group_mm" with field "uid_foreign" with uid 123
uid_foreign = TEXT
uid_foreign.field = feldname
}
Ich wäre euch für eine Hilfestellung sehr dankbar, im Moment komme ich leider ohne diese nicht weiter.
Beste Grüsse, Ivo