Formulare, Prämien, Smarty-Templates

Formulare, Prämien, Smarty-Templates

Formulare konfigurieren

Benutzerdefinierte Formulare ermöglichen es, besonders komplexe Formulare wie beispielsweise das Registrierungsformular genau an den Bedarf eines speziellen Panels anzupassen.

  • Benutzerdefinierte Formulare kommen bei der Registrierung, bei Datenänderung und bei den Profilen von Community-Panels zum Einsatz.

  • Auf verschiedenen Sprachversionen derselben Website können unterschiedliche Formulare verwendet werden.

  • Pro Sprachversion können mehrere Formulare desselben Typs gleichzeitig erstellt und verwendet werden. So können Sie beispielsweise für verschiedene Eintrittswege unterschiedliche Registrierungsformulare verwenden.

  • Zusammengehörende Variablen können einer Gruppe zugeordnet und dann beispielsweise in einem eigenen Abschnitt des Formulars zusammen ausgegeben werden.

In den folgenden Kapiteln lernen Sie, benutzerdefinierten Formulare selbst zu bearbeiten:

  • Es wird erläutert, wie die verschiedenen Formulare eines Panels verwaltet werden.

  • Sie lernen, die Variablenkonfiguration eines Formulars zu ändern.

  • Die Besonderheiten der Variablenkonfiguration von Registrierungs- und Datenänderungsformularen werden erläutert.

  • Die Besonderheiten der Variablenkonfiguration von Profilformularen werden vorgestellt.

Formulare verwalten

Die Benutzeroberfläche zur Erstellung und Verwaltung von Formularen befindet sich im Menü Website → Standard-Inhalte → Formulare.

 

Information

Leserecht für „panel_website_forms“ ist nötig, um auf das Formulare-Menü zuzugreifen.

Wenn Sie auf einer Installation mit mehreren Websites und/oder Sprachversionen die Formulare einer anderen Sprachversion einsehen möchten, auf die Sie Zugriffsrecht haben, ändern Sie die Einstellung im oberen Teil des Dialogs. Welche Tabellenspalten und wie viele Zeilen pro Seite eingeblendet werden, können Sie mittels der Ansicht-Funktion vorgeben. Die Übersichtstabelle kann durchsucht werden.

Es stehen folgende Bearbeitungsmöglichkeiten zur Verfügung:

  • Formularname: Öffnet die Übersicht der Variablen, die zum jeweiligen Formular gehören.

  • Einstellungen bearbeiten: Öffnet den Eigenschaftendialog.

  • Löschen: Nach einer Sicherheitsabfrage wird das Formular entfernt.

Formular anlegen

Mit einem Klick auf den Button Formular anlegen können Sie den Dialog zur Konfiguration eines neuen Formulars öffnen.

Eigenschaften eines Formulars

Die Tabelle führt die Eigenschaften eines Formulars auf.

Feld

Beschreibung

Feld

Beschreibung

Website / Sprachversion

Website und Sprachversion, zu der das Formular gehört. Nicht nachträglich veränderbar.

Formularname

Name des Formulars

Beschreibung

Nur intern verwendete Beschreibung

Formulartyp

Der Formulartyp legt fest, in welchem Funktionsmodul das Formular verwendet werden kann.

Zur Auswahl stehen die Typen

  • Registrierung: Steht im Funktionsmodul „Registrierungsformular“ zur Verfügung.

  • Datenänderung (nur für eingeloggte Panelisten): Steht im Funktionsmodul „Daten ändern“ zur Verfügung

  • Profil: Steht im Funktionsmodul „Profilsuche“ zur Verfügung.

Default-Formular

Das Default-Formular wird - je nach Formulartyp - auf der Seite „Registrierung“ oder „Daten ändern“ angezeigt, falls sie mit EFS in der Version 5.1 oder vorher erstellt wurden.

Bei Registrierung oder Datenänderung eines Panelisten per Web service wird außerdem die "Zusätzlich speichern in"-Einstellung des Default-Formulars für die aktuelle Sprache/Anwendungsfall verwendet.

Variablen eines Formulars konfigurieren

Übersicht der Variablen eines Formulars

Um die Variablen einzusehen, die zu einem Formular gehören, klicken Sie den Formularnamen in der Übersichtstabelle an. Alternativ können Sie auch im Eigenschaftendialog des Formulars den Button Variablen bearbeiten wählen. Sie gelangen zu einer Übersicht, die die Variablen des Formulars mit ihren wichtigsten Eigenschaften aufführt.

Variablen bearbeiten

Wenn Sie die Konfiguration einer bereits angemeldeten Variablen ändern möchten, wählen Sie in der Übersicht das Icon Variable x in Formular y bearbeiten.

Eine neue Variable anlegen

Wenn Sie eine Variable neu hinzufügen möchten, wählen Sie in der Übersicht das Icon Variable hinzufügen.

Ausgabe der Ausprägungen einer Variablen im Formular

Die Reihenfolge, in der die Ausprägungen einer Variablen im Formular angezeigt werden, ist von den Codes abhängig, dabei wird mit dem kleinsten vorhandenen Code begonnen. Es ist nicht möglich, eine abweichende Reihenfolge festzulegen oder sprachabhängig unterschiedliche Abfolgen zu definieren.

Besonderheiten von Registrierungs- und Datenänderungsformularen

Das korrekte Erheben der Registrierungsdaten und die spätere Pflege insbesondere der Kontaktdaten der Panelisten ist von zentraler Bedeutung für das Panel:

  • Die erhobenen Daten sollten möglichst fehlerfrei sein.

  • Die Registrierungsdaten sollten so abgespeichert werden, dass sie später bei Prozessen, bei denen sie benötigt werden, zur Verfügung stehen. Beispielsweise wird das Geschlecht häufig für die Gruppenbildung benötigt und sollte daher als Stammdatum vorliegen. Der Vorname der Panelisten hingegen wird für Gruppenbildung und Stichprobenziehung nicht benötigt, ist aber wichtig bei der Kontaktaufnahme: Er sollte als Adressdatum gespeichert werden. Die Formulartypen „Registrierung“ und „Datenänderung“ bieten große Flexibilität beim Anpassen der Formulare an den Bedarf eines spezifischen Panels:

  • Die vom Neuzugang eingegebenen Daten können bereits bei der Eingabe auf Plausibilität überprüft werden. Dadurch können irrtümliche oder absichtliche Falscheingaben wichtiger Daten wie beispielsweise Name und E-Mail-Adresse reduziert werden. Die Prüfausdrücke können Sie selbst definieren.

  • Sie können selbst festlegen, an welcher Stelle in der Datenbank die abgefragten Daten abgespeichert werden. Kontaktdaten wie Name, Straße und PLZ werden üblicherweise in der Teilnehmerdatentabelle abgespeichert. Daten, die später im Panelbetrieb wichtig sind, wie beispielsweise Geschlecht und Altersangaben, werden in der Stammdatentabelle festgehalten. Optional können Daten auch in beiden Tabellen abgelegt werden. (Dies kann z.B. bei „Land“ sinnvoll sein.)

  • Beim Speichern können die Daten umgewandelt werden. Beispielsweise können die Werte mehrerer Variablen in einer Variablen zusammengeführt werden.

Konfigurationsmöglichkeiten

Die folgende Tabelle führt alle Konfigurationsmöglichkeiten auf.

Feld

Beschreibung

Feld

Beschreibung

Website/Sprachversion

Website und Sprachversion, zu der die Variable gehört. Nicht nachträglich veränderbar.

Formularname

Wird beim Anlegen des Formulars festgelegt. Nicht nachträglich veränderbar.

Formulartyp

Wird beim Anlegen des Formulars festgelegt. Nicht nachträglich veränderbar.

Variable

Das Stammdatum oder die Benutzervariable, auf die sich das Eingabefeld im Formular bezieht.

  • Mittels der im folgenden beschriebenen Prüfausdrücke und Umwandlungsformeln können die eingegebenen Daten bei Bedarf umformatiert werden.

Label im Formular

Der Text, mit dem das Eingabefeld im Formular beschriftet wird.

Folgende Codes ausschließen

Sie können bestimmte Antwortausprägungen von Stammdatenvariablen ausblenden. Geben Sie dazu die Codes der auszublendenden Antwortausprägungen ein. Die Codes können kommasepariert oder als Bereich eingegeben werden (z. B. „1,2,3-10“).

Reihenfolge

Reihenfolge, in der die Eingabefelder für die verschiedenen Variablen im Formular ausgegeben werden.

Gruppen-ID

Die Gruppen-ID steht in den Templates zur Verfügung und kann daher auf vielfältige Weise genutzt werden, beispielsweise um zusammengehörende Formularfelder zusammen zu gruppieren oder um das Formular in mehrere Abschnitte zu gliedern.

Wenn Sie zum Beispiel mehreren Formularfeldern dieselbe Gruppen- ID (z. B. 1) zuweisen, können Sie diese Felder neben- statt untereinander ausgeben (z. B. Tag, Monat und Jahr bei drei zusammenhängenden Datumsfeldern). Dabei kann beispielsweise die gesamte Zeile mit dem Label des ersten gruppierten Elementes beschriftet werden.

Prüfausdruck

Sie können einen Prüfausdruck eingeben, der vor der Datenspeicherung ausgeführt wird. Trifft der Prüfausdruck zu, werden die Daten nicht gespeichert und statt dessen die angegebene Fehlermeldung angezeigt.

  • Um auf die aktuelle Variable zuzugreifen, können Sie die Pseudo- Variable "self" verwenden.

Fehlermeldung

Fehlermeldung, die ausgegeben wird, wenn mit dem obigen Prüfausdruck ein Problem identifiziert wird.

Zusätzlich speichern in...

Optional können Sie eine Eingabe in einem weiteren Stammdatum oder einer weiteren Benutzervariable abspeichern.

Nur im „Daten ändern“-Formular:

Wenn die Panelisten das "Daten ändern"-Formular verwenden, soll diese Variable nicht aktualisiert werden, falls kein Wert eingegeben wurde?

Wenn die Panelisten das Formular verwenden, werden sie oft nur eine einzelne Variable verändern und alle anderen Eingabefelder unverändert lassen. Mit dieser Option legen Sie fest, dass beim anschließenden Abspeichern nur die Werte übernommen werden, die vom Panelisten tatsächlich bearbeitet wurden. Standardeinstellung: „Ja“.

Umwandlungsformel beim Speichern

Sie können einen Umwandlungsausdruck eingeben, der beim Speichern ausgeführt wird. Dadurch können beispielsweise die Werte mehrerer einzelner Variablen zusammengefügt und in der aktuellen Variablen gespeichert werden.

  • Um auf die aktuelle Variable zuzugreifen, können Sie die Pseudo-Variable „self“ verwenden.

Funktionen für Umwandlungsformeln und Prüfausdrücke

Die folgenden Funktionen können in Umwandlungsformeln und Prüfausdrücken verwendet werden.

 

Funktion

Erklärung

Parameter

Rückgabewert

Beispiel

 

Funktion

Erklärung

Parameter

Rückgabewert

Beispiel

abs

abs (Aktion: Betrag)

Liefert den Betrag eines Wertes ohne Vorzeichen.

$value: Der zu bearbeitende Wert

Betrag des Wertes ohne Vorzeichen

abs(self)

base64_decode

base64_decode

(Aktion: Base64 entschlüsseln)

Entschlüsselt den Wert mit dem Base64 Algorithmus.

$value: Der zu entschlüsselnde Wert

Base64-entschlüsselter Wert

 

base64_encode

base64_encode

(Aktion: Base64 verschlüsseln)

Verschlüsselt den Wert mit dem Base64 Algorithmus.

$value: Der zu verschlüsselnde Wert

Base64-verschlüsselter Wert

 

concat

concat (Aktion: Verknüpfen)

Verknüpft zwei oder mehr Strings miteinander.

$string1 - $stringN: zu verknüpfende Strings (es können beliebig viele Strings übergeben werden)

Konkatenierte Strings

concat(self, u_firstname, md_0077)

get_date_diff

get_date_diff

(Aktion: Differenz zweier Datumsangaben)

Errechnet den Unterschied zwischen zwei Zeiten in Tagen oder Jahren (abgerundet).

$date1: erstes Datum, $date2: zweites Datum, $format: „d“ (Tage), „y“ (Jahre)

Unterschied zwischen übergebenen Zeiten

get_date_- diff('05.03.1982', '26.08.2008', 'y'),

get_date_- diff('1982-03-05', '26.08.2008', 'd' )

get_gmt_date

get_gmt_date

(Aktion: Datum in GMT)

Gibt die aktuelle GMT-Zeit in gewünschtem Format zurück.

$format: Gewünschtes Datumsformat

Aktuelle, formatierte Zeit

get_gmt_- date('d.m.Y H:i:s')

get_timestamp

get_timestamp

(Aktion: Datum in Timestamp)

Gibt den Unix-Timestamp (seit Januar 1 1970 00:00:00 GMT vergangenen Sekunden) des übergebenen Datums zurück. Wenn kein Datum übergeben wird, wird der Timestamp des aktuellen Datums zurückgegeben.

$date (optional): Datum, dessen Timestamp benötigt wird

Unix-Timestamp

get_timestamp('13.04.2008'), get_timestamp('2008-04-13')

is_date_de

is_date_de (Prüfen: deutsches Datumsformat)

Prüft, ob es sich bei dem übergebenen Wert um ein Datum im deutschen Format handelt (TT.MM.YYYY).

$value: Das zu prüfende Datum

1, falls deutsches Datum, ansonsten 0

is_date_de('05.03.1982')

is_date_int

is_date_int (Prüfen: int. Datumsformat)

Prüft, ob es sich bei dem übergebenen Wert um ein Datum im internationalen Format handelt (MM-TT-YYYY).

$value: Das zu prüfende Datum

1, falls internationales Datum, ansonsten 0

is_date_int('05.03.1982')

is_email

is_email (Prüfen: gültiges E-Mailformat)

Prüft, ob es sich bei dem übergebenen Wert um ein gültiges E-Mail- Adressformat handelt.

$value: Zu prüfende E-Mail-Adresse

1, falls gültige EMail-Adresse, ansonsten 0

is_email
('mustermann@tivian.com')

is_float

is_float (Prüfen: Gleitkommazahl)

Prüft, ob der übergebene Wert eine Gleitkommazahl ist.

$value: Zu prüfender Wert

1, falls Gleitkommazahl, ansonsten 0

is_float(10,5)

is_luhn

is_luhn (Prüfen: Luhn-Algorithmus)

Prüft, ob der übergebene Wert der Luhn-Formel entspricht.

$value: Zu prüfender Wert

1, falls Luhn-Algorithmus, ansonsten 0

is_luhn(10)

is_md5

is_md5 (Prüfen: md5-Verschlüsselung)

Prüft, ob der übergebene Wert mit dem md5-Algorithmus verschlüsselt wurde.

$value: Zu prüfender Wert

1, falls md5-verschlüsselt, ansonsten 0

is_md5('234mklksdf')

is_positive

is_positive (Prüfen: positive Zahl)

Prüft, ob es sich bei dem übergebenen Wert um eine positive Zahl handelt.

$value: Zu prüfender Wert

1, falls positive Zahl, ansonsten 0

is_positive(5)

is_sha1

is_sha1 (Prüfen: SHA1-Algorithmus)

 

 

 

 

is_whole

is_whole (Prüfen: ganze Zahl)

 

 

 

 

length

length (Aktion: Stringlänge ausgeben)

Gibt die Anzahl der Zeichen in einem String Zeichenkette zurück.

$value: Der zu prüfende String

Stringlänge

length('test')

lowercase

lowercase (Aktion: in Kleinbuchstaben umwandeln)

Wandelt alle Zeichen in einem String in Kleinschreibung um.

$value: Umzuwandelnder String

Umgewandelter String

lowercase('Test')

matches

matches (Prüfen: regulären Ausdruck anwenden)

Prüft, ob ein regulärer Ausdruck auf einen Wert zutrifft

$regex: Regulärer Ausdruck, $value: String, auf den regulärer Ausdruck angewendet wird

1, falls Regulärer Ausdruck zutrifft, ansonsten 0

matches('/^[a-f0-9]{32}$/','test');

md5

md5 (Aktion: md5 verschlüsseln)

Verschlüsselt den Wert mit dem md5-Algorithmus.

$value: Zu verschlüsselnder Wert

Verschlüsselter Wert

md5('attack_at_dawn')

replace

replace (Aktion: Ersetzung)

Durchsucht String nach Übereinstimmungen mit regulärem Ausdruck und ersetzt sie mit „Ersatz“.

$regex: Regulärer Ausdruck, $replace: Ersatz $value: String

Bearbeiteter String

replace('/^[a-f0-9]/','ersatz','7test 12')

sha1

sha1 (Aktion: SHA1 verschlüsseln)

Verschlüsselt den Wert mit dem SHA1-Algorithmus.

$value: Zu verschlüsselnder Wert

Verschlüsselter Wert

sha1('attack_at_dawn')

substr

substr (Aktion: Teil eines Strings ausgeben)

Gibt den Teil von $string zurück, der durch die Parameter $start und $length definiert wurde. Wenn $start nicht negativ ist, beginnt der zurückgegebene String an der start-Position von string, angefangen bei 0.

$string: String,

$start: Beginn von gewünschtem Teilstring

$length (optional): Länge des Teil-Strings

Teil-String

substr('hallo', 1, 1), gibt 'a' zurück

trim

trim (Aktion: Entfernt Leerzeichen am Anfang und Ende)

Entfernt Leerzeichen am Anfang und Ende eines Strings.

$str: String, $charlist (optional): Zeichen, die an Anfang und Ende der Zeichenkette entfernt werden sollen

Bearbeiteter String

trim(' hallo test ') ergibt „hallo test“

uppercase

uppercase (Aktion: in Großbuchstaben umwandeln)

Wandelt alle Zeichen in einem String in Großschreibung um.

$value: Umzuwandelnder String

Umgewandelter String

uppercase('Test') ergibt „TEST“

when

when (Abfrage-Konstrukt)

Prüft, ob ein Ausdruck wahr ist oder nicht, und gibt entsprechenden Wert zurück.

$check: Ausdruck, $true: Rückgabewert (falls Ausdruck wahr ist), $false: Rückgabewert (falls Ausdruck falsch ist)

falls $check wahr ist, $true, ansonsten $false

when('', 'wahr', 'falsch')

Verschachtelung

Verschachtelung kann verwendet werden. Ist beispielsweise self = „testing“, ergibt die Umwandlungsformel uppercase(substr(self, 2, 3)) „st“.

Verknüpfungen

AND und OR können verwendet werden. Falls man beispielsweise eine Zeichenkette eingibt, die nicht mit MD5 oder SHA1 verschlüsselt ist, bewirkt der Prüfausdruck

!is_md5(self) AND !is_sha1(self)

einen Fehler. Wäre der übergebene String mit MD5 oder SHA1 verschlüsselt, wäre dieser Ausdruck false.

!is_positive(self) OR !is_date_de(self)

erzeugt nur keinen Fehler, falls beide Bedingungen gegeben sind, d.h. eine positive Zahl und ein deutsches Datum eingegeben wurde.

Beispiel: Variablen in den Formularen des Standardpanels

In der folgenden Tabelle werden die Variablen aufgeführt, die beim Standardpanel bei Registrierung und Datenänderung abgefragt werden.

Variable

Beschreibung

Reihenfolge

Gruppen-ID

Prüfausdruck

Fehlermeldung

Formular „Registration“

Formular „Change data“

Variable

Beschreibung

Reihenfolge

Gruppen-ID

Prüfausdruck

Fehlermeldung

Formular „Registration“

Formular „Change data“

u_account

Panelisten-Zugangsname

1

 

 

 

X

X

u_firstname

Vorname

2

 

!matches('/ [^\s]/ ',request.u_firstname)

Please enter your first name.

X

X

u_name

Name

3

 

!matches('/ [^\s]/ ',request.u_name)

Please enter your last name.

X

X

u_street

Strasse

4

 

!matches('/[^\s]/ ',request.u_street)

Please enter your street name.

X

X

u_zip

PLZ

5

 

!matches('/^\s*\d{5}\s*$/ ',request.u_zip)

Please enter your zip code.

X

X

u_city

Stadt

6

 

!matches('/[^\s]/ ',request.u_city)

Please enter your city name.

© 2024 Tivian XI GmbH