Formatierung in Dokumenten
Beim Erstellen von Dokumenten ist es möglich, Werte mit Hilfe von sogenannten Filtern formatiert darzustellen. So kann zum Beispiel aus einem Text ein QR-Code erstellt werden.
Im folgenden Beispiel wird der öffentliche Link zu einer Veranstaltung genutzt:
{{ event.external_url }}
Es ist nun möglich mit dem qrcode-Filter aus dem Link einen QR-Code zu erzeugen:
{{ event.external_url|qrcode }}
Im Normalfall wird dieser QR-Code mit 20mm Breite erzeugt. Es ist aber auch möglich einem Filter sogenannte Argumente zu übergeben. So kann in diesem Beispiel der QR-Code auf 40mm vergrößert werden:
{{ event.external_url|qrcode(40) }}
Im Folgenden werden alle vorhandenen Filtern mit ihren Argumenten aufgelistet:
image
image(width=20)Fügt ein Bild anstelle der URL ein. Argumente: width: Die Breite des Bildes in mm.
Beispiele:{{ event.location.image_path|image }}{{ user.image_path|image(100) }}date
date(format=None)Formatiert das angegebene Datum. Das Format kann in der Form von z.B. %d.%m.%Y angegeben werden. Argumente: format: Der Formatierungs-Wert (Standard: deutsches Format).
Beispiele:{{ booking.created_at|date }}{{ event.first_day|date }}join
join(separator=", ", key=None, last_separator=None, format=None)Verbindet eine Liste von Werten zu einer Zeichenkette. Argumente: separator: Das Trennzeichen zwischen den Werten (Standard: ", "). key: Eine ein Schlüssel zur Extraktion der Werte vor dem Verbinden. last_separator: Das Trennzeichen vor dem letzten Wert. format: Eine Funktion oder ein Format, das vor dem Verbinden angewendet wird.
Beispiele:{{ booking.event.event_lecturer_names|join }}{{ event.rooms|join("; ", "identifier")}}json
json(indent=4)Formatiert ein Objekt als JSON. Argumente: indent: Die Anzahl der Leerzeichen für Einrückungen (Standard: 4).
bool
bool(positive="Ja", negative="Nein", unknown="Nicht angegeben")Formatiert einen booleschen Wert mit benutzerdefinierten Bezeichnungen. Argumente: positive: Die Bezeichnung für True-Werte (Standard: "Ja"). negative: Die Bezeichnung für False-Werte (Standard: "Nein"). unknown: Die Bezeichnung für unbekannte Werte (Standard: "Nicht angegeben").
Beispiele:{{ event.is_bookable|bool }}{{ event.is_public|bool("öffentlich", "nicht öffentlich") }}salutation
salutation(female=None, male=None, divers="")Formatiert die Anrede. Argumente: female: Die weibliche Anrede. (Standard: "Frau"). male: Die männliche Anrede. (Standard: "Herr"). divers: Die Anrede für Personen die sich weder als weiblich noch männlich identifizieren.
Beispiele:{{ user.gender|salutation }}{{ user.gender|salutation("Lieber", "Liebe", "Liebe/r")}}eventStatus
eventStatusFormatiert den angegebenen Veranstaltungsstatus.
html
htmlEntfernt HTML Tags und ersetzt sie, wenn nötig, durch Zeilenumbrüche.
markdown
markdownIn edm gibt es Eingabefelder, die formatierten Text erlauben. Die Texte können mit diesem Filter so umgewandelt werden, dass bestimmte Style-Klassen in den Word-Vorlagen greifen, um eine flexible Formatierung zu ermöglichen. So wird zum Beispiel für Heading 1 aus dem Eingabefeld die Word Style-Klasse edm-styles-heading1 angewendet. Wichtig ist hierbei, dass in der Vorlage alle Word Style-Klassen, die in den Texten genutzt werden.
Beispiele:{{ lecturer.description|markdown }}append
append(postfix=" ")Hängt eine Zeichenkette an den angegebenen Wert an. Argumente: postfix: Die anzuhängende Zeichenkette (Standard: " ").
oneOrMany
oneOrMany(one="", many="", none="")Formatiert einen Wert basierend darauf, ob er singular, Plural, oder nicht vorhanden ist. Argumente: one: Das Format für ein einzelnes Element (Standard: ""). many: Das Format für mehrere Elemente (Standard: ""). none: Das Format, falls keine Elemente vorhanden sind (Standard: "").
filterOne
filterOne(key, test_value)Filtert Liste von Objekten nach einem bestimmten Wert. Argumente: key: Der Schlüssel um den Wert aus dem Objekt zu bekommen. test_value: Der Wert, nach dem gefiltert wird.
getKey
getKey(key)Ruft den Wert aus einem Objekt für einen angegebenen Schlüssel ab. Argumente: key: Der Schlüssel, dessen Wert abgerufen werden soll.
bookingStatus
bookingStatus(status="VALID")Filtert Buchungen nach dem angegebenen Buchungsstatus. Argumente: status: Der Status für die Filterung (Standard: VALID)
qrcode
qrcode(size=40)Erstellt einen QR-Code für den angegebenen Wert. Argumente: size: Die Größe des QR-Codes in mm (Standard: 40).
Beispiele:{{ event.external_url|qrcode }}{{ event.external_url|qrcode(40) }}