Hallo,
das Problem ist eigentlich recht einfach:
Ich habe tt_news und powermail auf der selben Seite nebeneinander stehen.
Das funktioniert soweit auch ganz gut, nur geht leider in der SINGLE Ansicht von tt_news die news_id verloren, wenn eine mail gesendet wird, so dass dann das unschöne "Keine news_id übergeben." erscheint.
Wie bringe ich powermail dazu, nicht nur die page-id zu übernehehmen, sondern auch noch das angehängte &tx_ttnews[tt_news]=xx ?
Weiß jemand Rat?
Vielen Dank!
Dynamischer TypoScript-Marker ins Formular Action von powermail.
Dann über typolink füllen
ok... ich verstehe, in welche Richtiung die Lösung geht, aber leider bin ich noch längst nicht so fit.
Noch verstehe ich nicht, wo der Marker hin muss, aber immerhin habe ich einen Verdacht wie ich ihn fülle...
so langsam komme ich der Sache näher, aber es gelingt mir nicht, den angehängten Parameter zu lesen.
Mit
$this->cObj->typolink_conf["additionalParams"]
habe ich es versucht, aber das ist offensichtlich falsch.
wie komme ich an das Ding ran?
Ich habe keine Ahnung, was du da gemacht hast...
Ich habe versucht, direkt in der extension herumzupfuschen.
In class.tx_powermail_form.php
findet sich die Stelle, wo der ###POWERMAIL_TARGET###-Marker gefüllt wird:
$this->OuterMarkerArray['###POWERMAIL_TARGET###'] = htmlentities($this->cObj->typolink('y', array('returnLast' => 'url', 'parameter' => $GLOBALS['TSFE']->id, 'section' => ($this->cObj->data['_LOCALIZED_UID'] > 0 ? $this->cObj->data['_LOCALIZED_UID'] : $this->cObj->data['uid']),'additionalParams' => '&tx_powermail_pi1[mailID]='.($this->cObj->data['_LOCALIZED_UID'] > 0 ? $this->cObj->data['_LOCALIZED_UID'] : $this->cObj->data['uid']), 'useCacheHash'=>1)));
so wie ich mit $GLOBALS['TSFE']->id an die ID der Seite komme, oder mit
$this->cObj->data['uid'] an die UID von Powermail, müsste es doch einen Code-Schnipsel geben, der die aditionalParams, die tt_news erzeugt hat, hier wieder einfügt.
Ich weiß, das ist nicht besonders elegant, aber Hauptsache es funktioniert erstmal...
herzlichen Dank!
plugin.tx_powermail_pi1.dynamicTyposcript {
yourfield1 = TEXT
yourfield1.data = getIndpEnv:REQUEST_URI
}
--> dann bekommst Du einen Marker -> ###POWERMAIL_TYPOSCRIPT_YOURFIELD1###
Mir ist aber nicht ganz klar wie ich zum additional Parameter zB. &tx_powermail_pi1[mailID]=75 komme...
Was citizenkane schreibt, wäre auch meine Vorgehensweise
Ins Blaue:
plugin.tx_powermail_pi1.dynamicTyposcript {
yourfield1 = TEXT
yourfield1 {
value = x
typolink.parameter.data = TSFE:id
typolink.returnLast = url
typolink.additionalParams.cObject = COA
typolink.additionalParams.cObject {
10 = TEXT
10.value = 75
10.wrap = &tx_powermail_pi1[mailID]=|
}
}
Ich hab's hingekriegt!!!!
Wurde aber noch recht kompliziert, denn der additionalParam von tt_news muss vor dem von powermail stehen. Einfach hintendran kleben geht also nicht.
Mit citizenkanes Tipp habe ich einen neuen Marker erzeugt.
Dann in class.tx_powermail_form.php
eine Bedingung eingefügt, die die entsprechenden SINGLE-VIEW-Seiten erkennt und in diesem Falle an ###POWERMAIL_TARGET### vorne abschneidet was sonst doppelt wäre.
In tmpl_formwrap.html beide Marker hintereinander gesetzt - funktioniert!
Ganz herzlichen Dank für eure Hilfe!😃
da es seit der neuen Version keine "dynamicTyposcript" mehr gibt.
wie lege ich nun mit der neuen powermail-Version so ein Feld an?