cal base Datum zu powermail übergeben [Gelöst]

  • Peddar86 Peddar86
    T3PO
    0 x
    20 Beiträge
    0 Hilfreiche Beiträge
    08. 10. 2010, 16:30

    Hallo Zusammen!

    Ich habe folgendes Problem. Und zwar das Datumsformat von cal base.

    Ich habe es soweit geschafft, dass ich bestimmte Felder aus cal base auslesen und an powermail weitergeben kann.

    Das Problem nun ist aber, dass das ausgelesene Datum im folgendem Format erscheint:

    YYYYMMDD

    Habe hier im Forum auch schon den Thread gefunden, wie man es umwandelt. ( http://www.typo3.net/forum/beitraege/extensions_schreiben/85825/ )

    Ich weiß aber nicht wo ich dieses php Script einbinden muss, damit mein Datum bei der Übergabe zu powermail im gewünschten Format erscheint (DD.MM.YYYY). :-(

    Da bräuchte ich nun einmal bitte die Hilfe von euch.

    Vielen Dank im Voraus!

    Gruß
    Peddar


  • 1
  • m.z. m.z.
    Padawan
    0 x
    50 Beiträge
    0 Hilfreiche Beiträge
    26. 10. 2010, 00:03

    Hallo Peddar,

    es kommt darauf an, wie Du die Daten aus CAL in POWERMAIL einbindest.

    Wenn Du TypoScript verwendest, kannst Du möglicherweise stdWrap + Formatierung verwenden.

    Zeige mir doch mal Deinen Lösungsansatz mit den entspr. Scripten. Dann kann ich Dir weiterhelfen.

    VG, Matthias

  • Peddar86 Peddar86
    T3PO
    0 x
    20 Beiträge
    0 Hilfreiche Beiträge
    27. 10. 2010, 18:49

    Hallo Matthias,

    ja genau ich lese die Daten mit folgendem Code per TypoScript aus.

    1. lib.kursbeg = CONTENT
    2. lib.kursbeg {
    3. table = tx_cal_event
    4.  
    5. pidInList = 31
    6. andWhere {
    7. data = GPVar:tx_cal_event|uid
    8. wrap = tx_cal_event.uid=|
    9. }
    10. }
    11. renderObj = TEXT
    12. renderObj.field=start_date
    13. }
    14.  
    15. plugin.tx_powermail_pi1 {
    16. prefill {
    17. uid3 < lib.kursbeg
    18. }
    19. }

    Ich lasse die Daten in der Listenansicht von CAL anzeigen und lasse sie dann durch einen Klick auf einen Button (Weiterleitung zu Powermail Formular) in die Powermail-Felder füllen.

    Folgender Code steckt hinter diesem Button

    1. <form action="http://domain.de/index.php?id=32&tx_cal_event[uid]=###UID###" method="post">
    2. <input type="submit" value="Anmelden"/>
    3. </form>

    Problem ist halt nur die Formatierung des Datums :-(

    Schon mal vielen Dank im Voraus für deine Mühen!

    VG
    Peddar

  • m.z. m.z.
    Padawan
    0 x
    50 Beiträge
    0 Hilfreiche Beiträge
    12. 11. 2010, 09:40

    Hallo Peddar,

    die Lösung aus der o.g. Quelle kannst Du nur in einer eigenen PHP Function z.B. in einer eigenen Extension oder Userfunc verwenden.

    Das Problem ist, daß cal das Datum nicht als normalen Unix-Timestamp abspeichert sonder im Format JJJJMMTT.

    Per TS kannst Du das vielleicht so lösen ([b]völlig ungetestet und aus dem Bauch heraus[/b]):

    1. renderObj = TEXT
    2. renderObj {
    3. // Tag
    4. 10 = TEXT
    5. 10.field=start_date
    6. 10.stdWrap.substring = 7,2
    7. 10.wrap = |.
    8. // Monat
    9. 20 = TEXT
    10. 20.field=start_date
    11. 20.stdWrap.substring = 4,2
    12. 20.wrap = |.
    13. // Jahr
    14. 30 = TEXT
    15. 30.field=start_date
    16. 30.stdWrap.substring = 0,4
    17. }

    Möglicherweise muß das anders geschrieben werden aber die Funktion ist:

    Bilde einen String aus den Teilen:
    - 2 Zeichen für Tag
    - dahinter einen '.'
    - 2 Zeichen für Monat
    - dahinter einen '.'
    - 4 Zeichen für Jahr

    Damit aus JJJJMMTT dann TT.MM.JJJJ wird.

    VG, Matthias

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    12. 11. 2010, 15:03

    @Peddar86: Bei deiner Lösung unbedingt noch intval verwenden und die Variable gegen SQL Injection absichern

    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/

  • Peddar86 Peddar86
    T3PO
    0 x
    20 Beiträge
    0 Hilfreiche Beiträge
    15. 11. 2010, 11:10

    Vielen, vielen Dank Matthias! Genau den Denkanstoß habe ich gebraucht. Nun klappt alles so wie ich es mir vorgestellt habe.

    Hier die Lösung:

    1. lib.kursbeg = CONTENT
    2. lib.kursbeg {
    3. table = tx_cal_event
    4.  
    5. pidInList = 31
    6. andWhere {
    7. data = GPVar:tx_cal_event|uid
    8. wrap = tx_cal_event.uid=|
    9. intval = 1
    10. }
    11. }
    12. renderObj = COA
    13. renderObj {
    14. 10 = TEXT
    15. 10{
    16. field=start_date
    17. wrap = |.
    18. }
    19. 20 = TEXT
    20. 20{
    21. field=start_date
    22. wrap = |.
    23. }
    24. 30 = TEXT
    25. 30{
    26. field=start_date
    27. }
    28. }

    @einpraegsam.net
    Ich habe mir zu diesem Thema nun schon einiges angelesen, aber weiß nicht genau, wie ich es umsetze.
    z.B: [url=]http://t3n.de/magazin/typo3-extensions-absichern-sicherheitslucken-eigenen-221198/10/[/url]

    Das heißt also auch, dass ich diese Absicherung für jedes einzelne Feld, welches ich von cal base nach powermail übertrage, einbauen muss. Richtig? Egal ob String oder Integer?

    Viele Grüße und nochmals Danke
    Peddar

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    15. 11. 2010, 12:01

    [quote="Peddar86"]
    Das heißt also auch, dass ich diese Absicherung für jedes einzelne Feld, welches ich von cal base nach powermail übertrage, einbauen muss. Richtig? Egal ob String oder Integer?
    [/quote]

    Du übergibst nur eine Variable und das ist die UID. Diese zwingst du ja (in deinem letzen Code) eine Zahl zu sein. Das ist genau so richtig.

    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/

  • Peddar86 Peddar86
    T3PO
    0 x
    20 Beiträge
    0 Hilfreiche Beiträge
    16. 11. 2010, 10:55

    Okay super! Dann nochmals vielen Dank an euch Beide!

    Viele Grüße
    Peter

  • 1