gcg-website/static/admin/config.yml
Denys Konovalov a275283b6e Static CMS v2.0 (#226)
- [x] Update auf Static CMS v2.0
- [x] aktualisierte Shortcodes (schließt #225)
- [x] aktualisierte Previews (schließt #181)
- Ordnerunterstützung
- [x] vervollständigte Seiten
- [x] Aufräumarbeiten

Reviewed-on: https://git.cantorgymnasium.de/gcg/gcg-website/pulls/226
2023-04-19 22:44:06 +02:00

1061 lines
47 KiB
YAML

backend:
name: gitea
repo: gcg/gcg-website
branch: master
api_root: https://git.cantorgymnasium.de/api/v1
base_url: https://oauth.cantorgymnasium.de
commit_messages:
create: "{{collection}} {{slug}} erstellt"
update: "{{collection}} {{slug}} aktualisiert"
delete: "{{collection}} {{slug}} gelöscht"
uploadMedia: "{{path}} hochgeladen"
deleteMedia: "{{path}} gelöscht"
local_backend: true
media_folder: "/static/media"
public_folder: "/media"
site_url: https://cantorgymnasium.de
display_url: https://cantorgymnasium.de
locale: "de"
media_library:
max_file_size: 2048000
folder_support: true
slug:
encoding: "ascii"
clean_accents: true
sanitize_replacement: "-"
collections:
- name: "config"
icon: "settings"
label: "Konfiguration"
description: "Hier können die Basiseinstellungen der Website geändert werden."
editor:
preview: false
files:
- name: "homepage-config"
label: "Startseitenkonfiguration"
file: "data/de/homepage.yml"
fields:
- label: "Banner"
name: "top_banner"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Text", name: "text", widget: "string", required: false}
- {label: "Farbe", name: "color", widget: "color", required: false}
- {label: "Schriftfarbe", name: "font_color", widget: "color", required: false}
- {label: "Symbol", name: "icon", widget: "string", required: false, hint: "Liste unter https://pictogrammers.com/library/mdi/"}
- label: "Zeitschaltung"
name: temporarily
widget: "object"
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Startdatum", name: "start_date", widget: "datetime", required: false, date_format: "dd.MM.yyyy", time_format: false, format: "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"}
- {label: "Enddatum", name: "end_date", widget: "datetime", required: false, date_format: "dd.MM.yyyy", time_format: false, format: "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"}
- label: "Karusell"
name: "slider"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Hintergrundbild", name: "bg_image", widget: "image", required: false }
- {label: "Titel", name: "title", widget: "string", required: false}
- label: "Elemente"
label_singular: "Element"
name: "slider_item"
widget: "list"
fields:
- {label: "Inhalt", name: "content", widget: "string", required: false}
- label: "Button"
name: "button"
widget: "object"
required: false
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Bezeichnung", name: "label", widget: "string", required: false}
- {label: "Link", name: "link", widget: "string", required: false}
- label: "Partnerlogos (oben)"
name: "header_logos"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- label: "Logos"
name: "logos"
widget: "list"
required: false
fields:
- {label: "Titel", name: "title", widget: "string", required: false}
- {label: "Link", name: "link", widget: "string", required: false}
- {label: "Grafik", name: "image", widget: "image", required: true}
- label: "\"Über\"-Seite"
name: "about"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Titel", name: "title", widget: "string", required: false}
- {label: "Inhalt", name: "content", widget: "markdown", required: false}
- label: "Button"
name: "button"
widget: "object"
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Bezeichnung", name: "label", widget: "string", required: false}
- {label: "Link", name: "link", widget: "string", required: false}
- label: "Blog"
name: "blog"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Titel", name: "title", widget: "string"}
- label: "Erfolge"
name: "success_banner"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Bild", name: "image", widget: "image", required: false }
- label: "Elemente"
name: "feature_item"
widget: "list"
fields:
- {label: "Bezeichnung", name: "name", widget: "string", required: false}
- {label: "Symbol", name: "icon", widget: "string", required: false, hint: "Liste unter https://pictogrammers.com/library/mdi/"}
- {label: "Bild", name: "image", widget: "image", required: false }
- {label: "Inhalt", name: "content", widget: "markdown", required: false}
- label: "Ganztagsangebote"
name: "ganztagsangebote"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Titel", name: "title", widget: "string", required: false}
- label: "Aktionsbutton"
name: "cta"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Titel", name: "title", widget: "string", required: false}
- {label: "Untertitel", name: "subtitle", widget: "string", required: false}
- label: "Button"
name: "button"
widget: "object"
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Bezeichnung", name: "label", widget: "string", required: false}
- {label: "Link", name: "link", widget: "string", required: false}
- label: "Informationen"
name: "info"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Hintergrundbild", name: "bg_image", widget: "image", required: false }
- {label: "Titel", name: "title", widget: "string", required: false}
- {label: "Inhalt", name: "content", widget: "text", required: false}
- {label: "Video-Link", name: "video_link", widget: "string", required: false}
- label: "Termine"
name: "termine"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Titel", name: "title", widget: "string", required: false}
- label: "DigitalPakt-Banner"
name: "digitalpakt"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Titel", name: "title", widget: "string", required: false}
- {label: "Bild", name: "image", widget: "image", required: false }
- {label: "Inhalt", name: "content", widget: "markdown", required: false}
- label: "Partnerlogos (unten)"
name: "footer_logos"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- label: "Logos"
name: "logos"
widget: "list"
required: false
fields:
- {label: "Titel", name: "title", widget: "string", required: false}
- {label: "Link", name: "link", widget: "string", required: false}
- {label: "Grafik", name: "image", widget: "image", required: true}
- name: "hugo-config"
label: "Website-Konfiguration"
file: "config.yml"
fields:
- {label: "Website-URL", name: "baseURL", widget: "string"}
- {label: "Titel", name: "title", widget: "string"}
- {label: "Elemente je Seite", name: "paginate", widget: "number", value_type: "int"}
- {label: "Lände von Zusammenfassungen", name: "summaryLength", widget: "number", value_type: "int"}
- {label: "Standardsprache in Unterordner", name: "defaultContentLanguageInSubdir", widget: "boolean", required: false}
- {label: "Standardsprache", name: "defaultContentLanguage", widget: "string"}
- {label: "Emoji", name: "enableEmoji", widget: "boolean", required: false}
- {label: "robots.txt", name: "enableRobotsTxt", widget: "boolean", required: false}
- {label: "Zeitzone", name: "timeZone", widget: "string"}
- label: "Markdown-Enstellungen"
name: "markup"
widget: "object"
collapsed: true
summary: '{{fields.defaultMarkdownHandler}}'
fields:
- {label: "standardmäßiger Markdown-Handler", name: "defaultMarkdownHandler", widget: "select", options: ["blackfriday", "goldmark"]}
- label: "Goldmark-Einstellungen"
name: "goldmark"
widget: "object"
fields:
- label: "Renderer-Einstellungen"
name: "renderer"
widget: "object"
fields: [{label: "Unsicheren Inhalt erlauben", name: "unsafe", widget: "boolean", required: false}]
- label: "Einstellungen"
name: "params"
widget: "object"
collapsed: true
fields:
- label: "Plugins"
name: "plugins"
widget: "object"
fields:
- label: "CSS"
name: "css"
widget: "list"
fields:
- {label: "Link", name: "link", widget: "string"}
- label: "JavaScript"
name: "js"
widget: "list"
fields:
- {label: "Link", name: "link", widget: "string"}
- {label: "Logo", name: "logo", widget: "image" }
- {label: "Autor", name: "author", widget: "string"}
- {label: "Adresse", name: "address", widget: "string"}
- {label: "Route (Link)", name: "route_link", widget: "string"}
- {label: "Telefonnummer", name: "mobile", widget: "string"}
- {label: "E-Mail-Adresse", name: "email", widget: "string"}
- {label: "E-Mail-Adresse (UI-Ansicht)", name: "email_label", widget: "string"}
- {label: "Beschreibung", name: "description", widget: "string"}
- {label: "Kontakt-Titelleiste", name: "top_header", widget: "boolean"}
- label: "Vorschaubilder"
name: "images"
widget: "list"
required: false
fields:
- label: "Bild-Pfad"
name: "path"
widget: "string"
- {label: "Twitter-Konto", name: "twitter", widget: "string", required: false}
- label: "Ladeanimation"
name: "preloader"
widget: "object"
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Logo", name: "preloader", widget: "image" }
- {label: "Ladeanimation", name: "loader", widget: "image" }
- label: "Soz. Netzwerke"
name: "social"
widget: "list"
fields:
- {label: "Bezeichnung", name: "title", widget: "string"}
- {label: "Symbol", name: "icon", widget: "string", hint: "Liste unter https://pictogrammers.com/library/mdi/"}
- {label: "Link", name: "link", widget: "string"}
- label: "Menü"
name: "menu"
widget: "object"
collapsed: true
fields:
- label: "Hauptmenü"
name: "main"
widget: "list"
fields:
- {label: "Titel", name: "name", widget: "string"}
- {label: "Position", name: "weight", widget: "number"}
- {label: "Untermenüs", name: "hasChildren", widget: "boolean", required: false}
- {label: "Link", name: "URL", widget: "string", required: false}
- {label: "Untermenü von", name: "parent", widget: "relation", collection: "config", file: "hugo-config", search_fields: ['menu.main.*.name'], display_fields: ['menu.main.*.name'], value_field: "menu.main.*.name", required: false}
- label: "Parameter"
name: "params"
widget: "object"
collapsed: false
fields:
- {label: "Externer Link", hint: "Wird in neuem Tab geöffnet.", name: "external", widget: "boolean", default: false, required: false}
- label: "unteres Menü"
name: "footer"
widget: "list"
fields:
- {label: "Titel", name: "name", widget: "string"}
- {label: "Link", name: "URL", widget: "string"}
- label: "Sprachen"
name: "languages"
widget: "object"
collapsed: true
fields:
- label: "Deutsch"
name: "de"
widget: "object"
fields:
- {label: "Abkürzung", name: "languageName", widget: "string"}
- {label: "Sprachcode", name: "languageCode", widget: "string"}
- {label: "Inhalt-Ordner", name: "contentDir", widget: "string"}
- {label: "Position", name: "weight", widget: "number"}
- {label: "Startseitenbezeichnung", name: "home", widget: "string"}
- {label: "Copyright-Hinweis", name: "copyright", widget: "string"}
- {label: "Impressum-Link", name: "impressumURL", widget: "string"}
- {label: "Datenschutz-Link", name: "dseURL", widget: "string"}
- label: "Privatsphäre"
name: "privacy"
widget: "object"
collapsed: true
fields:
- label: "Disqus"
name: "disqus"
widget: "object"
fields: [{label: "Deaktivieren", name: "disable", widget: "boolean", required: false}]
- label: "Google Analytics"
name: "googleAnalytics"
widget: "object"
fields: [{label: "Deaktivieren", name: "disable", widget: "boolean", required: false}]
- label: "Instagram"
name: "instagram"
widget: "object"
fields: [{label: "Deaktivieren", name: "disable", widget: "boolean", required: false}]
- label: "Twitter"
name: "twitter"
widget: "object"
fields: [{label: "Tracking deaktivieren", name: "enableDNT", widget: "boolean", required: false}]
- label: "YouTube"
name: "youtube"
widget: "object"
fields: [{label: "Piped-Proxy", name: "privacyEnhanced", widget: "boolean", required: false}]
- label: "Vimeo"
name: "vimeo"
widget: "object"
fields: [{label: "Tracking deaktivieren", name: "enableDNT", widget: "boolean", required: false}]
- name: "categories-config"
label: "Kategorien"
file: "data/de/categories.yml"
fields:
- label: "Aktuelles"
label_singular: "Kategorie"
name: "blog"
widget: "list"
required: true
collapsed: true
fields:
- {label: "Kategorie", name: "category", widget: "string", required: true}
- label: "Ganztagsbereich"
label_singular: "Kategorie"
name: "ganztag"
widget: "list"
required: true
collapsed: true
fields:
- {label: "Kategorie", name: "category", widget: "string", required: true}
- label: "Wettbewerbe"
label_singular: "Kategorie"
name: "contests"
widget: "list"
required: true
collapsed: true
fields:
- {label: "Kategorie", name: "category", widget: "string", required: true}
- label: "Begabtenförderung"
label_singular: "Kategorie"
name: "begabte"
widget: "list"
required: true
collapsed: true
fields:
- {label: "Kategorie", name: "category", widget: "string", required: true}
- name: "ausblick-config"
label: "Ausblick auf die Woche"
file: "data/de/ausblick.yml"
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- {label: "Titel", name: "title", widget: "string", required: false}
- label: "Autor"
name: "author"
widget: "relation"
collection: "author"
search_fields: ["title"]
value_field: "title"
required: false
- {label: "Titelbild", name: "image", widget: "image", required: false }
- {label: "Inhalt", name: "content", widget: "markdown", required: false}
- name: "index-pages"
icon: "page"
label: "Hauptseiten"
label_singular: "Hauptseite"
description: Hauptseiten können nur manuell durch den Administrator angelegt und in die Website eingebunden werden. Über diesen Bereich ist die Änderung der Inhalte möglich.
editor:
preview: true
frame: true
summary_fields: ["title", "description"]
files:
- name: "blog-index"
label: "Aktuelles"
file: "content/german/blog/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "about-index"
label: "Über die Schule"
file: "content/german/about/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Bild", name: "image", widget: "image", default: "/media/image.webp", required: false }
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- label: "Statistik"
name: "stats"
widget: "object"
collapsed: true
fields:
- {label: "Aktivieren", name: "enable", widget: "boolean", required: false}
- label: "Elemente"
name: "zahlen"
widget: "list"
fields:
- {label: "Bezeichnung", name: "name", widget: "string", required: false}
- {label: "Zahl", name: "count", widget: "number", required: false}
- {label: "Text", name: "body", widget: "markdown"}
- name: "anmeldung-index"
label: "Aufnahmeverfahren"
file: "content/german/anmeldung/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- label: "Elemente"
label_singular: "Element"
name: "elements"
widget: "list"
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Text", name: "content", widget: "markdown", required: true}
required: false
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "author-index"
label: "Autoren"
file: "content/german/author/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "anmeldeformular"
label: "Anmeldeformular"
file: "content/german/anmeldeformular/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "cantorpreis-index"
label: "Cantorpreis"
file: "content/german/cantorpreis/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "contact-index"
label: "Kontakt"
file: "content/german/kontakt/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- label: "Kontaktdaten"
name: "kontaktdaten"
widget: "list"
required: true
collapsed: true
fields:
- {label: "Name", name: "name", widget: "string", required: true}
- {label: "Berufsbezeichnung", name: "position", widget: "string", required: true}
- {label: "E-Mail-Adresse", name: "email", widget: "string", required: true, pattern: ["^\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$", "name@domain.tld"]}
- name: "event-index"
label: "Termine"
file: "content/german/termine/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- label: Termine
label_singular: "Termin"
name: "events"
widget: "list"
collapsed: true
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Datum/Startdatum", name: "date", widget: "datetime", required: true, date_format: "dd.MM.yyyy", time_format: false, format: "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"}
- {label: "Enddatum", name: "enddate", widget: "datetime", required: false, date_format: "dd.MM.yyyy", time_format: false, format: "yyyy-MM-dd'T'HH:mm:ss.SSSXXX", default: ""}
- {label: "Ort", name: "location", widget: "string", required: false}
required: false
- name: "forms-index"
label: "Dokumente und Formulare"
file: "content/german/forms/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "ganztagsangebote-index"
label: "Unser Ganztagsbereich"
file: "content/german/ganztagsangebote/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "projektwoche-index"
label: "Projektwoche"
file: "content/german/projektwoche/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "wettbewerbe-index"
label: "Wettbewerbe"
file: "content/german/wettbewerbe/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "begabte-index"
label: "Begabtenförderung"
file: "content/german/begabte/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "abiturienten-index"
label: "Abiturienten"
file: "content/german/abiturienten/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- name: "cantorfora-index"
label: "Cantorfora"
file: "content/german/cantorfora/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "schulchronik-index"
label: "Schulchronik"
file: "content/german/schulchronik/_index.md"
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Text", name: "body", widget: "markdown", required: false}
- label: "Karte"
name: "infocard"
widget: "object"
required: false
fields:
- {label: "Aktiviert", name: "enable", widget: "boolean", required: false}
- {label: "Bild", name: "image", widget: "image", required: false}
- {label: "Zitat", name: "quote", widget: "string", required: false}
- {label: "Autor", name: "author", widget: "string", required: false}
- label: "Informationsseiten"
name: "links"
widget: "list"
required: false
collapsed: true
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Link", name: "link", widget: "string", required: true}
- name: "pages"
icon: "page-add"
label: "Zusatzseiten"
label_singular: "Zusatzseite"
description: "Zusatzseiten können direkt aus der grafischen Oberfläche heraus erstellt werden und sind unter https://cantorgymnasium.de/pages/[SEITENTITEL] einsehbar. Sie bestehen immer aus einem Titel, einer Metabeschreibung (kurzer Einstiegstext) und dem eigentlichen Inhalt. Einer Zusatzseite kann auch ein Alias, also eine alternative URL zugewiesen werden."
folder: "content/german/pages"
create: true
editor:
preview: true
frame: true
slug: "{{slug}}"
filter:
field: type
value: pages
summary_fields: ["title", "draft","aliases", "description"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "pages"}
- label: "Aliase"
name: "aliases"
widget: "list"
fields:
- label: "Alias"
name: "alias"
widget: "string"
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "author"
icon: "user"
label: "Autoren"
label_singular: "Autor"
description: Autoren können einem Blogartikel zugewiesen werden. Wir unterscheiden in aktive und inaktive sowie vereinfachte Autoren, welche nur mit dem Namen angezeigt werden, und erweiterte Autoren, für die eine Übersichtsseite angelegt wird.
folder: "content/german/author"
filter: {field: type, value: author}
create: true
slug: "{{slug}}"
editor:
preview: true
frame: true
view_filters:
- label: "aktiv"
field: active
pattern: true
- label: "inaktiv"
field: active
pattern: false
- label: "einfach"
field: simplified
pattern: true
- label: "erweitert"
field: simplified
pattern: false
view_groups:
- label: "vereinfacht"
field: simplified
- label: "aktiv"
field: active
summary_fields: ["title", "active", "simplified", "body"]
fields:
- {label: "Name", name: "title", widget: "string"}
- {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false}
- {label: "E-Mail-Adresse", name: "email", widget: "string", required: false}
- {label: "Foto", name: "image", widget: "image", required: false, default: "/media/authors/gcg.webp" }
- {label: "vereinfacht", name: "simplified", widget: "boolean", default: false, required: false}
- {label: "aktiv", name: "active", widget: "boolean", default: true, required: false}
- {label: "Beschreibung", name: "body", widget: "markdown"}
- name: "blog"
icon: "news"
label: "Aktuelles"
description: Diese Artikel werden im Bereich "Aktuelles" auf der Schulhomepage angezeigt. Sie können sowohl direkt veröffentlicht, als auch als Entwurf gespeichert werden.
label_singular: "Artikel"
folder: "content/german/blog"
filter: {field: "type", value: "post"}
create: true
slug: "{{slug}}"
editor:
preview: true
frame: true
view_groups:
- label: Entwurf
field: draft
- label: Kategorie
field: categories
sortable_fields:
fields: ['date', 'title']
default:
field: date
direction: Descending
summary_fields: ["date", "title", "draft", "author", "body"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Datum", name: "date", widget: "datetime", date_format: "dd/MM/yyyy", time_format: false, format: "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false}
- {label: "Beitragsbild", name: "image", widget: "image", default: "/media/blog/image.webp" }
- label: "Beitragsautor"
name: "author"
widget: "relation"
collection: "author"
search_fields: ["title"]
value_field: "title"
- label: "Kategorien"
name: "categories"
widget: "relation"
required: true
collection: "config"
file: "categories-config"
value_field: "blog.*"
search_fields: ["blog.*"]
display_fields: ["blog.*"]
multiple: true
options_length: 50
- label: "Fächer"
name: "subjects"
widget: "relation"
required: false
collection: "config"
file: "categories-config"
value_field: "subjects.*"
search_fields: ["subjects.*"]
display_fields: ["subjects.*"]
multiple: true
options_length: 50
- label: "Tags"
name: "tags"
widget: "list"
required: false
fields:
- label: "Tag"
name: "tag"
widget: "string"
- {label: "Type", name: "type", widget: "hidden", default: "post"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "forms"
icon: "document"
label: "Dokumente"
label_singular: "Dokument"
description: "Hier sind Formulare, Vorlagen und andere Dokumente zu hinterlegen."
folder: "content/german/forms"
filter: {field: "type", value: "forms"}
create: true
slug: "{{slug}}"
editor:
preview: true
frame: true
summary_fields: ["title", "draft"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- label: "Dateien"
name: "files"
widget: "list"
required: false
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Datei", name: "link", widget: "file"}
- {label: "Type", name: "type", widget: "hidden", default: "forms"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "cantorpreis"
icon: "award"
label: "Cantor-Preisträger"
label_singular: "Cantor-Preisträger"
folder: "content/german/cantorpreis"
filter: {field: "type", value: "cantorpreis"}
sortable_fields:
fields: ['title', 'name']
default:
field: title
direction: Descending
summary: "{{title}} - {{name}}"
create: true
editor:
preview: true
frame: true
summary_fields: ["title", "name", "draft", "body"]
fields:
- {label: "Jahr", name: "title", widget: "string"}
- {label: "Name", name: "name", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Beschreibung", name: "description", widget: "text", required: false}
- {label: "Bild", name: "image", widget: "image", default: "/media/cantorpreis/image.webp", required: false }
- {label: "Type", name: "type", widget: "hidden", default: "cantorpreis"}
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "ganztagsangebote"
icon: "group"
label: "Ganztagsangebote"
label_singular: "Ganztagsangebot"
folder: "content/german/ganztagsangebote"
filter: {field: "type", value: "ganztagsangebote"}
create: true
editor:
preview: true
frame: true
summary_fields: ["title", "draft", "category", "schedule", "room"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Bild", name: "image", widget: "image", default: "/media/ganztagsangebote/image.webp", required: false }
- label: "Themenbereich"
name: "category"
widget: "relation"
required: true
collection: "config"
file: "categories-config"
value_field: "ganztag.*"
search_fields: ["ganztag.*"]
display_fields: ["ganztag.*"]
options_length: 50
- {label: "Dauer", name: "duration", widget: "string"}
- {label: "Tag/Stunden", name: "schedule", widget: "string"}
- {label: "Klassenstufen", name: "class", widget: "string"}
- {label: "Raum", name: "room", widget: "string"}
- {label: "Anmeldelink", name: "apply_url", widget: "hidden", default: "https://moodle.bildung-lsa.de/gcg/mod/choice/view.php?id=828"}
- {label: "Type", name: "type", widget: "hidden", default: "ganztagsangebote"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "wettbewerbe"
icon: "trophy"
label: "Wettbewerbe"
label_singular: "Wettbewerb"
folder: "content/german/wettbewerbe"
filter: {field: "type", value: "wettbewerbe"}
create: true
editor:
preview: true
frame: true
summary_fields: ["title", "draft", "category"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Bild", name: "image", widget: "image", default: "/media/contests/image.webp", required: false }
- label: "Fach"
name: "category"
widget: "relation"
required: true
collection: "config"
file: "categories-config"
value_field: "contests.*"
search_fields: ["contests.*"]
display_fields: ["contests.*"]
options_length: 50
- {label: "Klassenstufen", name: "class", widget: "string"}
- {label: "Website", name: "web_url", widget: "string", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "wettbewerbe"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "begabte"
icon: "pi"
label: "Begabtenförderung"
label_singular: "Begabtenförderung"
folder: "content/german/begabte"
filter: {field: "type", value: "begabte"}
create: true
editor:
preview: true
frame: true
summary_fields: ["title", "draft", "body"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Bild", name: "image", widget: "image", default: "/media/begabte/image.webp", required: false }
- {label: "Klassenstufen", name: "class", widget: "string"}
- {label: "Website", name: "web_url", widget: "string", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "begabte"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "projektwoche"
icon: "projektwoche"
label: "Projektwoche"
label_singular: "Projektwoche"
folder: "content/german/projektwoche"
filter: {field: "type", value: "projektwoche"}
create: true
editor:
preview: true
frame: true
summary_fields: ["title", "draft", "tiles", "description"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "projektwoche"}
- {label: "Text", name: "body", widget: "markdown", required: false, default: ""}
- label: "Kacheln"
name: "tiles"
widget: "list"
required: false
collapsed: true
hint: "Die Vorschau zeigt nur die generierten Symbolkarten, NICHT die Inhalte."
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Hintergrundfarbe", name: "bg_color", widget: "color", required: true}
- {label: "Symbol", name: "icon", widget: "string", required: true}
- {label: "Symbolfarbe", name: "font_color", widget: "color", required: true}
- {label: "Inhalt", name: "content", widget: "markdown", required: true}
- name: "schulchronik"
icon: "pillar"
label: "Schulchronik"
label_singular: "Chronikjahr"
folder: "content/german/schulchronik"
filter: {field: "type", value: "schulchronik"}
create: true
editor:
preview: false
summary_fields: ["title", "draft", "cantorpreisträger", "topics"]
sortable_fields:
fields: ['title']
default:
field: title
direction: Descending
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Type", name: "type", widget: "hidden", default: "schulchronik"}
- {label: "Einleitung", name: "pretext", hint: "Jahreszahltext", widget: "markdown", required: false}
- label: "Kreative Haufen"
name: "topics"
widget: "list"
required: false
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Inhalt", name: "content", widget: "markdown", required: true}
- label: "Superhaufen"
name: "superhaufen"
widget: "object"
required: false
fields:
- {label: "Aktiviert", name: "enable", widget: "boolean", required: false}
- label: "Superhaufen"
name: "link"
widget: "relation"
collection: "superhaufen"
search_fields: ["title"]
value_field: "title"
required: false
collapsed: true
- label: "Cantorpreisträger"
name: "cantorpreisträger"
widget: "relation"
collection: "cantorpreis"
search_fields: ["jahr", "name"]
value_field: "name"
required: false
- {label: "Text", name: "body", widget: "markdown", required: false, default: ""}
- name: "superhaufen"
icon: "superhaufen"
label: "Superhaufen"
label_singular: "Superhaufen"
folder: "content/german/superhaufen"
filter: {field: "type", value: "superhaufen"}
create: true
editor:
preview: true
frame: true
summary_fields: ["title", "draft", "tiles"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Type", name: "type", widget: "hidden", default: "superhaufen"}
- label: "Rückverlinkung"
name: "previous"
widget: "object"
fields:
- {label: "Aktiviert", name: "enable", widget: "hidden", default: true}
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Link", name: "link", widget: "string", required: true}
- label: "Kacheln"
name: "tiles"
widget: "list"
required: false
collapsed: true
hint: "Die Vorschau zeigt nur die generierten Symbolkarten, NICHT die Inhalte."
fields:
- {label: "Titel", name: "title", widget: "string", required: true}
- {label: "Hintergrundfarbe", name: "bg_color", widget: "color", required: true}
- {label: "Symbol", name: "icon", widget: "string", required: true}
- {label: "Symbolfarbe", name: "font_color", widget: "color", required: true}
- {label: "Inhalt", name: "content", widget: "markdown", required: true}
- label: "Unter-Unterhaufen"
name: "unterhaufen"
widget: "list"
required: false
collapsed: true
fields:
- {label: "Titel", name: "title", widget: "string", required: false}
- {label: "Inhalt", name: "content", widget: "markdown", required: true}
- name: "abiturienten"
icon: "graduation-cap"
label: "Abiturienten"
label_singular: "Abiturjahrgang"
folder: "content/german/abiturienten"
filter: {field: "type", value: "abiturienten"}
create: true
editor:
preview: true
frame: true
summary_fields: ["title", "draft"]
sortable_fields:
fields: ["title"]
default:
field: title
direction: Descending
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Bild", name: "image", widget: "image", default: "/media/abiturienten/image.webp", required: false }
- {label: "Type", name: "type", widget: "hidden", default: "abiturienten"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "cantorfora"
icon: "presentation"
label: "Cantorfora"
label_singular: "Cantorforum"
folder: "content/german/cantorfora"
filter: {field: "type", value: "cantorfora"}
create: true
slug: "{{slug}}"
editor:
preview: true
frame: true
view_groups:
- label: Drafts
field: draft
summary_fields: ["title", "draft", "description"]
sortable_fields:
fields: ['index', 'title']
default:
field: index
direction: Descending
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Laufindex", name: "index", widget: "number", value_type: 'int', min: 1, step: 1, required: true, hint: "Nummer des Cantorforums"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false}
- {label: "Beitragsbild", name: "image", widget: "image", default: "/media/image.webp" }
- {label: "Type", name: "type", widget: "hidden", default: "cantorfora"}
- {label: "Text", name: "body", widget: "markdown"}
- name: "chronikseiten"
icon: "page-add"
label: "Chronikseiten"
label_singular: "Seite"
folder: "content/german/chronikseiten"
create: true
editor:
preview: true
frame: true
slug: "{{slug}}"
filter: {field: "type", value: "pages"}
summary_fields: ["title", "draft", "aliases", "body"]
fields:
- {label: "Titel", name: "title", widget: "string"}
- {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false}
- {label: "Metabeschreibung", name: "description", widget: "text", required: false}
- {label: "Type", name: "type", widget: "hidden", default: "pages"}
- label: "Aliase"
name: "aliases"
widget: "list"
required: false
fields:
- label: "Alias"
name: "alias"
widget: "string"
- {label: "Text", name: "body", widget: "markdown", required: false}
- name: "statistik"
icon: "stats"
label: "Statistik"
editor:
preview: false
files:
- name: "abiturdurchschnitte"
label: "Abiturdurchschnitte"
file: "static/data/abiturdurchschnitte.json"
fields:
- label: "Abiturdurchschnitte"
label_singular: "Abiturdurchschnitt"
name: "abiturdurchschnitte"
widget: "list"
required: false
fields:
- {label: "Jahr", name: "jahr", widget: "number", required: true}
- {label: "Schnitt", name: "schnitt", widget: "number", value_type: "float", step: 0.01, required: true}
- name: "schuelerzahlen"
label: "Schülerzahlen"
file: "static/data/schuelerzahlen.json"
fields:
- label: "Schülerzahlen"
label_singular: "Schülerzahlen"
name: "schuelerzahlen"
widget: "list"
required: false
fields:
- {label: "Jahr", name: "year", widget: "number", required: true}
- {label: "Gesamt", name: "all", widget: "number", required: true}
- {label: "davon Mädchen", name: "girls", widget: "number", required: true}