Powermail 2 - Prefill von Select / Checkbox und Co.

Bis Powermail 2.1 mussten Auswahllisten und Checkboxen etwas aufwendiger in TyposScript generiert werden. Mit "Create from TypoScript" wird dieser Punkt nun erheblich erleichtert.

Mein Ziel - die dynamisch generierte Liste

Ich möchte in einem Powermail-Formular eine dynamisch generierte Auswahlliste / oder auch Checkboxen. Die Einträge (Optionen) sollen aus der Tabelle "Pages" gefüllt werden. Zudem soll eine GET-Variable an das Formular übergeben werden können, um eine der Seiten bereits zu markieren (Prefill).

Im Powermailformular

Erstellt ein Feld Auswahlfeld und lasst das Eingabefeld Optionen leer. Im Reiter "Erweitert" wird nun bei Über TypoScript erstellen unser lib.Objekt platziert.

z.B. lib.products

Dynamisch generierte Auswahlliste - ein bischen TYPOSCRIPT

Das nachfolgende TS liest die Unterseiten der Seite xxx aus der Tabelle Pages und generiert aus dem Feld Titel eine Liste. Das Powermail-Feld "Optionen" erwartet dabei pro Option eine Zeile, daher setzen wir nach jeder Seite einen Umbruch \n.

lib.products = CONTENT
lib.products {
    table = pages
    select {
      pidInList = xxx
    }
    renderObj = COA
    renderObj {
      10 = COA
      10 {
        10 = TEXT
        10.dataWrap = {field:title}[\n]
      }
    }
  }

Markieren der übergebenen GET-Variable

Wir wurden über eine GET-Variable (GP:productpage) auf das Powermailfeld geführt, daher soll bereits eine Seite vorausgewählt werden. Dies kann leicht über die Prefill Eigenschaft bewerkstelligt werden.

plugin.tx_powermail.settings.setup.prefill {
    produkt= RECORDS
    produkt {
      tables = pages
      source.data = source.data = GP:productpage
      conf.pages = TEXT
      conf.pages.field = title
    }
}

Damit haben wir das Ziel erreicht :)