<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.stephanschlegel.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=79.240.30.52</id>
	<title>Wikizone - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.stephanschlegel.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=79.240.30.52"/>
	<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=Spezial:Beitr%C3%A4ge/79.240.30.52"/>
	<updated>2026-05-07T00:32:52Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>https://wiki.stephanschlegel.de/index.php?title=TYPO3_-_Powermail&amp;diff=20078</id>
		<title>TYPO3 - Powermail</title>
		<link rel="alternate" type="text/html" href="https://wiki.stephanschlegel.de/index.php?title=TYPO3_-_Powermail&amp;diff=20078"/>
		<updated>2013-10-24T06:55:51Z</updated>

		<summary type="html">&lt;p&gt;79.240.30.52: /* Felder vorausfüllen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Powermail Extension&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Snippets ==&lt;br /&gt;
&lt;br /&gt;
=== E-Mail Empfänger abhängig von Feldwerten ===&lt;br /&gt;
==== Quellen ====&lt;br /&gt;
http://blog.marmalade.de/2010/06/powermail-e-mailempfanger-mit-case-unterscheidung-uber-typoscript-zuweisen/ (3/2012)&lt;br /&gt;
&lt;br /&gt;
http://typo3blogger.de/powermail-empfanger-im-frontend-wahlen/ (3/2012)&lt;br /&gt;
Verschiedene Möglichkeiten:&lt;br /&gt;
* Direkt (schlecht)&lt;br /&gt;
* Über dynamisches TypoScript&lt;br /&gt;
* Angepasste Datenbankabfrage&lt;br /&gt;
&lt;br /&gt;
==== Direkt ====&lt;br /&gt;
Im Empfänger Feld kann man direkt einen Feldmarker angeben z.B.: ###UID234###, dann wird direkt der Wert des Feldes benutzt. Schlecht, weil einfach zu manipulieren (potentielle Spamschleuder)&lt;br /&gt;
&lt;br /&gt;
==== E-Mail über dynamisches TypoScript ====&lt;br /&gt;
TS&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Case Objekt das den Wert eines Powermail Feldes auswertet. &lt;br /&gt;
emailan = CASE&lt;br /&gt;
emailan {&lt;br /&gt;
    ### Unterschiedung anhand Feld mit der UID 34 (Form hat id 25)&lt;br /&gt;
    key.data = TSFE:fe_user|sesData|powermail_25|uid34&lt;br /&gt;
    ### Standardwert&lt;br /&gt;
    default = TEXT&lt;br /&gt;
    default.value = info@indihar.de&lt;br /&gt;
    ### Wert bei Auswahl &amp;quot;empf2&amp;quot;&lt;br /&gt;
    empf2 = TEXT&lt;br /&gt;
    empf2.value = schlegel@geo-bit.de&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// neuen dynamischen Powermailmarker (###POWERMAIL_TYPOSCRIPT_EMPFAENGER###)&lt;br /&gt;
// dieser kann im Formular im Empfängerfeld eingetragen werden.&lt;br /&gt;
plugin.tx_powermail_pi1.dynamicTyposcript {&lt;br /&gt;
    empfaenger &amp;lt; emailan&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
==== Angepasste Datenbankabfrage ====&lt;br /&gt;
http://typo3blogger.de/powermail-empfanger-im-frontend-wahlen/&lt;br /&gt;
&lt;br /&gt;
http://www.typo3.net/forum/list/list_post//76461/?howto=1&amp;amp;page=1&lt;br /&gt;
&lt;br /&gt;
http://typo3.org/documentation/document-library/extension-manuals/powermail/1.4.15/view/1/11/#id4334579&lt;br /&gt;
&lt;br /&gt;
Die Extension Powermail bietet eine komfortable Möglichkeit Formulare zusammenzuklicken – übrigens auch für Redakteure. Selbstverständlich ist Skalierbarkeit und Flexibilität ein großes Thema.&lt;br /&gt;
So ist es auch einfach möglich, den Empfänger im Frontend auszuwählen.&lt;br /&gt;
&lt;br /&gt;
Im Netz gibt es schon ein paar Erklärungen zu diesem Thema, aber ich möchte es dennoch noch einmal aufgreifen, da ich oft auf Empfängerwahl angesprochen werde.&lt;br /&gt;
&lt;br /&gt;
Mail-Adressen direkt in der Select Box&lt;br /&gt;
Technisch wäre es natürlich kein Problem eine Selectbox mit E-Mail Adressen im Frontend anzeigen zu lassen und im Flexform im Empfängerfeld dieses Feld durch einen Marker wieder aufzugreifen (z.B. ###UID234###).&lt;br /&gt;
Der Nachteil liegt aber auf der Hand:&lt;br /&gt;
- Mail Adressen können im Frontend aus dem Quelltext ausgelesen werden&lt;br /&gt;
- Mail Adressen können einfach manipuliert werden (im schlimmsten Fall stellt ihr so eine Spamschleuder ins Netz)&lt;br /&gt;
Diese Methode ist also allenfalls im Intranet nutzbar.&lt;br /&gt;
&lt;br /&gt;
Umweg über Datenbank-UID&lt;br /&gt;
Eine andere Idee ist es, Datankbankeinträge (z.B. tt_address oder fe_user) mit E-Mail Adressen vorzunehmen und in einer (z.B.) Selectbox die UID des Datensatzes wieder aufzugreifen.&lt;br /&gt;
Beispiel Eintrag im Flexform&lt;br /&gt;
In diesem Beispiel hat man die Wahl zwischen UID 1 und 2. Verwendeter Marker ist ###UID42###.&lt;br /&gt;
SQL Query Beispiel&lt;br /&gt;
Damit Powermail den Umweg über die Datenbank geht, bietet sich der Einsatz des Feldes “Alternative SQL-Query” an.&lt;br /&gt;
&lt;br /&gt;
Weitere Infos&lt;br /&gt;
Natürlich kann man auch an ganze Usergroups schicken:&lt;br /&gt;
&lt;br /&gt;
SELECT email FROM fe_users WHERE find_in_set(###UID43###,usergroup) &amp;gt; 0&lt;br /&gt;
AND hidden = 0 AND deleted = 0&lt;br /&gt;
&lt;br /&gt;
Beispiel mit fester Usergroup UID44:&lt;br /&gt;
&lt;br /&gt;
SELECT email FROM fe_users WHERE find_in_set(44,usergroup) &amp;gt; 0&lt;br /&gt;
AND hidden = 0 AND deleted = 0&lt;br /&gt;
&lt;br /&gt;
Hier ein Beispiel mit Checkboxen (mehrere Empfänger auswählen):&lt;br /&gt;
&lt;br /&gt;
SELECT email FROM fe_users WHERE uid IN(###UID43###)&lt;br /&gt;
&lt;br /&gt;
Eine ganz andere Möglichkeit ist der Einsatz von Dynamictyposcript im Empfängerfeld – auch hier lassen sich einige Anforderungen flexibel umsetzen. Dynamictyposcript in Powermail&lt;br /&gt;
&lt;br /&gt;
=== Formular in Datenbank speichern ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
plugin.tx_powermail_pi1{&lt;br /&gt;
    dbEntry {&lt;br /&gt;
&lt;br /&gt;
        # Speicherung für Tabelle ermöglichen&lt;br /&gt;
        tt_address._enable = TEXT&lt;br /&gt;
        tt_address._enable.value = 1&lt;br /&gt;
&lt;br /&gt;
        #  &amp;quot;tt_address.name&amp;quot; mit dem Wert des Powermail felds ausfüllen&lt;br /&gt;
        tt_content uid 88, field uid18 (###uid18###)&lt;br /&gt;
        tt_address.name = TEXT&lt;br /&gt;
        tt_address.name.data = TSFE:fe_user|sesData|powermail_88|uid18&lt;br /&gt;
&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Ausführliches Beispiel ===&lt;br /&gt;
&lt;br /&gt;
Constants&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
plugin.powermail.js.alwaysInclude = 1&lt;br /&gt;
plugin.powermail.js.includeJquery = 0&lt;br /&gt;
plugin.powermail.js.includeJqueryTools = 0&lt;br /&gt;
plugin.powermail.js.includeJqueryToolsTabs = 0&lt;br /&gt;
plugin.powermail.allow.email2sender = 0&lt;br /&gt;
plugin.powermail.PID.dblog = 0&lt;br /&gt;
plugin.powermail.markerALL.hideLabel = 1&lt;br /&gt;
plugin.powermail.format.datetime = %d.%m.%Y% %H:%M&lt;br /&gt;
plugin.powermail.format.date = %d.%m.%Y&lt;br /&gt;
plugin.powermail.debug.output = &lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Setup&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// CSS Pfad ändern (oder gar nicht erst statisch einbinden ;-)  )&lt;br /&gt;
page.includeCSS.powermail_frontend_basic = fileadmin/templates/onlineboerse/powermail.css&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Datenbank Speicherung mit verschiedenen Optionen ====&lt;br /&gt;
Setup&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
// Powermail DB Storage&lt;br /&gt;
// Extra userfunc to convert date to unix timestamp&lt;br /&gt;
includeLibs.powermailTimestamp = fileadmin/templates/scripts/user_powermailTimestamp.php&lt;br /&gt;
&lt;br /&gt;
plugin.tx_powermail_pi1.dbEntry{  &lt;br /&gt;
  tx_gbbulletin_bulletin {&lt;br /&gt;
&lt;br /&gt;
    _enable = TEXT&lt;br /&gt;
    _enable.value = 1&lt;br /&gt;
     &lt;br /&gt;
    hidden = TEXT&lt;br /&gt;
    hidden.value = 1&lt;br /&gt;
     &lt;br /&gt;
    pid = TEXT&lt;br /&gt;
    pid.value = 102&lt;br /&gt;
        &lt;br /&gt;
    tstamp = TEXT&lt;br /&gt;
    tstamp.data = date:U&lt;br /&gt;
         &lt;br /&gt;
    crdate = TEXT&lt;br /&gt;
    crdate.data = date:U&lt;br /&gt;
&lt;br /&gt;
    title = TEXT&lt;br /&gt;
    title.data = TSFE:fe_user|sesData|powermail_214|uid1&lt;br /&gt;
&lt;br /&gt;
    author = TEXT&lt;br /&gt;
    author.data = TSFE:fe_user|sesData|powermail_214|uid2&lt;br /&gt;
&lt;br /&gt;
    place = TEXT&lt;br /&gt;
    place.data = TSFE:fe_user|sesData|powermail_214|uid3&lt;br /&gt;
    &lt;br /&gt;
    description = TEXT&lt;br /&gt;
    description.data = TSFE:fe_user|sesData|powermail_214|uid4&lt;br /&gt;
&lt;br /&gt;
    contact = TEXT&lt;br /&gt;
    contact.data = TSFE:fe_user|sesData|powermail_214|uid5&lt;br /&gt;
&lt;br /&gt;
    qualification = TEXT&lt;br /&gt;
    qualification.data = TSFE:fe_user|sesData|powermail_214|uid6&lt;br /&gt;
    &lt;br /&gt;
    date = USER&lt;br /&gt;
    date.userFunc = user_powermailTimestamp-&amp;gt;preflight&lt;br /&gt;
    date.userFunc.field = uid7&lt;br /&gt;
    date.userFunc.formuid = 214&lt;br /&gt;
    &lt;br /&gt;
    period = TEXT&lt;br /&gt;
    period.data = TSFE:fe_user|sesData|powermail_214|uid29&lt;br /&gt;
&lt;br /&gt;
    end_date = USER&lt;br /&gt;
    end_date.userFunc = user_powermailTimestamp-&amp;gt;preflight&lt;br /&gt;
    end_date.userFunc.field = uid14&lt;br /&gt;
    end_date.userFunc.formuid = 214&lt;br /&gt;
    &lt;br /&gt;
    url = TEXT&lt;br /&gt;
    url.data = TSFE:fe_user|sesData|powermail_214|uid8&lt;br /&gt;
&lt;br /&gt;
    text1 = TEXT&lt;br /&gt;
    text1.data = TSFE:fe_user|sesData|powermail_214|uid9&lt;br /&gt;
    &lt;br /&gt;
    cluster = TEXT&lt;br /&gt;
    cluster.data = TSFE:fe_user|sesData|powermail_214|uid11&lt;br /&gt;
    &lt;br /&gt;
    # add mm relation to uid 2 of tx_gbbulletin_cluster (via mm table)&lt;br /&gt;
    _mm = COA&lt;br /&gt;
    _mm.10 = COA&lt;br /&gt;
    # 1 is always the mm table&lt;br /&gt;
    _mm.10.1 = TEXT&lt;br /&gt;
    _mm.10.1.value = tx_gbbulletin_cluster_mm&lt;br /&gt;
    # 2 is always the other table&lt;br /&gt;
    _mm.10.2 = TEXT&lt;br /&gt;
    _mm.10.2.value = tx_gbbulletin_cluster&lt;br /&gt;
    # 3 is always the uid of the other table to get a relation to this&lt;br /&gt;
    # (in this case uid1 of tx_gbbulletin_cluster)&lt;br /&gt;
    _mm.10.3 = TEXT&lt;br /&gt;
    _mm.10.3.value = 1&lt;br /&gt;
    &lt;br /&gt;
    tag = TEXT&lt;br /&gt;
    tag.data = TSFE:fe_user|sesData|powermail_214|uid12&lt;br /&gt;
&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Userfunktion zum umwandeln von Datum in Timestamp ===&lt;br /&gt;
Diese Funktion wird im obigen Beispiel zu Datenbankspeicherung verwendet&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php &lt;br /&gt;
&lt;br /&gt;
    class user_powermailTimestamp { &lt;br /&gt;
     &lt;br /&gt;
     &lt;br /&gt;
        // Function preflight() will be used from typoscript &lt;br /&gt;
        function preflight($content=&amp;#039;&amp;#039;, $conf=array()) { &lt;br /&gt;
            $value = $GLOBALS[&amp;#039;TSFE&amp;#039;]-&amp;gt;fe_user-&amp;gt;sesData[&amp;#039;powermail_&amp;#039;.$conf[&amp;#039;userFunc.&amp;#039;][&amp;#039;formuid&amp;#039;]][$conf[&amp;#039;userFunc.&amp;#039;][&amp;#039;field&amp;#039;]]; &lt;br /&gt;
            return $this-&amp;gt;getDate($value); &lt;br /&gt;
        } &lt;br /&gt;
         &lt;br /&gt;
         &lt;br /&gt;
        // Main getDate() changes a date in any format to an unix timestamp &lt;br /&gt;
        function getDate($string, $default = &amp;#039;now&amp;#039;, $timestamp = 1) { &lt;br /&gt;
            $error = 0; // no error at the beginning &lt;br /&gt;
            $string = str_replace(array(&amp;#039;-&amp;#039;, &amp;#039;_&amp;#039;, &amp;#039;:&amp;#039;, &amp;#039;+&amp;#039;, &amp;#039;,&amp;#039;, &amp;#039; &amp;#039;), &amp;#039;.&amp;#039;, $string); // change 23-12-2009 -&amp;gt; 23.12.2009 AND &amp;quot;05:00 23.01.2009&amp;quot; -&amp;gt; 05.00.23.01.2009 &lt;br /&gt;
            if (method_exists(&amp;#039;t3lib_div&amp;#039;, &amp;#039;trimExplode&amp;#039;)) $dateParts = t3lib_div::trimExplode(&amp;#039;.&amp;#039;, $string, 1); else $dateParts = explode(&amp;#039;.&amp;#039;, $string); // split at . &lt;br /&gt;
         &lt;br /&gt;
            if (count($dateParts) === 3) { // only if there are three parts like &amp;quot;23.12.2009&amp;quot; &lt;br /&gt;
                if (strlen($dateParts[0]) &amp;lt;= 2 &amp;amp;&amp;amp; strlen($dateParts[1]) &amp;lt;= 2 &amp;amp;&amp;amp; strlen($dateParts[2]) &amp;lt;= 2) { // xx.xx.xx &lt;br /&gt;
                    $string = strtotime($dateParts[2].&amp;#039;-&amp;#039;.$dateParts[1].&amp;#039;-&amp;#039;.$dateParts[0]); // change to timestamp &lt;br /&gt;
                } &lt;br /&gt;
                elseif (strlen($dateParts[0]) == 4 &amp;amp;&amp;amp; strlen($dateParts[1]) &amp;lt;= 2 &amp;amp;&amp;amp; strlen($dateParts[2]) &amp;lt;= 2) { // xxxx.xx.xx &lt;br /&gt;
                    $string = strtotime($dateParts[0].&amp;#039;-&amp;#039;.$dateParts[1].&amp;#039;-&amp;#039;.$dateParts[2]); // change to timestamp &lt;br /&gt;
                } &lt;br /&gt;
                elseif (strlen($dateParts[0]) &amp;lt;= 2 &amp;amp;&amp;amp; strlen($dateParts[1]) &amp;lt;= 2 &amp;amp;&amp;amp; strlen($dateParts[2]) == 4) { // xx.xx.xxxx &lt;br /&gt;
                    $string = strtotime($dateParts[2].&amp;#039;-&amp;#039;.$dateParts[1].&amp;#039;-&amp;#039;.$dateParts[0]); // change to timestamp &lt;br /&gt;
                } &lt;br /&gt;
                else { // error &lt;br /&gt;
                    $error = 1; // error &lt;br /&gt;
                } &lt;br /&gt;
            } elseif (count($dateParts) === 5) { // only if there are five parts like &amp;quot;05.00.23.01.2009&amp;quot; &lt;br /&gt;
                $string = strtotime($dateParts[4].&amp;#039;-&amp;#039;.$dateParts[3].&amp;#039;-&amp;#039;.$dateParts[2].&amp;#039; &amp;#039;.$dateParts[0].&amp;#039;:&amp;#039;.$dateParts[1].&amp;#039;:00&amp;#039;); // change to timestamp &lt;br /&gt;
            } else { // more than 3 parts - so error &lt;br /&gt;
                $error = 1; // error &lt;br /&gt;
            } &lt;br /&gt;
            $string = date(&amp;#039;Y-m-d&amp;#039;, $string); // For default: change 1234567 -&amp;gt; 1.1.1979 &lt;br /&gt;
            if ($timestamp) $string = strtotime($string); // Change back 1.1.1979 -&amp;gt; 1234567 &lt;br /&gt;
            if ($error) $string = ($default == &amp;#039;now&amp;#039; ? time() : $default); // show default value &lt;br /&gt;
         &lt;br /&gt;
            return $string; &lt;br /&gt;
        } &lt;br /&gt;
    } &lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Dropdownfeld mit Werten aus der Datenbank ===&lt;br /&gt;
==== Beispiel 1 ====&lt;br /&gt;
Quelle: http://www.typo3.net/forum/thematik/zeige/thema/77259/?show=1 Zugriff: 2013-10&lt;br /&gt;
&lt;br /&gt;
1. Neues Powermail Feld anlegen (typoscript) im Feld Typoscript Objekt z.B. lib.objectname angeben&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. Eine Selectabfrage in TS (Hole name, uid von tt_address der Seite 5):&lt;br /&gt;
&lt;br /&gt;
TS&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
lib.objectname {&lt;br /&gt;
  10 = TEXT&lt;br /&gt;
  10.value = &amp;lt;label for=&amp;quot;uid33&amp;quot;&amp;gt;Select:&amp;lt;/label&amp;gt;&lt;br /&gt;
  20 = CONTENT&lt;br /&gt;
  20.wrap = &amp;lt;select id=&amp;quot;uid33&amp;quot; name=&amp;quot;tx_powermail_pi1[uid33]&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;|&amp;lt;/select&amp;gt;&lt;br /&gt;
  20 {&lt;br /&gt;
    table = tt_address&lt;br /&gt;
    select {&lt;br /&gt;
      pidInList = 5&lt;br /&gt;
      orderBy = name&lt;br /&gt;
    }&lt;br /&gt;
    renderObj = COA&lt;br /&gt;
    renderObj {&lt;br /&gt;
      10 = COA&lt;br /&gt;
      10 {&lt;br /&gt;
        10 = TEXT&lt;br /&gt;
        10 {&lt;br /&gt;
          field = uid&lt;br /&gt;
          wrap = &amp;lt;option value=&amp;quot;|&amp;quot;&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
        20 = TEXT&lt;br /&gt;
        20 {&lt;br /&gt;
          field = name&lt;br /&gt;
          wrap = |&amp;lt;/option&amp;gt;&lt;br /&gt;
        }&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ergebnis:&lt;br /&gt;
&lt;br /&gt;
Dynamische Selecterbox, mit dem HTML Code:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;label for=&amp;quot;uid33&amp;quot;&amp;gt;Select:&amp;lt;/label&amp;gt;&lt;br /&gt;
&amp;lt;select id=&amp;quot;uid33&amp;quot; name=&amp;quot;tx_powermail_pi1[uid33]&amp;quot; size=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;option value=&amp;quot;23&amp;quot;&amp;gt;Name1&amp;lt;/option&amp;gt;&lt;br /&gt;
&amp;lt;option value=&amp;quot;24&amp;quot;&amp;gt;Name2&amp;lt;/option&amp;gt;&lt;br /&gt;
&amp;lt;/select&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Datenspeicherung in m:n Tabellen ===&lt;br /&gt;
Quelle: http://typo3-blog.net/tutorials/news/powermail-tt-news-mn-tabelle.html 2013-10&lt;br /&gt;
&lt;br /&gt;
Powermail lässt sich nicht nur zum Versenden von Mails sondern auch zum Erstellen von Inhaltselementen nutzen. Dazu dient die TYPO3 Option dbEntry. Mit Hilfe dieser Option ist es sogar möglich MN-Tabellen zu befüllen, welches wenig bekannt ist. Anbei ein Beispiel, wie Eine tt_news Nachricht erzeugt und direkt in Kategorie Nr. 2 eingefügt werden kann:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
plugin.tx_powermail_pi1.upload.folder = uploads/pics/&lt;br /&gt;
plugin.tx_powermail_pi1.dbEntry.tt_news {&lt;br /&gt;
  # Neue Nachrichten müssen durch Admin genehmigt werden&lt;br /&gt;
  _enable = TEXT&lt;br /&gt;
  _enable.value = 0&lt;br /&gt;
  pid = TEXT&lt;br /&gt;
  pid.value = 2&lt;br /&gt;
  tstamp = TEXT&lt;br /&gt;
  tstamp.data = date:U&lt;br /&gt;
  crdate = TEXT&lt;br /&gt;
  crdate.data = date:U&lt;br /&gt;
  &lt;br /&gt;
  _mn = COA&lt;br /&gt;
  _mn.10 = COA&lt;br /&gt;
  # 1 muss Namen der mn Tabelle enthalten&lt;br /&gt;
  _mm.10.1 = TEXT&lt;br /&gt;
  _mm.10.1.value = tt_news_cat_mm&lt;br /&gt;
  # 2 ist der Name der Fremdtabelle, hier News Kategorie&lt;br /&gt;
  _mm.10.2 = TEXT&lt;br /&gt;
  _mm.10.2.value = tt_news_cat&lt;br /&gt;
  # 3 die Fremd uid, hier uid der Newskategorie&lt;br /&gt;
  _mm.10.3 = TEXT&lt;br /&gt;
  _mm.10.3.value = 2&lt;br /&gt;
  &lt;br /&gt;
  # 139 ist die uid des Contenelements, welches das Powermailformular darstellt&lt;br /&gt;
  # 15 ist die uid des einzelnen Feldes.&lt;br /&gt;
  title = TEXT&lt;br /&gt;
  title.data = TSFE:fe_user|sesData|powermail_139|uid15&lt;br /&gt;
  author_email = TEXT&lt;br /&gt;
  author_email.data = TSFE:fe_user|sesData|powermail_139|uid21&lt;br /&gt;
  author = TEXT&lt;br /&gt;
  author.data = TSFE:fe_user|sesData|powermail_139|uid739&lt;br /&gt;
  # short = TEXT&lt;br /&gt;
  # short.data = TSFE:fe_user|sesData|powermail_139|uid742&lt;br /&gt;
  bodytext = TEXT&lt;br /&gt;
  bodytext.data = TSFE:fe_user|sesData|powermail_139|uid19&lt;br /&gt;
  datetime = TEXT&lt;br /&gt;
  datetime.data = TSFE:fe_user|sesData|powermail_139|uid17&lt;br /&gt;
  keywords = TEXT&lt;br /&gt;
  keywords.data = TSFE:fe_user|sesData|powermail_139|uid41&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Felder vorausfüllen ===&lt;br /&gt;
Quelle: http://typo3blogger.de/powermail-trickkiste-teil-2-%E2%80%93-felder-vorbelegen/ &lt;br /&gt;
==== Über GET Parameter ====&lt;br /&gt;
Dropdown&lt;br /&gt;
 http://www.einpraegsam.net/kontakt.html?tx_powermail_pi1[uid24]=TYPO3%20Extension%20powermail&lt;br /&gt;
Input&lt;br /&gt;
 index.php?id=1&amp;amp;tx_powermail_pi1[uid12]=Hallo&lt;br /&gt;
&lt;br /&gt;
Checkbox&lt;br /&gt;
 index.php?id=1&amp;amp;tx_powermail_pi1[uid13][0]=1&lt;br /&gt;
&lt;br /&gt;
==== Über TypoScript ====&lt;br /&gt;
Vorfüllen mit TypoScript:&lt;br /&gt;
Durch eine Vorbelegung mit TypoScript gibt es kaum noch Grenzen. Statische Werte, GET und POST Parameter und userFuncs können verwendet werden. Nachfolgend ein paar Beispiele.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
plugin.tx_powermail_pi1 {&lt;br /&gt;
  prefill {&lt;br /&gt;
    # Fülle Feld 1 mit statischem Wert&lt;br /&gt;
    uid1 = TEXT&lt;br /&gt;
    uid1.value = blabla&lt;br /&gt;
 &lt;br /&gt;
    # Fülle Feld 2 mit aktuellem timestamp&lt;br /&gt;
    uid2 = TEXT&lt;br /&gt;
    uid2.data = date:U&lt;br /&gt;
 &lt;br /&gt;
    # Feld 3 mit Datum&lt;br /&gt;
    uid3 = TEXT&lt;br /&gt;
    uid3.data = date:U&lt;br /&gt;
    uid3.strftime = Datum: %d.%m.%Y&lt;br /&gt;
 &lt;br /&gt;
    # Feld 4 mit IP Adresse&lt;br /&gt;
    uid4 = TEXT&lt;br /&gt;
    uid4.data = getIndpEnv:REMOTE_ADDR&lt;br /&gt;
 &lt;br /&gt;
    # Feld 5 und 6 mit Wert aus aktueller URL&lt;br /&gt;
    # index.php?id=123&amp;amp;wert=Ort&lt;br /&gt;
    uid5 = TEXT&lt;br /&gt;
    uid5.data = GP:wert&lt;br /&gt;
    uid5.htmlSpecialChars = 1&lt;br /&gt;
 &lt;br /&gt;
    # index.php?id=123&amp;amp;tx_ttnews[tt_news]=95&lt;br /&gt;
    uid5 = TEXT&lt;br /&gt;
    uid5.data = GP:tx_ttnews|tt_news&lt;br /&gt;
    uid5.wrap = Wir befinden uns auf der Newsdetailseite mit der UID|&lt;br /&gt;
    uid5.intval = 1&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Hinweis:&lt;br /&gt;
1. Im Beispiel 4 und 5 werden Benutzerdefinierte Werte (GET oder POST) verwendet. Hier ist ein Absichern gegen XSS unabdingbar. Mit intval oder htmlSpecialChars lassen sich Werte innerhalb von TypoScript leicht absichern.&lt;br /&gt;
2. Falls ein Wert eines Feldes in der Session liegt, hat dieser Vorrang.&lt;br /&gt;
3. Ein Selectfeld wird automatisch vorselektiert wenn der vorgegebene Wert auch zur Auswahl steht&lt;br /&gt;
&lt;br /&gt;
=== User basierter Upload Ordner ===&lt;br /&gt;
ich möchte die in einem Upload-Formular übermittelten Dateien in ein bestimmtes Verzeichnis (fileadmin/user_upload/verzeichnis/) schieben. Das funktioniert auch mit folgender Konstanten:&lt;br /&gt;
&lt;br /&gt;
 plugin.powermail.upload.folder = /fileadmin/user_upload/vkb-uploads/&lt;br /&gt;
&lt;br /&gt;
Die Dateien landen im richtigen Ordner. Allerdings wird in der Powermail-Ansicht im Backend, dieser Pfad nicht übernommen. Ich lasse mir also die eingegangenen Powermails anzeigen und hier ist ja dann die übertragene Datei entsprechend verlinkt, aber eben nicht mit dem von mir vorgegebenem Pfad sondern mit dem Standard-Ordner (uploads/tx_powermail/files/Dateiname.abc).&lt;br /&gt;
&lt;br /&gt;
Lösung anscheinend selbst gefunden.&lt;br /&gt;
&lt;br /&gt;
Ich habe alle möglichen Dateien durchsuchen lassen, in denen der Pfad &amp;#039;uploads/tx_powermail/files/&amp;#039; gesetzt ist und die Datei pageTSconfig.txt gefunden.&lt;br /&gt;
&lt;br /&gt;
Hieraus konnte ich schlussfolgern, dass der folgende Schnipsel im TSConfig des Sysordners in dem die Mails auflaufen hinterlegt sein muss um mein Problem zu beheben:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tx_powermail_mod1.config {&lt;br /&gt;
    list {&lt;br /&gt;
        uploadFolder = mein/pfad/zu/den/dateianhängen/&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>79.240.30.52</name></author>
	</entry>
</feed>