[TYPO3-german] powermail 2 - felder vorbelegen - TYPOSCRIPT-FRAGE
Andreas Wildenrother
wildenrother at myc3.com
Tue Jul 14 23:32:09 CEST 2015
Hallo,
Wenn ich dein TS richtig interpretiere möchtest du das Ergebnis aus
temp.MEMBERSHIPNUM in Data für deinen Prefill einfügen.
Hierbei würde ich auf den ersten Blick 2 kleine Fehler vermuten:
Zum ersten scheint auf den ersten Blick ein kleiner Fehler in deiner
Temp zu sein:
temp.MEMBERSHIPNUM = COA
temp.MEMBERSHIPNUM.10 = TEXT
temp.MEMBERSHIPNUM.10.value = MIT-
temp.MEMBERSHIPNUM.20 = TEXT
temp.MEMBERSHIPNUM.20.*data* = TSFE:fe_user|user|member_num
mit .value können meines Wissens nur direkte Klartext Werte übergeben
werden (z.B. das MIT-).
Zum 2, der Übergabe deines temp.MEMBERSHIPNUM an den Prefill Wert von
Powermail:
Von der Logik her ist das so kein Problem, allerdings ist Typoscript
keine direkte Programmiersprache sondern mehr als
"Konfigurationssprache" zu verstehen.
Sprich es wird PHP damit nur erklärt was es anstellen soll, dein
temp.MEMBERSHIPNUM enthält also sozusagen nur die Bedienungsanleitung,
nicht aber den Finalen Wert.
plugin.tx_powermail {
settings.setup {
prefill {
#...
/# Möglichkeit 1:/
# Kopieren der Konfiguration von temp (=> Änderungen
*nach* dieser Zeile an temp.MEMBERSHIPNUM kommen an dieser Stelle
*nicht* mehr zum Tragen)
membershipnum < temp.MEMBERSHIPNUM
/# Möglichkeit 2:/
# Referenzieren der Konfiguration von temp (=>
Änderungen *nach* dieser Zeile an temp.MEMBERSHIPNUM kommen an dieser
Stelle mehr *zum* Tragen)
membershipnum =< temp.MEMBERSHIPNUM
/# Möglichkeit 3:/
# wenn temp.MEMBERSHIPNUM ansonsten nirgends verwendet
wird kann sich der Umweg über temp im Prinzip auch gespart werden
membershipnum = COA
membershipnum.10 = TEXT
membershipnum.10.value = MIT-
membershipnum.20 = TEXT
membershipnum.20.data = TSFE:fe_user|user|member_num
/# Möglichkeit 3:/
## als Alternative etwas kürzer da ich meist etwas
schreibfaul bin...
## den Wert aus der DB einfügen und den Präfix via wrap
davor setzen.
## Der required soll dafür sorgen dass das ganze nur
gemacht wird wenn auch ein Wert in der member_num steht.
membershipnum = TEXT
membershipnum.data = TSFE:fe_user|user|member_num
membershipnum.wrap = MIT-|
membershipnum.required = 1
#...
}
}
}
Das ganze ist jetzt ungetestet. Ich habe auf Anhieb auch nicht die
entsprechende Stelle in der Dokumentation von Powermail gefunden,
vermute aber dass die Felder des Prefill sich wie normale Typoscript
Objekte verhalten und daher das in etwa so wie oben klappen sollte.
Viele Grüße
Andreas
Am 14.07.15 um 19:51 schrieb DirkHo:
> Hallo,
>
> jetzt hätte ich doch eine Frage zur Vorbelegung. Und zwar möchte ich
> u.a. die Mitgliedsnummer, die ich als Int speichere vorbelegen. Die
> setzt sich aber eigentlich aus MIT- und dann dem Int-Wert zusammen,
> also z.B. MIT-1234, ich speichere aber nur 1234.
>
> temp.MEMBERSHIPNUM = COA
> temp.MEMBERSHIPNUM.10 = TEXT
> temp.MEMBERSHIPNUM.10.value = MIT-
> temp.MEMBERSHIPNUM.20 = TEXT
> temp.MEMBERSHIPNUM.20.value = TSFE:fe_user|user|member_num
>
> plugin.tx_powermail {
> settings.setup {
> prefill {
> #...
> membershipnum= TEXT
> membershipnum.data = temp.MEMBERSHIPNUM
>
> #...
> }
> }
> }
>
> Das gibt mir aber leider gar nichts aus.
>
> Vielen Dank und viele Grüße,
>
> Dirk
>
>
>
> Am 14.07.2015 um 00:52 schrieb Andreas Wildenrother:
>> Hallo,
>>
>> ich habe diese einfach über System -> Configuration oder entsprechend
>> über die extTables.php angefügt da ich in diesem Fall mehrere Formulare
>> an diversen Stellen mit den Feldern vorbelegen musste
>>
>> // Pseudo
>> $GLOBALS['TCA']['tx_powermail_domain_model_fields']['columns']['feuser_value']['config']['items'][XX][0]
>>
>> = [Label];
>> $GLOBALS['TCA']['tx_powermail_domain_model_fields']['columns']['feuser_value']['config']['items'][XX][1]
>>
>> = [DB fieldname];
>>
>>
>> // Extend Powermail feuser_fields -> first_name
>> $GLOBALS['TCA']['tx_powermail_domain_model_fields']['columns']['feuser_value']['config']['items'][12][0]
>>
>> = "Vorname";
>> $GLOBALS['TCA']['tx_powermail_domain_model_fields']['columns']['feuser_value']['config']['items'][12][1]
>>
>> = 'first_name';
>>
>> // Extend Powermail feuser_fields -> last_name
>> $GLOBALS['TCA']['tx_powermail_domain_model_fields']['columns']['feuser_value']['config']['items'][13][0]
>>
>> = "Nachname";
>> $GLOBALS['TCA']['tx_powermail_domain_model_fields']['columns']['feuser_value']['config']['items'][13][1]
>>
>> = 'last_name';
>>
>> Damit sollten die so eingefügten Felder im Formular zur Auswahl stehen.
>>
>> Eine Vorbelegung über Typoscript müsste jedoch auch ohne Änderungen an
>> der extTables möglich sein.
>> Ungetestet müsste etwas in diese Richtung funktionieren:
>>
>> plugin.tx_powermail {
>> settings.setup {
>> prefill {
>> ## Pseudo
>> [im Formular vergebener Feldname] = TEXT
>> [im Formular vergebener Feldname].data =
>> TSFE:fe_user|user|[DB feld]
>>
>> # First_name
>> first_name = TEXT
>> first_name.data = TSFE:fe_user|user|first_name
>> }
>> }
>> }
>>
>> Dazu 2 kurze Links aus der Bookmark-leiste:
>> FeUser Daten mit Typoscript ansprechen:
>> http://www.typo3wizard.com/de/snippets/cool-stuff-typoscript/informationen-ueber-den-angemeldeten-benutzer.html
>>
>>
>>
>> Powermail Felder via TS befüllenTyp
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
--
Andreas Wildenrother
Telefon: +49 (0) 96 31 / 6000 45-18
E-Mail: wildenrother at myc3.com <mailto:wildenrother at myc3.com>
C3 marketing agentur GmbH
Bahnhofstr. 3, 95643 Tirschenreuth
BESSERE WERBUNG.
Das Prinzip C3.
curious:
lernen & denken
clever:
filtern & entscheiden
creative:
fühlen & gestalten
www.myC3.com <http://www.myc3.com/>
Twitter <http://twitter.com/myc3>
Facebook
<http://www.facebook.com/pages/C3-marketing-agentur-GmbH/135292193873?ref=nf>
Flickr <http://www.flickr.com/photos/myc3/>
YouTube <http://www.youtube.com/tubec3>
Geschäftsführer: Dipl.-BW (FH) Thomas Franz, Christian Reisnecker,
Dipl.-BW (FH) Christian Walter
Sitz der Gesellschaft: Tirschenreuth, Handelsregister: AG Weiden/Opf.
HRB 3522
Diese E-Mail kann vertrauliche bzw. rechtlich geschützte Informationen
enthalten. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und
vernichten Sie diese E-Mail. Das unerlaubte Kopieren sowie die unbefugte
Weitergabe dieser E-Mail und ihrer Inhalte ist nicht gestattet.
This e-mail may contain confidential and/or privileged information. If
you are not the intended addressee or have received this e-mail in error
please notify the sender immediately and destroy this e-mail. Any
unauthorised copying, disclosure or distribution of the material in this
e-mail is strictly forbidden.
More information about the TYPO3-german
mailing list