import { DataObject, DateFormat, MarkdownProps, PatternEmail, ImageProps } from "../props.js"; import { DescriptionText, EnableBoolean, Title } from "./widgets.js"; const IndexPagesCollection = { name: "index-pages", 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.", icon: "page", editor: { preview: true, frame: true, size: "half", }, summary_fields: ["title", "description"], files: [ { name: "blog-index", label: "Aktuelles", file: "content/blog/_index.md", fields: [Title(false), DescriptionText], }, { name: "about-index", label: "Über die Schule", file: "content/about/_index.md", fields: [ Title(false), DescriptionText, { name: "image", label: "Bild", ...ImageProps, }, { name: "stats", label: "Statistik", ...DataObject, fields: [ EnableBoolean, { name: "zahlen", label: "Elemente", label_singular: "Element", widget: "list", required: false, collapsed: false, fields: [ { name: "name", label: "Bezeichnung", widget: "string", required: true, }, { name: "count", label: "Zahl", widget: "number", value_type: "int", min: 0, step: 1, required: true, }, ], }, ], }, { name: "body", label: "Inhalt", required: false, ...MarkdownProps, }, ], }, { name: "anmeldung-index", label: "Aufnahmeverfahren", file: "content/anmeldung/_index.md", fields: [ Title(false), DescriptionText, { name: "body", label: "Inhalt", required: false, ...MarkdownProps, }, { name: "elements", label: "Abschnitte", label_singular: "Abschnitt", widget: "list", required: false, collapsed: true, fields: [ Title(false), { name: "content", label: "Inhalt", required: true, ...MarkdownProps, }, ], }, ], }, { name: "author-index", label: "Autoren", file: "content/author/_index.md", fields: [Title(false), DescriptionText], }, { name: "anmeldeformular", label: "Anmeldeformular", file: "content/anmeldeformular/_index.md", fields: [ Title(false), DescriptionText, { name: "body", label: "Inhalt", required: false, ...MarkdownProps, }, ], }, { name: "cantorpreis-index", label: "Cantorpreis", file: "content/cantorpreis/_index.md", fields: [Title(false), DescriptionText], }, { name: "kontakt", label: "Kontakt", file: "content/kontakt/_index.md", fields: [ Title(false), DescriptionText, { name: "kontaktdaten", label: "Kontaktdaten", widget: "list", required: true, collapsed: true, fields: [ { name: "name", label: "Name", widget: "string", required: true, }, { name: "position", label: "Berufsbezeichnung", widget: "string", required: true, }, { name: "email", label: "E-Mail-Adresse", widget: "string", required: true, ...PatternEmail, }, ], }, ], }, { name: "termine", label: "Termine", file: "content/termine/_index.md", fields: [ Title(false), DescriptionText, { name: "events", label: "Termine", label_singular: "Termin", widget: "list", required: true, collapsed: true, fields: [ { name: "title", label: "Bezeichnung", widget: "string", required: true, }, { name: "date", label: "Datum/Startdatum", widget: "datetime", required: true, ...DateFormat, }, { name: "enddate", label: "Enddatum", hint: "Für mehrtägige Veanstaltungen, nur sichtbar wenn eingestellt", widget: "datetime", required: false, default: "", ...DateFormat, }, { name: "location", label: "Ort", widget: "string", required: false, }, ], }, ], }, { name: "forms-index", label: "Dokumente und Formulare", file: "content/forms/_index.md", fields: [Title(false), DescriptionText], }, { name: "ganztagsangebote-index", label: "Unser Ganztagsbereich", file: "content/ganztagsangebote/_index.md", fields: [Title(false), DescriptionText], }, { name: "projektwoche-index", label: "Projektwoche", file: "content/projektwoche/_index.md", fields: [Title(false), DescriptionText], }, { name: "wettbewerbe-index", label: "Wettbewerbe", file: "content/wettbewerbe/_index.md", fields: [Title(false), DescriptionText], }, { name: "begabte-index", label: "Begabtenförderung", file: "content/begabte/_index.md", fields: [Title(false), DescriptionText], }, { name: "abiturienten-index", label: "Abiturienten", file: "content/abiturienten/_index.md", fields: [Title(false), DescriptionText], }, { name: "cantorfora-index", label: "Cantorfora", file: "content/cantorfora/_index.md", fields: [ Title(false), DescriptionText, { name: "body", label: "Inhalt", required: false, ...MarkdownProps, }, ], }, { name: "schulchronik-index", label: "Schulchronik", file: "content/schulchronik/_index.md", fields: [ Title(false), DescriptionText, { name: "body", label: "Inhalt", required: false, ...MarkdownProps, }, { name: "infocard", label: "Zitatkarte", ...DataObject, fields: [ EnableBoolean, { name: "image", label: "Bild", ...ImageProps, }, { name: "quote", label: "Zitat", widget: "text", required: false, }, { name: "author", label: "Autor", widget: "string", required: false, }, ], }, { name: "links", label: "Informationsseiten", widget: "list", required: false, collapsed: true, fields: [ { name: "title", label: "Bezeichnung", widget: "string", required: true, }, { name: "link", label: "Link", widget: "string", required: true, }, ], }, ], }, ], }; export default IndexPagesCollection;