Table of Contents | ||
---|---|---|
|
Settings
Area/Type | Name | Description | Default | Scope |
---|---|---|---|---|
pifa | field-css-classes | 'half-row,full-row,line-bottom,line-top' | SCGU | |
pifa | timestamp | 'always', 'byform', 'never' | 'always' | SCGU |
...
Um der erzeugten Mail auch die Formulardaten als CSV-Datei anzuhängen schreibst du dir einen eigenen FormProcessor (z.B. MaildCsvFormProcessor) und kopierst den Code aus dem MailedFormProcessor. Mittels PifaAbstractFormProcessor::getForm() holst du dir das Formular, dessen Daten du wiederum mittels PifaForm::getValues() erhältst. Daraus kannst du dir nun deinen Anhang bauen. Alternativ kannst du dir auch die Methode PifaForm::getCsv() anschauen, vielleicht kannst du ja mit der was anfangen.
Format der XML-Export-Datei
Mit der Version 1.1 des PIFA steht nun das Feature "Im- und Export von Formularen" zur Verfügung. Hier soll das Format der erzeugten XML-Datei erläutert werden um so auch das händische Erzeugen von Formularen mittels XML zu ermöglichen.
PIFA - Struktur der XML-Datei
Jede PIFA-XML-Datei besteht aus genau einem "pifa"-Element mit genau einem "form"-Element. Optional kann auch genau ein "data"-Element enthalten sein. Das "form"-Element samt Nachfahren beschreibt die Struktur des Formulares, wogegen das "data"-Element die erfaßten Formulardaten dokumentiert.
Code Block | ||||
---|---|---|---|---|
| ||||
<pifa>
<form>
<field></field>
...
</form>
<data>
<row></row>
...
</data>
</pifa> |
FORM - Struktur des Formulares
Das "form"-Element dient der Definition des Formulares als solches. Diese werden als Attribute gespeichert. Zudem enthält es (optional) "field"-Elemente zur Definition der einzelnen Formularfelder welche weiter unten erläutert werden. Folgende Attribute werden unterstützt:
Attribut | Werte | Beschreibung |
---|---|---|
name | Zeichenkette | Der Name des Formulares, so wie es im Backend in der linken Navigation ausgegeben wird. |
table | Zeichenkette | Der Name der Datenbank-Tabelle zur Speicherung der Formulardaten. |
method | get | post | Anfragemethode beim Absenden des Formulares. |
timestamp | true | false | Ob beim Speichern von Formulardaten auch ein Zeitstempe erfaßt werden soll. Siehe Setting "pifa/timestamp". |
FIELD - Struktur der Formularfelder
Code Block | ||||
---|---|---|---|---|
| ||||
<form name="contact" table="con_pifa_contact" method="post" timestamp="true">
<field rank="1" type="select" column="salutation" obligatory="true">
<label display="true">Anrede</label>
<error>Bitte wählen Sie die Anrede aus</error>
<options>
<option>Bitte wählen</option>
<option value="Mrs">Frau</option>
</options>
</field>
</form>
|
<field rank="2" type="inputtext" column="first_name" obligatory="true"><label display="true">Vorname</label><error>Bitte geben Sie Ihren Vornamen ein</error></field><field rank="3" type="inputtext" column="last_name" obligatory="true"><label display="true">Nachname</label><error>Bitte geben Sie Ihren Nachnamen ein</error></field><field rank="4" type="inputtext" column="company" obligatory="false"><label display="true">Firma</label></field><field rank="5" type="inputtext" column="street" obligatory="true"><label display="true">Straße</label><error>Bitte geben Sie die Straße ein</error></field><field rank="6" type="inputtext" column="street_number" obligatory="true"><label display="true">Hausnummer</label><error>Bitte geben Sie die Hausnummer ein</error></field><field rank="7" type="inputtext" column="plz" obligatory="true"><label display="true">Postleitzahl</label><error>Bitte geben Sie die Postleitzahl ein</error></field><field rank="8" type="inputtext" column="city" obligatory="true"><label display="true">Ort</label><error>Bitte geben Sie den Ort ein</error></field><field rank="9" type="textarea" column="message" obligatory="true"><label display="true">Ihre Nachricht</label><error>Bitte geben Sie die Nachricht ein</error></field><field rank="10" type="inputtext" column="phone" obligatory="true"><label display="true">Telefon</label><error>Bitte geben Sie die Telefonnummer ein</error></field><field rank="11" type="inputtext" column="email" obligatory="true"><label display="true">E-Mail-Adresse</label><error>Bitte geben Sie die E-Mail Adresse ein</error></field><field rank="12" type="inputcheckbox" column="privacy" obligatory="true"><label display="true">Datenschutzerklärung</label><error>Bitte bestätigen Sie die Datenschutzerklärung</error><classes><class>privacy</class></classes><options><option value="1">Ich aktzeptiere die Datenschutzerklärung</option></options></field><field rank="13" type="buttonsubmit" obligatory="false"><label display="true">Absenden</label><classes><class>button_red</class></classes></field><field rank="14" type="buttonreset" obligatory="false"><label display="false">Zurücksetzen</label><classes><class>button_grey</class></classes></field></form></pifa>