[Frage] Powermail 2.x, typoscriptObjectPath und eigene userFunc TYPO3-Version: 6.1.1

  • Bluespuke Bluespuke
    Sternenflotten-Admiral
    0 x
    131 Beiträge
    12 Hilfreiche Beiträge
    04. 12. 2013, 16:57

    Hallo zusammen,

    ich hab ne kleine Extension in extbase/fluid geschrieben. Hat auch soweit super geklappt. Jetzt versuch ich das Ergebnis davon an Powermail zu übergeben bzw. in die Mails mit rein zu bekommen.

    Die Doku hab ich bereits durch und auch Alex' Tutorial hier: http://www.typo3.net/forum/thematik/zeige/thema/111899/?show=1

    Ich hab auch einen ersten Versuch unternommen, der von Erfolg gekrönt war:

    1. lib.test = TEXT
    2. lib.test.value = Typoscript cObject geglückt!

    1. {f:cObject(typoscriptObjectPath: 'lib.test')}

    Der angegebene Text wird in beiden Mails sowie der Antwortseite meines Formulars angezeigt.

    Jetzt wollte ich das ganze umbauen, damit ich den URL-Parameter (bleibt bestehen via linkVars) mit Hilfe einer userFunc ersetzen. Diese funktioniert per TypoScript eingebunden wunderbar:

    1. lib.irgendwas = COA_INT
    2. lib.irgendwas.10 = USER
    3. lib.irgendwas.10{
    4. userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
    5. pluginName = Xxx
    6. extensionName = Xxx
    7. controller = Xxx
    8. action = xxx
    9. vendorName = TYPO3
    10. switchableControllerActions {
    11. Menu {
    12. 1 = xxx
    13. }
    14. }
    15. }

    Jetzt hab ich in die 3 RTE-Felder folgendes eingefügt:
    1. {f:cObject(typoscriptObjectPath: 'lib.irgendwas')}

    [b]Fazit:[/b]

    • In der Antwortseite wird meine Ausgabe gerendert, alles wunderbar
    • In beiden Mails fehlt jede Ausgabe...

    Ist das normal so? Ich denke mal, dass erst die Mails verarbeitet werden von Powermail und dann die eigentliche Seite gerendert wird... Oder liegt das an dem COA_INT?
    Ich hab bisher auch keine nützlichen Google-Ergebnisse gefunden (oder ich hab mit den falschen Begriffen gesucht...).

    Hat vlt. jemand ähnliche Erfahrungen gemacht oder einfach nur fundierteres Expertenwissen in dem Fall? Ich stocher da eher im Heuhaufen rum ;-)


  • dercin dercin
    R2-D2
    0 x
    107 Beiträge
    0 Hilfreiche Beiträge
    14. 10. 2014, 10:10

    So, nach längerer Zeit nochmal zurück :)

    Wenn man eine Userfunc nutzt und innerhalb der Userfunc per Bootstrap->run die eigene Action funktioniert es, zumindest halbwegs. Sobald man es zweimal ausführt, was bei mir der Fall ist, einmal für den Empfänger und einmal für den Sender, dann ist die zweite Mail völlig zerstört. Es fehlt der dynamische Inhalt und HTML wird nicht korrekt angezeigt. Bei einem Viewhelper ist es das gleiche.

    Ich habe nun ein Plugin eingebaut, welches vor dem Submit von Powermail den Warenkorb in eine Session schreibt und Powermail dann per Userfunc auf diese Session zugreift, damit klappt es zumindest, auch wenn es nicht sonderlich schön ist :)

    Gruß Nico

    http://www.nicolas-stey.de - Webentwicklung
    http://www.steyle.com - Fotografie

  • nerphunk nerphunk
    Padawan
    0 x
    47 Beiträge
    0 Hilfreiche Beiträge
    12. 12. 2014, 13:27

    Hallo Zusammen,

    vermutlich habe ich ein ähnliches Problem bei dem ich nicht mehr weiterkomme (TYPO3 6.2.9 powermail 2.1.9):

    Ich versuche den Receiver eines Powermail Formulars dynamisch zuzuweisen:

    1. lib.receiver = CONTENT
    2. lib.receiver {
    3. table = tt_news
    4.  
    5. pidInList = 326
    6. andWhere.dataWrap = uid={GP:tx_powermail_pi1|rmail}
    7. andWhere.insertData = 1
    8. }
    9.  
    10. renderObj = TEXT
    11. renderObj {
    12. field = author_email
    13. }
    14.  
    15. }

    Die lib funktioniert. Weise ich Sie einem powermail Feld zu, wird die richtige E-Mailadresse angezeigt.

    Versuche ich allerdings die lib als Receiver bei Powermail einzutragen, dann wird keine E-Mail verschickt.

    1. {f:cObject(typoscriptObjectPath:'lib.receiver')}

    Ändere ich meine lib.receiver wie folgt, dann funktioniert alles:

    1. lib.receiver = TEXT
    2. lib.receiver.value = xxx@yyy.de

    Das gleiche passiert, wenn ich eine userFunc verwende. Schreibe ich die E-Mailadresse direkt in die Ausgabe, funktioniert es. Hole ich mir die E-Mailadresse per SQL, dann wird keine Mail verschickt.

    Ich freue mich über jeden Hinweis ;)

    Vielen Dank und Grüße

    Nepomuk

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    12. 12. 2014, 18:53

    Hallo Nepomuk,

    bist du sicher, dass der GET/POST-Parameter tx_powermail_pi1[rmail]nach dem Absenden des Formulares noch gefüllt ist?

    einfach mal

    1. page.20 = TEXT
    2. page.20.data = tx_powermail_pi1|rmail
    3. page.20.wrap = a|b

    auf der Seite einfügen und Formular absenden - steht dann noch was da?

    Hinweis: Ich denke, dass die Verwendung eines GET-Paramters für CONTENT abgesichert werden sollte. So hast du IMO eine SQL-Injection Lücke eröffnet (such mal nach "TypoScript CONTENT GP: intval")

    in2code.de - Wir leben TYPO3
    - Möchtest du TYPO3 komplett verstehen? Eigene Erweiterungen erstellen? Bei uns gibt es auch Schulungen https://www.in2code.de/produkte/typo3-schulungen/
    - Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! https://www.in2code.de/agentur/karriere/

  • nerphunk nerphunk
    Padawan
    0 x
    47 Beiträge
    0 Hilfreiche Beiträge
    17. 12. 2014, 15:04

    Hallo Alex,

    vielen Dank für die Antwort. Du hast Recht, der Parameter ist nicht mehr gefüllt. Jetzt weiß ich wo ich ansetzen muss.

    Viele Grüße

    Nepomuk