kategorien-umbau, cms-fixes
| @@ -3,7 +3,7 @@ title: Frühstudium | ||||
| draft: false | ||||
| bg_image: /media/backgrounds/page-title.webp | ||||
| description: "" | ||||
| image: "" | ||||
| image: /media/begabte/image.webp | ||||
| category: Naturwissenschaften | ||||
| class: 10 - 12 Klasse | ||||
| web_url: null | ||||
|   | ||||
| @@ -3,7 +3,7 @@ title: Begabtenförderungskonzept | ||||
| draft: false | ||||
| bg_image: /media/backgrounds/page-title.webp | ||||
| description: "" | ||||
| image: "" | ||||
| image: /media/begabte/image.webp | ||||
| category: fächerübergreifend | ||||
| class: 5 - 12 Klasse | ||||
| web_url: null | ||||
|   | ||||
| @@ -7,7 +7,7 @@ description: "" | ||||
| image: /media/image.webp | ||||
| author: Schulleitung | ||||
| categories: | ||||
|   - Ereignisse | ||||
|   - Veranstaltungen | ||||
| tags: | ||||
|   - cantorluftschnuppern | ||||
|   - cantorentdecken | ||||
|   | ||||
| @@ -8,7 +8,7 @@ image: /media/blog//gy-pt-2023.png | ||||
| author: Denys Konovalov | ||||
| categories: | ||||
|   - Wettbewerbe | ||||
|   - Physik | ||||
|   - Naturwissenschaften | ||||
| tags: | ||||
|   - physik | ||||
|   - gypt | ||||
|   | ||||
| @@ -7,7 +7,8 @@ description: "" | ||||
| image: /media/image.webp | ||||
| author: Frau Schapitz | ||||
| categories: | ||||
|   - Website | ||||
|   - Sonstiges | ||||
|   - Informatik/Technik | ||||
| tags: | ||||
|   - renewGCG | ||||
| type: post | ||||
|   | ||||
| @@ -7,7 +7,7 @@ description: "" | ||||
| image: /media/image.webp | ||||
| author: Herr Berger | ||||
| categories: | ||||
|   - Ereignisse | ||||
|   - Veranstaltungen | ||||
| tags: | ||||
|   - tdot | ||||
|   - cantorluftschnuppern | ||||
|   | ||||
| @@ -8,6 +8,7 @@ image: /media/blog/biber_300dpi.png | ||||
| author: Herr Berger | ||||
| categories: | ||||
|   - Wettbewerbe | ||||
|   - Informatik/Technik | ||||
| tags: | ||||
|   - "2022" | ||||
|   - Infobiber | ||||
|   | ||||
| @@ -9,6 +9,7 @@ image: /media/blog/mia2.webp | ||||
| author: Denys Konovalov | ||||
| categories: | ||||
|   - Wettbewerbe | ||||
|   - Mathematik | ||||
| tags: | ||||
|   - Mathematik | ||||
|   - Weihnachten | ||||
|   | ||||
| @@ -7,6 +7,9 @@ description: "" | ||||
| image: /media/image.webp | ||||
| author: Herr Berger | ||||
| categories: | ||||
|   - Musik | ||||
|   - Deutsch | ||||
|   - Traditionen | ||||
|   - Veranstaltungen | ||||
| tags: | ||||
|   - Muli | ||||
|   | ||||
| @@ -8,6 +8,7 @@ image: /media/image.webp | ||||
| author: Frau Krug | ||||
| categories: | ||||
|   - Musik | ||||
|   - Traditionen | ||||
| tags: | ||||
|   - Musikfahrt | ||||
|   - Weihnachtskonzert | ||||
|   | ||||
| @@ -7,9 +7,9 @@ description: "" | ||||
| image: /media/blog/SL-2023//sl-1.jpg | ||||
| author: Franziska Berner | ||||
| categories: | ||||
|   - Traditionen | ||||
|   - Wettbewerbe | ||||
|   - Mathematik | ||||
|   - Traditionen | ||||
| tags: | ||||
|   - spezilager | ||||
|   - matheolympiade | ||||
|   | ||||
| @@ -4,10 +4,11 @@ date: 2023-01-24T15:13:45+01:00 | ||||
| draft: false | ||||
| bg_image: /media/backgrounds/page-title.webp | ||||
| description: "" | ||||
| image: /media/image.webp | ||||
| image: /media/blog/image.webp | ||||
| author: Herr Berger | ||||
| categories: | ||||
|   - Wettbewerbe | ||||
|   - Fremdsprachen | ||||
| tags: | ||||
|   - TOEFL | ||||
|   - Englisch | ||||
|   | ||||
| @@ -8,6 +8,7 @@ image: /media/blog/vlw_logo_blau_rgb.webp | ||||
| author: Herr Berger | ||||
| categories: | ||||
|   - Wettbewerbe | ||||
|   - Deutsch | ||||
| tags: | ||||
|   - Vorlesewettbewerb 6 | ||||
|   - Schulrunde | ||||
|   | ||||
| @@ -7,8 +7,9 @@ description: "" | ||||
| image: /media/blog/gcgweihnachten.webp | ||||
| author: Herr Berger | ||||
| categories: | ||||
|   - Weihnachten | ||||
|   - Traditionen | ||||
|   - Schülerrat | ||||
|   - Musik | ||||
| tags: | ||||
|   - Weihnachtskonzert | ||||
|   - Weihnachtssingen | ||||
|   | ||||
| @@ -3,7 +3,7 @@ title: Chemie - die stimmt! | ||||
| draft: "false" | ||||
| bg_image: /media/backgrounds/page-title.webp | ||||
| image: /media/contests/chds.webp | ||||
| category: "Chemie " | ||||
| category: Chemie | ||||
| class: 8. - 10. Klasse | ||||
| web_url: https://www.chemie-die-stimmt.de/ | ||||
| type: wettbewerbe | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| --- | ||||
| title: "Chemkids " | ||||
| title: Chemkids | ||||
| draft: "false" | ||||
| bg_image: /media/backgrounds/page-title.webp | ||||
| image: /media/contests/chemkids.webp | ||||
|   | ||||
| @@ -1,9 +1,9 @@ | ||||
| --- | ||||
| title: "Internationale Chemieolympiade (IChO) " | ||||
| title: Internationale Chemieolympiade (IChO) | ||||
| draft: "false" | ||||
| bg_image: /media/backgrounds/page-title.webp | ||||
| image: /media/contests/icho.webp | ||||
| category: "Chemie " | ||||
| category: Chemie | ||||
| class: 9. - 12. Klasse | ||||
| web_url: https://www.scienceolympiaden.de/icho | ||||
| type: wettbewerbe | ||||
| @@ -11,12 +11,9 @@ gallery: false | ||||
| --- | ||||
| - Internationale Wissenschaftsolympiade | ||||
| - findet jährlich für Schülerinnen und Schüler ab Klassenstufe 9 statt | ||||
| - Ziel: die bundesweit besten vier Schüler zu finden, die als Mannschaft am | ||||
| internationalen Wettbewerb teilnehmen | ||||
| - Ziel: die bundesweit besten vier Schüler zu finden, die als Mannschaft am internationalen Wettbewerb teilnehmen | ||||
| - Vier Runden: | ||||
| Runde 1: (Hausaufgabenrunde): theoretische Aufgaben | ||||
| Runde 2: vierstündige Klausur | ||||
| Runde 3: die 60 besten Teilnehmer → achttägiges Auswahlseminar mit Vorträgen und | ||||
| Übungen zu Fachthemen, Laborarbeit und einem tollen Rahmenprogramm. | ||||
| Runde 4: Die 15 Besten der dritten Runde bewerben sich in der Auswahlrunde in Kiel um | ||||
| einen Platz in der deutschen Mannschaft für den internationalen Wettstreit | ||||
|     - Runde 1: (Hausaufgabenrunde): theoretische Aufgaben | ||||
|     - Runde 2: vierstündige Klausur | ||||
|     - Runde 3: die 60 besten Teilnehmer → achttägiges Auswahlseminar mit Vorträgen und Übungen zu Fachthemen, Laborarbeit und einem tollen Rahmenprogramm. | ||||
|     - Runde 4: Die 15 Besten der dritten Runde bewerben sich in der Auswahlrunde in Kiel um einen Platz in der deutschen Mannschaft für den internationalen Wettstreit | ||||
|   | ||||
							
								
								
									
										35
									
								
								data/de/categories.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,35 @@ | ||||
| blog: | ||||
|   - Wettbewerbe | ||||
|   - Veranstaltungen | ||||
|   - Traditionen | ||||
|   - Mathematik | ||||
|   - Naturwissenschaften | ||||
|   - Informatik/Technik | ||||
|   - Deutsch | ||||
|   - Fremdsprachen | ||||
|   - Sport | ||||
|   - Gesellschaftswissenschaften | ||||
|   - Kunst | ||||
|   - Musik | ||||
|   - Schülerrat | ||||
|   - Sonstiges | ||||
| ganztag: | ||||
|   - Sport | ||||
|   - Musik | ||||
|   - Naturwissenschaften | ||||
|   - Gesellschaft | ||||
|   - Technik | ||||
|   - Kunst | ||||
|   - Mathematik | ||||
| contests: | ||||
|   - Informatik | ||||
|   - Fremdsprachen | ||||
|   - Mathematik | ||||
|   - Chemie | ||||
|   - Geographie | ||||
|   - MINT | ||||
|   - Physik | ||||
| begabte: | ||||
|   - fächerübergreifend | ||||
|   - Naturwissenschaften | ||||
|   - Mathematik | ||||
| @@ -333,6 +333,39 @@ collections: | ||||
|                 name: "vimeo" | ||||
|                 widget: "object" | ||||
|                 fields: [{label: "Tracking deaktivieren", name: "enableDNT", widget: "boolean", required: false}] | ||||
|       - name: "categories-config" | ||||
|         label: "Kategorien" | ||||
|         file: "data/de/categories.yml" | ||||
|         format: yml | ||||
|         fields: | ||||
|           - label: "Aktuelles" | ||||
|             label_singular: "Kategorie" | ||||
|             name: "blog" | ||||
|             widget: "list" | ||||
|             required: true | ||||
|             fields: | ||||
|               - {label: "Kategorie", name: "category", widget: "string", required: true} | ||||
|           - label: "Ganztagsbereich" | ||||
|             label_singular: "Kategorie" | ||||
|             name: "ganztag" | ||||
|             widget: "list" | ||||
|             required: true | ||||
|             fields: | ||||
|               - {label: "Kategorie", name: "category", widget: "string", required: true} | ||||
|           - label: "Wettbewerbe" | ||||
|             label_singular: "Kategorie" | ||||
|             name: "contests" | ||||
|             widget: "list" | ||||
|             required: true | ||||
|             fields: | ||||
|               - {label: "Kategorie", name: "category", widget: "string", required: true} | ||||
|           - label: "Begabtenförderung" | ||||
|             label_singular: "Kategorie" | ||||
|             name: "begabte" | ||||
|             widget: "list" | ||||
|             required: true | ||||
|             fields: | ||||
|               - {label: "Kategorie", name: "category", widget: "string", required: true} | ||||
|   - name: "index-pages" | ||||
|     icon: "page" | ||||
|     label: "Hauptseiten" | ||||
| @@ -543,6 +576,7 @@ collections: | ||||
|   - name: "blog" | ||||
|     icon: "news" | ||||
|     label: "Aktuelles" | ||||
|     description: Diese Artikel werden im Bereich "Aktuelles" auf der Schulhomepage angezeigt. | ||||
|     label_singular: "Blogbeitrag" | ||||
|     folder: "content/german/blog" | ||||
|     filter: {field: "type", value: "post"} | ||||
| @@ -554,8 +588,10 @@ collections: | ||||
|     media_folder: '/static/media/blog' | ||||
|     public_folder: '/media/blog' | ||||
|     view_groups: | ||||
|       - label: Drafts | ||||
|       - label: Entwurf | ||||
|         field: draft | ||||
|       - label: Kategorie | ||||
|         field: categories | ||||
|     sortable_fields: | ||||
|       fields: ['date', 'title'] | ||||
|       default: | ||||
| @@ -567,7 +603,7 @@ collections: | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false} | ||||
|       - {label: "Beitragsbild", name: "image", widget: "image", default: "/media/image.webp"} | ||||
|       - {label: "Beitragsbild", name: "image", widget: "image", default: "/media/blog/image.webp"} | ||||
|       - label: "Beitragsautor" | ||||
|         name: "author" | ||||
|         widget: "relation" | ||||
| @@ -576,12 +612,15 @@ collections: | ||||
|         value_field: "title" | ||||
|       - label: "Kategorien" | ||||
|         name: "categories" | ||||
|         widget: "list" | ||||
|         required: false | ||||
|         fields: | ||||
|           - label: "Kategorie" | ||||
|             name: "category" | ||||
|             widget: "string" | ||||
|         widget: "relation" | ||||
|         required: true | ||||
|         collection: "config" | ||||
|         file: "categories-config" | ||||
|         value_field: "blog.*" | ||||
|         search_fields: ["blog.*"] | ||||
|         display_fields: ["blog.*"] | ||||
|         multiple: true | ||||
|         options_length: 50 | ||||
|       - label: "Tags" | ||||
|         name: "tags" | ||||
|         widget: "list" | ||||
| @@ -627,6 +666,12 @@ collections: | ||||
|     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: false | ||||
| @@ -682,7 +727,16 @@ collections: | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"} | ||||
|       - {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: "string", required: true} | ||||
|       - 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: "weekly", widget: "string"} | ||||
|       - {label: "Klassenstufen", name: "class", widget: "string"} | ||||
| @@ -708,7 +762,16 @@ collections: | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"} | ||||
|       - {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: "string"} | ||||
|       - 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"} | ||||
| @@ -731,7 +794,16 @@ collections: | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.webp"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/begabte/image.webp", required: false} | ||||
|       - {label: "Fach", name: "category", widget: "string"} | ||||
|       - label: "Fach" | ||||
|         name: "category" | ||||
|         widget: "relation" | ||||
|         required: true | ||||
|         collection: "config" | ||||
|         file: "categories-config" | ||||
|         value_field: "begabte.*" | ||||
|         search_fields: ["begabte.*"] | ||||
|         display_fields: ["begabte.*"] | ||||
|         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: "begabte"} | ||||
|   | ||||
| @@ -725,5 +725,316 @@ | ||||
|       }; | ||||
|       CMS.registerPreviewTemplate("about-index", AboutPreview); | ||||
|     </script> | ||||
|     <script>    | ||||
|       const PostPreviewCard = ({ entry, widgetFor, viewStyle }) => { | ||||
|         return h( | ||||
|           'div', | ||||
|           { style: { width: '100%', height: '100%' } }, | ||||
|           viewStyle === 'grid' ? widgetFor('image') : null, | ||||
|           viewStyle === 'grid' ?  | ||||
|           h( | ||||
|             'div', | ||||
|             { style: { padding: '16px', paddingBottom: '8px', width: '100%' } }, | ||||
|             h( | ||||
|               'div', | ||||
|               { | ||||
|                 style: { | ||||
|                   display: 'flex', | ||||
|                   width: '100%', | ||||
|                   justifyContent: 'space-between', | ||||
|                   alignItems: 'start', | ||||
|                 }, | ||||
|               }, | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     backgroundColor: entry.data.draft === true ? 'RoyalBlue' : 'green', | ||||
|                     color: 'white', | ||||
|                     border: 'none', | ||||
|                     padding: '4px 8px', | ||||
|                     textAlign: 'center', | ||||
|                     textDecoration: 'none', | ||||
|                     display: 'inline-block', | ||||
|                     cursor: 'pointer', | ||||
|                     borderRadius: '4px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 entry.data.draft === true ? 'Entwurf' : 'Öffentlich', | ||||
|               ), | ||||
|               h('span', { style: { fontSize: '16px' } }, new Intl.DateTimeFormat('de-De', { day: 'numeric', month: 'numeric', year: 'numeric'}).format(new Date(entry.data.date))) | ||||
|             ), | ||||
|           ) : null, | ||||
|           h( | ||||
|             'div', | ||||
|             { style: { padding: '16px', paddingTop: '8px', width: '100%' } }, | ||||
|             h( | ||||
|               'div', | ||||
|               { | ||||
|                 style: { | ||||
|                   display: 'flex', | ||||
|                   width: '100%', | ||||
|                   justifyContent: 'space-between', | ||||
|                   alignItems: 'start', | ||||
|                 }, | ||||
|               }, | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     display: 'flex', | ||||
|                     flexDirection: viewStyle === 'grid' ? 'column' : 'row', | ||||
|                     alignItems: 'baseline', | ||||
|                     gap: '8px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 h('strong', { style: { fontSize: '20px' } }, entry.data.title), | ||||
|               ), | ||||
|             ), | ||||
|           ), | ||||
|           viewStyle != 'grid' ?  | ||||
|           h( | ||||
|             'div', | ||||
|             { style: { padding: '16px', paddingBottom: '8px', paddingTop: '0px', width: '100%' } }, | ||||
|             h( | ||||
|               'div', | ||||
|               { | ||||
|                 style: { | ||||
|                   display: 'flex', | ||||
|                   width: '100%', | ||||
|                   justifyContent: 'space-between', | ||||
|                   alignItems: 'start', | ||||
|                 }, | ||||
|               }, | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     backgroundColor: entry.data.draft === true ? 'RoyalBlue' : 'green', | ||||
|                     color: 'white', | ||||
|                     border: 'none', | ||||
|                     padding: '4px 8px', | ||||
|                     textAlign: 'center', | ||||
|                     textDecoration: 'none', | ||||
|                     display: 'inline-block', | ||||
|                     cursor: 'pointer', | ||||
|                     borderRadius: '4px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 entry.data.draft === true ? 'Entwurf' : 'Öffentlich', | ||||
|               ), | ||||
|               h('span', { style: { fontSize: '16px' } }, new Intl.DateTimeFormat('de-De', { day: 'numeric', month: 'numeric', year: 'numeric'}).format(new Date(entry.data.date))) | ||||
|             ), | ||||
|           ) : null, | ||||
|         ); | ||||
|       }; | ||||
|       const GenericCard = ({ entry, widgetFor, viewStyle }) => { | ||||
|         return h( | ||||
|           'div', | ||||
|           { style: { width: '100%', height: '100%' } }, | ||||
|           viewStyle === 'grid' ? widgetFor('image') : null, | ||||
|           viewStyle === 'grid' ?  | ||||
|           h( | ||||
|             'div', | ||||
|             { style: { padding: '16px', paddingBottom: '8px', width: '100%' } }, | ||||
|             h( | ||||
|               'div', | ||||
|               { | ||||
|                 style: { | ||||
|                   display: 'flex', | ||||
|                   width: '100%', | ||||
|                   justifyContent: 'space-between', | ||||
|                   alignItems: 'start', | ||||
|                 }, | ||||
|               }, | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     backgroundColor: entry.data.draft === true ? 'RoyalBlue' : 'green', | ||||
|                     color: 'white', | ||||
|                     border: 'none', | ||||
|                     padding: '4px 8px', | ||||
|                     textAlign: 'center', | ||||
|                     textDecoration: 'none', | ||||
|                     display: 'inline-block', | ||||
|                     cursor: 'pointer', | ||||
|                     borderRadius: '4px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 entry.data.draft === true ? 'Entwurf' : 'Öffentlich', | ||||
|               ), | ||||
|               h('span', { style: { fontSize: '16px' } }, entry.data.category) | ||||
|             ), | ||||
|           ) : null, | ||||
|           h( | ||||
|             'div', | ||||
|             { style: { padding: '16px', paddingTop: viewStyle === 'grid' ? '8px' : '16px', width: '100%' } }, | ||||
|             h( | ||||
|               'div', | ||||
|               { | ||||
|                 style: { | ||||
|                   display: 'flex', | ||||
|                   width: '100%', | ||||
|                   justifyContent: 'space-between', | ||||
|                   alignItems: 'start', | ||||
|                 }, | ||||
|               }, | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     display: 'flex', | ||||
|                     flexDirection: viewStyle === 'grid' ? 'column' : 'row', | ||||
|                     alignItems: 'baseline', | ||||
|                     gap: '8px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 h('strong', { style: { fontSize: '20px' } }, entry.data.title), | ||||
|               ), | ||||
|               viewStyle != 'grid' ? h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     backgroundColor: entry.data.draft === true ? 'RoyalBlue' : 'green', | ||||
|                     color: 'white', | ||||
|                     border: 'none', | ||||
|                     padding: '4px 8px', | ||||
|                     textAlign: 'center', | ||||
|                     textDecoration: 'none', | ||||
|                     display: 'inline-block', | ||||
|                     cursor: 'pointer', | ||||
|                     borderRadius: '4px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 entry.data.draft === true ? 'Entwurf' : 'Öffentlich', | ||||
|               ) : null, | ||||
|             ), | ||||
|           ), | ||||
|         ); | ||||
|       }; | ||||
|       const NoCatCard = ({ entry, widgetFor, viewStyle }) => { | ||||
|         return h( | ||||
|           'div', | ||||
|           { style: { width: '100%', height: '100%' } }, | ||||
|           viewStyle === 'grid' ? widgetFor('image') : null, | ||||
|           h( | ||||
|             'div', | ||||
|             { style: { padding: '16px', width: '100%' } }, | ||||
|             h( | ||||
|               'div', | ||||
|               { | ||||
|                 style: { | ||||
|                   display: 'flex', | ||||
|                   width: '100%', | ||||
|                   justifyContent: 'space-between', | ||||
|                   alignItems: 'start', | ||||
|                 }, | ||||
|               }, | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     display: 'flex', | ||||
|                     flexDirection: viewStyle === 'grid' ? 'column' : 'row', | ||||
|                     alignItems: 'baseline', | ||||
|                     gap: '8px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 h('strong', { style: { fontSize: '20px' } }, entry.data.title), | ||||
|               ), | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     backgroundColor: entry.data.draft === true ? 'RoyalBlue' : 'green', | ||||
|                     color: 'white', | ||||
|                     border: 'none', | ||||
|                     padding: '4px 8px', | ||||
|                     textAlign: 'center', | ||||
|                     textDecoration: 'none', | ||||
|                     display: 'inline-block', | ||||
|                     cursor: 'pointer', | ||||
|                     borderRadius: '4px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 entry.data.draft === true ? 'Entwurf' : 'Öffentlich', | ||||
|               ), | ||||
|             ), | ||||
|           ), | ||||
|         ); | ||||
|       }; | ||||
|       const SmallCard = ({ entry, widgetFor, viewStyle }) => { | ||||
|         return h( | ||||
|           'div', | ||||
|           { style: { width: '100%', height: '100%' } }, | ||||
|           h( | ||||
|             'div', | ||||
|             { style: { padding: '16px', width: '100%' } }, | ||||
|             h( | ||||
|               'div', | ||||
|               { | ||||
|                 style: { | ||||
|                   display: 'flex', | ||||
|                   width: '100%', | ||||
|                   justifyContent: 'space-between', | ||||
|                   alignItems: 'start', | ||||
|                 }, | ||||
|               }, | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     display: 'flex', | ||||
|                     flexDirection: viewStyle === 'grid' ? 'column' : 'row', | ||||
|                     alignItems: 'baseline', | ||||
|                     gap: '8px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 h('strong', { style: { fontSize: '20px' } }, entry.data.title), | ||||
|               ), | ||||
|               h( | ||||
|                 'div', | ||||
|                 { | ||||
|                   style: { | ||||
|                     backgroundColor: entry.data.draft === true ? 'RoyalBlue' : 'green', | ||||
|                     color: 'white', | ||||
|                     border: 'none', | ||||
|                     padding: '4px 8px', | ||||
|                     textAlign: 'center', | ||||
|                     textDecoration: 'none', | ||||
|                     display: 'inline-block', | ||||
|                     cursor: 'pointer', | ||||
|                     borderRadius: '4px', | ||||
|                   }, | ||||
|                 }, | ||||
|                 entry.data.draft === true ? 'Entwurf' : 'Öffentlich', | ||||
|               ), | ||||
|             ), | ||||
|           ), | ||||
|         ); | ||||
|       }; | ||||
|        | ||||
|        | ||||
|       CMS.registerPreviewCard('blog', PostPreviewCard); | ||||
|       CMS.registerPreviewCard('ganztagsangebote', GenericCard);   | ||||
|       CMS.registerPreviewCard('wettbewerbe', GenericCard);  | ||||
|       CMS.registerPreviewCard('begabte', GenericCard);  | ||||
|       CMS.registerPreviewCard('abiturienten', NoCatCard); | ||||
|       CMS.registerPreviewCard('cantorfora', NoCatCard); | ||||
|       CMS.registerPreviewCard('blog-index', SmallCard); | ||||
|       CMS.registerPreviewCard('about-index', SmallCard); | ||||
|       CMS.registerPreviewCard('anmeldung-index', SmallCard); | ||||
|       CMS.registerPreviewCard('cantorpreis-index', SmallCard); | ||||
|       CMS.registerPreviewCard('contact-index', SmallCard);   | ||||
|       CMS.registerPreviewCard('event-index', SmallCard); | ||||
|       CMS.registerPreviewCard('forms-index', SmallCard); | ||||
|       CMS.registerPreviewCard('ganztagsangebote-index', SmallCard); | ||||
|       CMS.registerPreviewCard('wettbewerbe-index', SmallCard); | ||||
|       CMS.registerPreviewCard('begabte-index', SmallCard); | ||||
|       CMS.registerPreviewCard('pages', SmallCard); | ||||
|       CMS.registerPreviewCard('forms', SmallCard); | ||||
|       CMS.registerPreviewCard('schulchronik', SmallCard); | ||||
|     </script> | ||||
|   </body> | ||||
| </html> | ||||
|   | ||||
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/Biber.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 21 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/IJSO.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 8.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/IPhO.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 19 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/JuFo.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 22 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/Känguru.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 13 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/M_Logo.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 16 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/PhO.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 41 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/big-challenge.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 47 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/bwfs.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 20 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/chds.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 21 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/chemkids.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 28 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/dw.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 24 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/go4goal.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 19 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/icho.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/latein-wettbewerb.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 26 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/media/blog/mo.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 37 KiB |