[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