calendar Base Event mit Powermail verknüpfen
| Autor | Nachricht |
|---|---|
|
Verfasst am: 03. 02. 2009 [14:40]
|
|
|
typomik
Themenersteller
Dabei seit: 09.08.2004
Beiträge: 43
|
Hallo, ich will cal mit powermail verknüpfen. Dazu sollen von einem ausgewählten event der Titel, das Datum und ein paar Adressdaten ins powermail formular übertragen werden. so, Titel und Datum geht ja (fast) einfach: TYPOSCRIPT plugin.tx_powermail_pi1 { prefill{ #### Seminartitel aus cal event übernehmen uid239 = COA uid239.10 = RECORDS uid239.10 { wrap =| source.data = GPvar:tx_cal_controller|uid tables = tx_cal_event conf.tx_cal_event = TEXT conf.tx_cal_event.field = title } #### Seminardatum u Zeit aus cal event übernehmen uid240 = COA uid240.10 = RECORDS uid240.10 { wrap =| source.data = GPvar:tx_cal_controller|uid tables = tx_cal_event conf.tx_cal_event = TEXT conf.tx_cal_event.field = start_date } uid240.20 = RECORDS uid240.20 { wrap =| source.data = GPvar:tx_cal_controller|uid tables = tx_cal_event conf.tx_cal_event = TEXT conf.tx_cal_event.field = start_time } Aber bei der Adresse wirds interessant bzw. - da finde ich keine Lösung, denn: im selektierten Datensatz von tx_cal_event steht nur die uid des tt_address satzes ( = location_id). Ich müsste also ein select per join etc absetzen, aber wie krieg ich das auf das formularelement? Grüsse, Kurt OS X | T3 4.5
|
|
Verfasst am: 03. 02. 2009 [14:48]
|
|
|
einpraegsam.net
Moderator
Dabei seit: 17.01.2005
Beiträge: 8607
|
Im Notfall mit einer Mini userFunc - sollte aber auch mit TS machbar sein (auch wenn ich gerade nicht weiß wie) |
|
Verfasst am: 03. 02. 2009 [16:23]
|
|
|
typomik
Themenersteller
Dabei seit: 09.08.2004
Beiträge: 43
|
Mini userFunc ok, abe rlass uns mal vorab was klären: Wo muß eine userFunction heute exakt liegen? Wenn ich es z.B. mit includeLibs.meine_id = fileadmin/meineuserfunktion.php probiere, passiert nix. Erst wenn ich die function in dieses Verzeichnis lege, tut sich was: typo3/sysext/cms/tslib/media/scripts/ Gibt es irgendwelche Sicherheitsbedenken oder Systemeinstellungen, die ich nicht kenne? Grüsse Kurt OS X | T3 4.5
|
|
Verfasst am: 03. 02. 2009 [16:34]
|
|
|
einpraegsam.net
Moderator
Dabei seit: 17.01.2005
Beiträge: 8607
|
Selbstverständlich kann eine userFunc auch unter fileadmin liegen - wie ist dein TS? includeLibs? |
|
Verfasst am: 03. 02. 2009 [18:49]
|
|
|
typomik
Themenersteller
Dabei seit: 09.08.2004
Beiträge: 43
|
Hallo Alex, einen Teil der Lösung habe ich schon. 1. das mit dem includeLib war mein Fehler (irgendwo ein Buchstabendreher ...) 2. die userfunc sieht jetzt so aus: PHP <? class user_caleventuidtottaddress { var $cObj;// The backReference to the mother cObj object set at call time /** routine holt per tx_cal_event|uid den zugehörigen tt_address satz kurt knote, 01 2009 **/ function main($content,$conf){ $select='tt_address.uid, tt_address.name, tt_address.phone, tt_address.address, tt_address.zip, tt_address.city'; $from='tt_address INNER JOIN tx_cal_event'; $where='tx_cal_event.uid=128 AND tt_address.uid=tx_cal_event.location_id'; $res = $GLOBALS['TYPO3_DB']->exec_SELECTgetRows($select, $from, $where); $content.=$res[0][name].', '.$res[0][address].', '.$res[0][zip].' '.$res[0][city].', '.$res[0][phone]; return $content; } } ?> Jetzt fehlt mir nur noch das Auslesen der txcalevent-uid ( oben ist dafür einfach die 128 eingesetzt!). Da habe ich wieder mal keinen Schimmer, da ich ein verschachteltes Array auslesen muß! so sieht das Array aus: PHP Array
(
[tx_cal_controller] => Array
(
[getdate] => 20080501
[view] => event
[lastview] => month-1617|list-1624
[type] => tx_cal_phpicalendar
[uid] => 128
)
[cHash] => f08864def4
)so, die Frage ist also was muß in der Klammer stehen, um an die uid zu kommen? PHP $event_uid = t3lib_div::_GET( ); Grüsse Kurt OS X | T3 4.5
|
|
Verfasst am: 04. 02. 2009 [14:06]
|
|
|
typomik
Themenersteller
Dabei seit: 09.08.2004
Beiträge: 43
|
Hallo, ich habs endlich rausgefunden, wie ich zur uid in der verschachtelten url komme: PHP foreach($_GET['tx_cal_controller'] as $parameter => $wert) { // für alle $_GET[$parameter]=$wert
if($parameter == "uid"<img src="typo3conf/ext/mm_forum//res/smilies/icon_wink.gif" alt="icon_wink.gif" /> {$event_uid = $wert;}
};grüsse, Kurt PS: ich habe übrigens auch das Auslesen von Datum und Zeit per PHP gelöst, da CAL speziell das Datum seltsamerweise als String ablegt! OS X | T3 4.5
|
|
Verfasst am: 06. 06. 2009 [20:26]
|
|
|
Maximus
Dabei seit: 06.06.2009
Beiträge: 6
|
typomik schrieb: so, Titel und Datum geht ja (fast) einfach: Hallo Kurt, genau dieses Problem bekomme ich nicht in den Griff?! Ich habe versucht die Daten des aktuellen Events auszulesen, jedoch ohne erfolgt. Ich verwende dabei als Kalender-Extension Extendet Calendar. Ich habe das Powermail-Formular in das Eventformular des Kalenders angefügt. Somit sollte ich den direkten Zugriff auf die uid des aktuellen Events haben. Die Userdaten werden angezeigt. Der url-Eintrag sieht wie folgt aus: .../index.php?id=227&tx_calendar_pi1[f1]=3&cHash=9a586a51e5 plugin.tx_powermail_pi1 { prefill { uid23 = COA uid23.10 = RECORDS uid23.10 { wrap =| source.data = GPvar:tx_calendar_pi1|uid tables = tx_calendar_item conf.tx_calendar_item = TEXT conf.tx_calendar_item.field = title } } } Es wird einfach garnichts angezeigt Habe ich irgendwas übersehen? Sind sonst noch Einstellungen in Typo3 notwendig? Gruß Max [Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 06.06.2009 um 20:27.] |
|
Verfasst am: 06. 06. 2009 [21:13]
|
|
|
einpraegsam.net
Moderator
Dabei seit: 17.01.2005
Beiträge: 8607
|
Hi Max, vielleicht hilft dir dieser Beitrag weiter: http://www.typo3.net/forum/list/list_post//87081/ Grüße, Alex |
|
Verfasst am: 06. 06. 2009 [21:53]
|
|
|
Maximus
Dabei seit: 06.06.2009
Beiträge: 6
|
Hallo Alex, diesen Tipp hatte ich schon gelesen, danke. Da ich schon auf der Eventseite bin, möchte ich den User die Möglichkeit geben, sich genau für dieses Event anzumelden. Also ist da eine Auswahlliste nicht das was ich suche. Irgendwie verstehe ich das auch nicht so richtig. Ich habe sämtliche Daten auf der Seite (Even und Userdaten). Ich möchte nur noch die Eventdaten in die Anmelde-Mail übertragen. Daher war dieses Beispiel genau das, was ich gesucht habe. Leider funktioniert das nicht, keine Ahnung warum Ich habe schon versucht, systematisch an das Problem heran zu gehen. So kann ich noch nicht einmal die Parameter auslesen: TYPOSCRIPT plugin.tx_powermail_pi1 { prefill { uid23 = TEXT uid23.data= GPvar:var } } Das gibt mir schon mal zu denken. Übrigens, Dein Tipp funktioniert. Ich erhalte nun eine Liste sämtlicher Events aus dem Kalender (tx_calendar_item). Nur ist das nicht das was ich umsetzen möchte... Gruß Max [Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 06.06.2009 um 21:54.] |
|
Verfasst am: 06. 06. 2009 [22:51]
|
|
|
einpraegsam.net
Moderator
Dabei seit: 17.01.2005
Beiträge: 8607
|
Ich weiß das es funktioniert, müsste es aber auch erst selbst ausprobieren... |



