- Added social icons
- Updated Schülerrat page - Improved CMS
							
								
								
									
										21
									
								
								config.toml
									
									
									
									
									
								
							
							
						
						| @@ -234,15 +234,20 @@ title = "YouTube" | ||||
| icon = "ti-youtube" # themify icon : https://themify.me/themify-icons | ||||
| link = "https://www.youtube.com/channel/UCHafBDI5qfK03RiIEyki9VA" | ||||
|  | ||||
| # [[params.social]] | ||||
| # title = "twitter" | ||||
| # icon = "ti-twitter-alt" # themify icon : https://themify.me/themify-icons | ||||
| # link = "#" | ||||
| [[params.social]] | ||||
| title = "twitter" | ||||
| icon = "ti-twitter-alt" # themify icon : https://themify.me/themify-icons | ||||
| link = "https://twitter.com" | ||||
|  | ||||
| # [[params.social]] | ||||
| # title = "instagram" | ||||
| # icon = "ti-instagram" # themify icon : https://themify.me/themify-icons | ||||
| # link = "#" | ||||
| [[params.social]] | ||||
| title = "instagram" | ||||
| icon = "ti-instagram" # themify icon : https://themify.me/themify-icons | ||||
| link = "https://instagram.com/cantor.news" | ||||
|  | ||||
| [[params.social]] | ||||
| title = "Facebook" | ||||
| icon = "ti-facebook" # themify icon : https://themify.me/themify-icons | ||||
| link = "https://facebook.com/srgcghalle" | ||||
|  | ||||
| [[params.social]] | ||||
| title = "github" | ||||
|   | ||||
| @@ -5,9 +5,11 @@ description: " " | ||||
| email: cantortechnik@protonmail.com | ||||
| image: /media/icon.png | ||||
| social: | ||||
|   - icon: ti-youtube | ||||
|   - title: YouTube | ||||
|     icon: ti-youtube | ||||
|     link: https://www.youtube.com/channel/UCFCJdxg2D9RXH0qjZ8MMw1g | ||||
|   - icon: ti-github | ||||
|   - title: GitHub | ||||
|     icon: ti-github | ||||
|     link: https://github.com/eesev9ie | ||||
| --- | ||||
| Wir sind eine AG am Georg-Cantor-Gymnasium, welche sich mit allen Themen rund um Digitalität am Georg-Cantor-Gymnasium beschäftigt.Desweiteren betreiben wird die Schulwebsite des GCG. | ||||
|   | ||||
| @@ -5,11 +5,13 @@ description: "" | ||||
| email: denys.konovalov@pm.me | ||||
| image: media/people/dkonovalov.png | ||||
| social: | ||||
|   - icon: ti-twitter-alt | ||||
|   - title: Twitter | ||||
|     icon: ti-twitter-alt | ||||
|     link: https://twitter.com/denyskon | ||||
|   - icon: ti-github | ||||
|   - title: GitHub   | ||||
|     icon: ti-github | ||||
|     link: https://github.com/lxdb | ||||
| --- | ||||
| Ich bin ein Schüler der 8. Klasse am Georg-Cantor-Gymnasium in Halle(Saale). | ||||
|  | ||||
| Als Hobbyprogrammierer und Leiter der Arbeitsgemeinschaft CantorTechnik leite ich viele Digitalisierungsprojekte wie MeinCantor oder das Repair Caf und betreue diese Internetseite. | ||||
| Als Hobbyprogrammierer und Leiter der Arbeitsgemeinschaft CantorTechnik leite ich viele Digitalisierungsprojekte wie MeinCantor oder das Repair Caf und betreue diese Internetseite. | ||||
|   | ||||
| @@ -18,7 +18,7 @@ Wir sind für alle Beschwerden und Vorhaben unserer Schüler zuständig, tragen | ||||
| ## Ansprechpartner | ||||
|  | ||||
| ### Hagen Häußler | ||||
| Schülersprecherin (Klasse 11) | ||||
| Schülersprecher (Klasse 11) | ||||
|  | ||||
| ### Elias Peschek | ||||
| Schülersprecher (Klasse 9) | ||||
|   | ||||
| @@ -4,291 +4,19 @@ backend: | ||||
|   branch: master | ||||
|   site_domain: eesev9ie.netlify.app | ||||
|  | ||||
|  | ||||
|  | ||||
| media_folder: "static/media" | ||||
| public_folder: "/media" | ||||
| site_url: https://eesev9ie.github.io | ||||
| display_url: https://eesev9ie.github.io | ||||
| logo_url: https://eesev9ie.github.io/media/logo_y.svg | ||||
| logo_url: /media/logo_y.svg | ||||
| locale: "de" | ||||
| publish_mode: editorial_workflow | ||||
|  | ||||
| collections: | ||||
|   - name: "author-de" # Used in routes, e.g., /admin/collections/blog | ||||
|     label: "Deutsch/Autor" # Used in the UI | ||||
|     folder: "content/german/author" # The path to the folder where the documents are stored | ||||
|     create: true # Allow users to create new documents in this collection | ||||
|     slug: "{{slug}}" # Filename template, e.g., YYYY-MM-DD-title.md | ||||
|     editor: | ||||
|      preview: false | ||||
|     media_folder: '/static/media/people' | ||||
|     public_folder: '/media/people' | ||||
|     fields: # The fields for each document, usually in front matter | ||||
|       - {label: "Name", name: "title", widget: "string"} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false} | ||||
|       - {label: "Gravatar-E-Mail", name: "email", widget: "string"} | ||||
|       - {label: "Foto", name: "image", widget: "image"} | ||||
|       - label: "Soz. Netzwerke/Kontaktdaten" | ||||
|         name: "social" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Symbol", name: "icon", widget: "string", hint: "Symbolname von https://themify.me/themify-icons"} | ||||
|           - {label: "Link", name: "link", widget: "string"} | ||||
|         required: false | ||||
|       - {label: "Beschreibung", name: "body", widget: "markdown"} | ||||
|   - name: "blog-de" | ||||
|     label: "Deutsh/Blogbeitrag" | ||||
|     folder: "content/german/blog" | ||||
|     filter: {field: "type", value: "post"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|      preview: false | ||||
|     media_folder: '/static/media/blog' | ||||
|     public_folder: '/media/blog' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Datum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false} | ||||
|       - {label: "Beitragsbild", name: "image", widget: "image", default: "/media/image.png"} | ||||
|       - label: "Beitragsautor" | ||||
|         name: "author" | ||||
|         widget: "relation" | ||||
|         collection: "author-de" | ||||
|         searchFields: ["title"] | ||||
|         valueField: "title" | ||||
|         displayFields: ["title"] | ||||
|       - label: "Kategorien" | ||||
|         name: "categories" | ||||
|         widget: "list" | ||||
|         required: false | ||||
|         field: {label: "Kategorie", name: "category", widget: "string"} | ||||
|       - label: "Tags" | ||||
|         name: "tags" | ||||
|         widget: "list" | ||||
|         required: false | ||||
|         field: {label: "Tag", name: "tag", widget: "string"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "post"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "teacher-de" | ||||
|     label: "Deutsch/Lehrer|AG-Leiter" | ||||
|     folder: "content/german/teacher" | ||||
|     filter: {field: "type", value: "teacher"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/teachers' | ||||
|     public_folder: '/media/teachers' | ||||
|     fields: | ||||
|       - {label: "Name", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/teachers/image.png", required: false} | ||||
|       - label: "Fachbereiche" | ||||
|         name: "courses" | ||||
|         widget: "list" | ||||
|         field: {label: "Fachbereich/Themenbereich", name: "course", widget: "string"} | ||||
|       - {label: "Beschreibung", name: "bio", widget: "text"} | ||||
|       - label: "Fächer/Arbeitsgemeinschaften" | ||||
|         name: "interest" | ||||
|         widget: "list" | ||||
|         field: {label: "Fach/AG", name: "interest", widget: "string"} | ||||
|       - label: "Kontaktdaten/Soz. Netzwerke" | ||||
|         name: "contact" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Name/Adresse/Telefonnummer", name: "name", widget: "string"} | ||||
|           - {label: "Symbol", name: "icon", widget: "string", hint: "Symbolname von https://themify.me/themify-icons"} | ||||
|           - {label: "Link", name: "link", widget: "string"} | ||||
|         required: false | ||||
|       - {label: "AG-Leiter", name: "clubs", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "teacher"} | ||||
|       - {label: "Formspree-Kontaktformular", name: "formspree_link", widget: "string", hint: "[Nur für AG-Leiter]Für ein Kontaktformular kann man sich auf der Website https://formspree.io registrieren und ein Formular erstellen.", required: false} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "events-de" | ||||
|     label: "Deutsch/Termine" | ||||
|     folder: "content/german/event" | ||||
|     filter: {field: "type", value: "event"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/events' | ||||
|     public_folder: '/media/events' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "publishDate", widget: "datetime"} | ||||
|       - {label: "Datum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Ort", name: "location", widget: "string", default: "Georg-Cantor-Gymnasium, Halle(Saale)"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "event"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "forms-de" | ||||
|     label: "Deutsch/Formulare|Vorlagen" | ||||
|     folder: "content/german/forms" | ||||
|     filter: {field: "type", value: "forms"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/forms' | ||||
|     public_folder: '/media/forms' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "forms"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "anmeldung-de" | ||||
|     label: "Deutsch/Anmeldung" | ||||
|     folder: "content/german/anmeldung" | ||||
|     filter: {field: "type", value: "anmeldung"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "anmeldung"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "cantorpreis-de" | ||||
|     label: "Deutsch/CantorPreis" | ||||
|     folder: "content/german/cantorpreis" | ||||
|     filter: {field: "type", value: "cantorpreis"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/cantorpreis' | ||||
|     public_folder: '/media/cantorpreis' | ||||
|     fields: | ||||
|       - {label: "Jahr", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Beschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Name", name: "name", widget: "string"} | ||||
|       - label: "Kontaktdaten/Soz. Netzwerke" | ||||
|         name: "contact" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Name/Adresse/Telefonnummer", name: "name", widget: "string"} | ||||
|           - {label: "Symbol", name: "icon", widget: "string", hint: "Symbolname von https://themify.me/themify-icons"} | ||||
|           - {label: "Link", name: "link", widget: "string"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "cantorpreis"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "ganztagsangebote-de" | ||||
|     label: "Deutsch/Ganztagsangebote" | ||||
|     folder: "content/german/ganztagsangebote" | ||||
|     filter: {field: "type", value: "ganztagsangebote"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/ganztagsangebote' | ||||
|     public_folder: '/media/ganztagsangebote' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Themenbereiche", name: "categories_ag", widget: "string"} | ||||
|       - label: "Leiter" | ||||
|         name: "teacher" | ||||
|         widget: "relation" | ||||
|         collection: "teacher-de" | ||||
|         searchFields: ["title"] | ||||
|         valueField: "title" | ||||
|         displayFields: ["title"] | ||||
|       - {label: "Dauer", name: "weekly", widget: "string"} | ||||
|       - {label: "Tag/Stunden", name: "duration", widget: "string"} | ||||
|       - {label: "Klassenstufen", name: "class", widget: "string"} | ||||
|       - {label: "Raum", name: "root", 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: "notice-de" | ||||
|     label: "Deutsch/Hinweise" | ||||
|     folder: "content/german/notice" | ||||
|     filter: {field: "type", value: "notice"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/notice' | ||||
|     public_folder: '/media/notice' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "notice"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "wettbewerbe-de" | ||||
|     label: "Deutsch/Wettbewerbe" | ||||
|     folder: "content/german/wettbewerbe" | ||||
|     filter: {field: "type", value: "wettbewerbe"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/contests' | ||||
|     public_folder: '/media/people/contests' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Fach", name: "category", widget: "string"} | ||||
|       - {label: "Klassenstufen", name: "class", widget: "string"} | ||||
|       - {label: "Website", name: "web_url", widget: "string"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "wettbewerbe"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "schulchronik" | ||||
|     label: "Deutsch/Schulchronik" | ||||
|     folder: "content/german/schulchronik" | ||||
|     filter: {field: "type", value: "schulchronik"} | ||||
|     create: true | ||||
|     #editor: | ||||
|       #preview: false | ||||
|     media_folder: '/static/media/schulchronik' | ||||
|     public_folder: '/media/schulchronik' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "schulchronik"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "abiturienten" | ||||
|     label: "Deutsch/Abiturienten" | ||||
|     folder: "content/german/abiturienten" | ||||
|     filter: {field: "type", value: "abiturienten"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/abiturienten' | ||||
|     public_folder: '/media/abiturienten' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Mehrere Bilder", name: "few", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "abiturienten"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "pages-de" | ||||
|     label: "Deutsch/Seiten" | ||||
|     label: "Statische Seiten" | ||||
|     editor: | ||||
|       preview: false | ||||
|     files: | ||||
| @@ -320,7 +48,7 @@ collections: | ||||
|           - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|           - {label: "Text", name: "body", widget: "markdown"} | ||||
|       - name: "cantorpreis-index" | ||||
|         label: "CantorPreis" | ||||
|         label: "Cantor-Preis" | ||||
|         file: "content/german/cantorpreis/_index.md" | ||||
|         fields: | ||||
|           - {label: "Titel", name: "title", widget: "string"} | ||||
| @@ -345,7 +73,7 @@ collections: | ||||
|           - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|           - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - name: "forms-index" | ||||
|         label: "Formulare|Vorlagen" | ||||
|         label: "Formulare und Vorlagen" | ||||
|         file: "content/german/forms/_index.md" | ||||
|         fields: | ||||
|           - {label: "Titel", name: "title", widget: "string"} | ||||
| @@ -379,7 +107,7 @@ collections: | ||||
|           - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|           - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - name: "teacher-index" | ||||
|         label: "Lehrer|AG-Leiter" | ||||
|         label: "Lehrer*innen und AG-Leiter*innen" | ||||
|         file: "content/german/teacher/_index.md" | ||||
|         fields: | ||||
|           - {label: "Titel", name: "title", widget: "string"} | ||||
| @@ -394,3 +122,338 @@ collections: | ||||
|           - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|           - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|           - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - name: "schuelerrat-index" | ||||
|         label: "Schülerrat" | ||||
|         file: "content/german/schuelerrat/_index.md" | ||||
|         fields: | ||||
|           - {label: "Titel", name: "title", widget: "string"} | ||||
|           - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|           - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|           - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|           - {label: "Text", name: "body", widget: "markdown", required: false} | ||||
|       - name: "schuelerrat-geschaeftsordnung" | ||||
|         label: "Geschäftsordnung Schülerrat" | ||||
|         file: "content/german/schuelerrat/geschaeftsordnung.md" | ||||
|         fields: | ||||
|           - {label: "Titel", name: "title", widget: "string"} | ||||
|           - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|           - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|           - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|           - {label: "Text", name: "body", widget: "markdown", required: false} | ||||
|   - name: "author-de" # Used in routes, e.g., /admin/collections/blog | ||||
|     label: "Autor*innen" # Used in the UI | ||||
|     folder: "content/german/author" # The path to the folder where the documents are stored | ||||
|     create: true # Allow users to create new documents in this collection | ||||
|     slug: "{{slug}}" # Filename template, e.g., YYYY-MM-DD-title.md | ||||
|     editor: | ||||
|      preview: false | ||||
|     media_folder: '/static/media/people' | ||||
|     public_folder: '/media/people' | ||||
|     fields: # The fields for each document, usually in front matter | ||||
|       - {label: "Name", name: "title", widget: "string"} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false} | ||||
|       - {label: "Gravatar-E-Mail", name: "email", widget: "string", required: false} | ||||
|       - {label: "Foto", name: "image", widget: "image"} | ||||
|       - label: "Kontaktdaten" | ||||
|         label_singular: " " | ||||
|         name: "social" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Titel", name: "title", widget: "string", required: false} | ||||
|           - label: "Symbol" | ||||
|             name: "icon" | ||||
|             widget: "select" | ||||
|             options: | ||||
|               - { label: "Flickr", value: "ti-flickr" } | ||||
|               - { label: "Tumblr", value: "ti-tumblr" } | ||||
|               - { label: "YouTube", value: "ti-youtube" } | ||||
|               - { label: "Twitter", value: "ti-twitter-alt" } | ||||
|               - { label: "Pinterest", value: "ti-pinterest" } | ||||
|               - { label: "GitHub", value: "ti-github" } | ||||
|               - { label: "StackOverflow", value: "ti-stack-overflow" } | ||||
|               - { label: "Vimeo", value: "ti-vimeo" } | ||||
|               - { label: "Instagram", value: "ti-instagram" } | ||||
|               - { label: "Facebook", value: "ti-facebook" } | ||||
|               - { label: "SoundCloud", value: "ti-soundcloud" } | ||||
|               - { label: "Reddit", value: "ti-reddit" } | ||||
|               - { label: "Skype", value: "ti-skype" } | ||||
|               - { label: "LinkedIn", value: "ti-linkedin" } | ||||
|               - { label: "E-Mail", value: "ti-email" } | ||||
|               - { label: "Sonstige", value: "ti-sharethis" } | ||||
|           - {label: "Link", name: "link", widget: "string"} | ||||
|         required: false | ||||
|       - {label: "Beschreibung", name: "body", widget: "markdown"} | ||||
|   - name: "blog-de" | ||||
|     label: "Blogbeitrag" | ||||
|     folder: "content/german/blog" | ||||
|     filter: {field: "type", value: "post"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|      preview: false | ||||
|     media_folder: '/static/media/blog' | ||||
|     public_folder: '/media/blog' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Datum", name: "date", widget: "datetime", date_format: "DD.MM.YYYY", time_format: "HH:mm"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", default: "", required: false} | ||||
|       - {label: "Beitragsbild", name: "image", widget: "image", default: "/media/image.png"} | ||||
|       - label: "Beitragsautor" | ||||
|         name: "author" | ||||
|         widget: "relation" | ||||
|         collection: "author-de" | ||||
|         search_fields: ["title"] | ||||
|         value_field: "title" | ||||
|         display_fields: ["title"] | ||||
|       - label: "Kategorien" | ||||
|         name: "categories" | ||||
|         widget: "list" | ||||
|         required: false | ||||
|         field: {label: "Kategorie", name: "category", widget: "string"} | ||||
|       - label: "Tags" | ||||
|         name: "tags" | ||||
|         widget: "list" | ||||
|         required: false | ||||
|         field: {label: "Tag", name: "tag", widget: "string"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "post"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "teacher-de" | ||||
|     label: "Lehrer*innen und AG-Leiter*innen" | ||||
|     folder: "content/german/teacher" | ||||
|     filter: {field: "type", value: "teacher"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/teachers' | ||||
|     public_folder: '/media/teachers' | ||||
|     fields: | ||||
|       - {label: "Name", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/teachers/image.png", required: false} | ||||
|       - label: "Fachbereiche" | ||||
|         name: "courses" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Fachbereich", name: "course", widget: "string"} | ||||
|       - {label: "Beschreibung", name: "bio", widget: "text"} | ||||
|       - label: "Fächer/Arbeitsgemeinschaften" | ||||
|         name: "interest" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Fach/AG", name: "interest", widget: "string"} | ||||
|       - label: "Kontaktdaten" | ||||
|         label_singular: " " | ||||
|         name: "contact" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Anzeigetitel", name: "name", widget: "string", required: false} | ||||
|           - label: "Symbol" | ||||
|             name: "icon" | ||||
|             widget: "select" | ||||
|             options: | ||||
|               - { label: "Flickr", value: "ti-flickr" } | ||||
|               - { label: "Tumblr", value: "ti-tumblr" } | ||||
|               - { label: "YouTube", value: "ti-youtube" } | ||||
|               - { label: "Twitter", value: "ti-twitter-alt" } | ||||
|               - { label: "Pinterest", value: "ti-pinterest" } | ||||
|               - { label: "GitHub", value: "ti-github" } | ||||
|               - { label: "StackOverflow", value: "ti-stack-overflow" } | ||||
|               - { label: "Vimeo", value: "ti-vimeo" } | ||||
|               - { label: "Instagram", value: "ti-instagram" } | ||||
|               - { label: "Facebook", value: "ti-facebook" } | ||||
|               - { label: "SoundCloud", value: "ti-soundcloud" } | ||||
|               - { label: "Reddit", value: "ti-reddit" } | ||||
|               - { label: "Skype", value: "ti-skype" } | ||||
|               - { label: "LinkedIn", value: "ti-linkedin" } | ||||
|               - { label: "E-Mail", value: "ti-email" } | ||||
|               - { label: "Sonstige", value: "ti-sharethis" } | ||||
|           - {label: "Link", name: "link", widget: "string"} | ||||
|         required: false | ||||
|       - {label: "AG-Leiter", name: "clubs", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "teacher"} | ||||
|       - {label: "Formspree-Kontaktformular", name: "formspree_link", widget: "string", hint: "[Nur für AG-Leiter]Für ein Kontaktformular kann man sich auf der Website https://formspree.io registrieren und ein Formular erstellen.", required: false} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "events-de" | ||||
|     label: "Termine" | ||||
|     folder: "content/german/event" | ||||
|     filter: {field: "type", value: "event"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/events' | ||||
|     public_folder: '/media/events' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "publishDate", widget: "datetime"} | ||||
|       - {label: "Datum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Ort", name: "location", widget: "string", default: "Georg-Cantor-Gymnasium, Halle(Saale)"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "event"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "forms-de" | ||||
|     label: "Formulare und Vorlagen" | ||||
|     folder: "content/german/forms" | ||||
|     filter: {field: "type", value: "forms"} | ||||
|     create: true | ||||
|     slug: "{{slug}}" | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/forms' | ||||
|     public_folder: '/media/forms' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "forms"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "anmeldung-de" | ||||
|     label: "Anmeldung" | ||||
|     folder: "content/german/anmeldung" | ||||
|     filter: {field: "type", value: "anmeldung"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "anmeldung"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "cantorpreis-de" | ||||
|     label: "Cantor-Preisträger" | ||||
|     folder: "content/german/cantorpreis" | ||||
|     filter: {field: "type", value: "cantorpreis"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/cantorpreis' | ||||
|     public_folder: '/media/cantorpreis' | ||||
|     fields: | ||||
|       - {label: "Jahr", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: false, required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Beschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Name", name: "name", widget: "string"} | ||||
|       - label: "Kontaktdaten/Soz. Netzwerke" | ||||
|         name: "contact" | ||||
|         widget: "list" | ||||
|         fields: | ||||
|           - {label: "Name/Adresse/Telefonnummer", name: "name", widget: "string"} | ||||
|           - {label: "Symbol", name: "icon", widget: "string", hint: "Symbolname von https://themify.me/themify-icons"} | ||||
|           - {label: "Link", name: "link", widget: "string"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "cantorpreis"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "ganztagsangebote-de" | ||||
|     label: "Ganztagsangebote" | ||||
|     folder: "content/german/ganztagsangebote" | ||||
|     filter: {field: "type", value: "ganztagsangebote"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/ganztagsangebote' | ||||
|     public_folder: '/media/ganztagsangebote' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Themenbereiche", name: "categories_ag", widget: "string"} | ||||
|       - label: "Leiter" | ||||
|         name: "teacher" | ||||
|         widget: "relation" | ||||
|         collection: "teacher-de" | ||||
|         search_fields: ["title"] | ||||
|         value_field: "title" | ||||
|         display_fields: ["title"] | ||||
|       - {label: "Dauer", name: "weekly", widget: "string"} | ||||
|       - {label: "Tag/Stunden", name: "duration", widget: "string"} | ||||
|       - {label: "Klassenstufen", name: "class", widget: "string"} | ||||
|       - {label: "Raum", name: "root", 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: "notice-de" | ||||
|     label: "Hinweise" | ||||
|     folder: "content/german/notice" | ||||
|     filter: {field: "type", value: "notice"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/notice' | ||||
|     public_folder: '/media/notice' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Veröffentlichungsdatum", name: "date", widget: "datetime"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "notice"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "wettbewerbe-de" | ||||
|     label: "Wettbewerbe" | ||||
|     folder: "content/german/wettbewerbe" | ||||
|     filter: {field: "type", value: "wettbewerbe"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/contests' | ||||
|     public_folder: '/media/people/contests' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Metabeschreibung", name: "description", widget: "text", required: false} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Fach", name: "category", widget: "string"} | ||||
|       - {label: "Klassenstufen", name: "class", widget: "string"} | ||||
|       - {label: "Website", name: "web_url", widget: "string"} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "wettbewerbe"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "schulchronik" | ||||
|     label: "Schulchronik" | ||||
|     folder: "content/german/schulchronik" | ||||
|     filter: {field: "type", value: "schulchronik"} | ||||
|     create: true | ||||
|     #editor: | ||||
|       #preview: false | ||||
|     media_folder: '/static/media/schulchronik' | ||||
|     public_folder: '/media/schulchronik' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "schulchronik"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   - name: "abiturienten" | ||||
|     label: "Abiturienten" | ||||
|     folder: "content/german/abiturienten" | ||||
|     filter: {field: "type", value: "abiturienten"} | ||||
|     create: true | ||||
|     editor: | ||||
|       preview: false | ||||
|     media_folder: '/static/media/abiturienten' | ||||
|     public_folder: '/media/abiturienten' | ||||
|     fields: | ||||
|       - {label: "Titel", name: "title", widget: "string"} | ||||
|       - {label: "Entwurf", name: "draft", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Hintergrundbild", name: "bg_image", widget: "hidden", default: "/media/backgrounds/page-title.png"} | ||||
|       - {label: "Bild", name: "image", widget: "image", default: "/media/image.png", required: false} | ||||
|       - {label: "Mehrere Bilder", name: "few", widget: "boolean", default: "false", required: false} | ||||
|       - {label: "Type", name: "type", widget: "hidden", default: "abiturienten"} | ||||
|       - {label: "Text", name: "body", widget: "markdown"} | ||||
|   | ||||
| @@ -3,13 +3,100 @@ | ||||
| <head> | ||||
|   <meta charset="utf-8" /> | ||||
|   <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | ||||
|   <title>GCG WebAdmin</title> | ||||
|   <title>GCG Website: Netlify CMS</title> | ||||
|  | ||||
|  | ||||
|   <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"> | ||||
|   <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png"> | ||||
|   <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png"> | ||||
|   <link rel="manifest" href="/site.webmanifest"> | ||||
|   <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#1a1a37"> | ||||
|   <meta name="msapplication-TileColor" content="#1a1a37"> | ||||
|   <meta name="msapplication-TileImage" content="/mstile-144x144.png"> | ||||
|   <meta name="theme-color" content="#1a1a37"> | ||||
|  | ||||
|  | ||||
| </head> | ||||
| <body> | ||||
|   <!-- Include the script that builds the page and powers Netlify CMS --> | ||||
|   <script src="https://unpkg.com/netlify-cms@^2.0.0/dist/netlify-cms.js"></script> | ||||
|   <script src="https://sharadcodes.github.io/hugo-shortcodes-netlify-cms/dist/hugo_shortcodes_netlify_cms.js"></script> | ||||
|   <script> | ||||
| CMS.registerEditorComponent({ | ||||
|   // Internal id of the component | ||||
|   id: "collapsible-note", | ||||
|   // Visible label | ||||
|   label: "Zugeklappter Abschnitt", | ||||
|   collapsed: true, | ||||
|   // Fields the user need to fill out when adding an instance of the component | ||||
|   fields: [ | ||||
|     { | ||||
|       name: 'summary', | ||||
|       label: 'Titel', | ||||
|       widget: 'string' | ||||
|     }, | ||||
|     { | ||||
|       name: 'details', | ||||
|       label: 'Inhalt', | ||||
|       widget: 'markdown' | ||||
|     } | ||||
|   ], | ||||
|   // Regex pattern used to search for instances of this block in the markdown document. | ||||
|   // Patterns are run in a multline environment (against the entire markdown document), | ||||
|   // and so generally should make use of the multiline flag (`m`). If you need to capture | ||||
|   // newlines in your capturing groups, you can either use something like | ||||
|   // `([\S\s]*)`, or you can additionally enable the "dot all" flag (`s`), | ||||
|   // which will cause `(.*)` to match newlines as well. | ||||
|   // | ||||
|   // Additionally, it's recommended that you use non-greedy capturing groups (e.g. | ||||
|   // `(.*?)` vs `(.*)`), especially if matching against newline characters. | ||||
|   pattern: /^{{% open-element title=\"(.*?)\" %}}$\s*?(.*?)\n^{{% \/open-element %}}$/ms, | ||||
|   // Given a RegExp Match object | ||||
|   // (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/match#return_value), | ||||
|   // return an object with one property for each field defined in `fields`. | ||||
|   // | ||||
|   // This is used to populate the custom widget in the markdown editor in the CMS. | ||||
|   fromBlock: function(match) { | ||||
|     return { | ||||
|       summary: match[1], | ||||
|       details: match[2] | ||||
|     }; | ||||
|   }, | ||||
|   // Given an object with one property for each field defined in `fields`, | ||||
|   // return the string you wish to be inserted into your markdown. | ||||
|   // | ||||
|   // This is used to serialize the data from the custom widget to the | ||||
|   // markdown document | ||||
|   toBlock: function(data) { | ||||
|     return ` | ||||
| {{% open-element title="${data.summary}" %}} | ||||
|  | ||||
| ${data.details} | ||||
|  | ||||
| {{% /open-element %}} | ||||
| `; | ||||
|   }, | ||||
|   // Preview output for this component. Can either be a string or a React component | ||||
|   // (component gives better render performance) | ||||
|   toPreview: function(data) { | ||||
|     return ` | ||||
|     <div class="container"> | ||||
|       <div class="card border-primary rounded-0 hover-shadow mb-5"> | ||||
|         <div class="card-body"> | ||||
|           <details> | ||||
|           <summary>${data.summary}</summary> | ||||
|           <div class="content"><p class="content"> | ||||
|           ${data.details} | ||||
|           </p></div> | ||||
|           </details> | ||||
|         </div> | ||||
|       </div> | ||||
|     </div> | ||||
| `; | ||||
|   } | ||||
| }); | ||||
| </script> | ||||
|   <!-- <script> | ||||
|   CMS.registerPreviewStyle("https://eesev9ie.github.io/style.css"); | ||||
|   CMS.registerEditorComponent({ | ||||
|     id: "gallery", | ||||
| @@ -33,6 +120,95 @@ | ||||
|         return `{{< gallery dir="${obj.dir}" />}}`; | ||||
|     }, | ||||
| }); | ||||
| </script> --> | ||||
| <script> | ||||
| CMS.registerEditorComponent({ | ||||
|     id: "gallery-dir", | ||||
|     label: "Gallerie", | ||||
|     fields: [{ | ||||
|         name: "dir", | ||||
|         label: "Ordner", | ||||
|         widget: "string" | ||||
|     }], | ||||
|     pattern: /{{< gallery dir=\"(.*?)\" \/>}}/, | ||||
|     fromBlock: function(match) { | ||||
|         return { | ||||
|             dir: match[1], | ||||
|         }; | ||||
|     }, | ||||
|     toBlock: function(obj) { | ||||
|         return `{{< gallery dir=\"${obj.dir}\" \/>}}`; | ||||
|     }, | ||||
|     toPreview: function(obj) { | ||||
|         return `{{< gallery dir=\"${obj.dir}\" \/>}}`; | ||||
|     }, | ||||
| }); | ||||
| </script> | ||||
| <script> | ||||
| CMS.registerEditorComponent({ | ||||
|     id: "gallery-script", | ||||
|     label: "Gallerie-Skript (Immer am Anfang hinzufügen)", | ||||
|     fields: [], | ||||
|     collapsed:true, | ||||
|     pattern: /{{< load-photoswipe >}}/, | ||||
|     fromBlock: function(match) { | ||||
|         return { | ||||
|         }; | ||||
|     }, | ||||
|     toBlock: function(obj) { | ||||
|         return `{{< load-photoswipe >}}`; | ||||
|     }, | ||||
|     toPreview: function(obj) { | ||||
|         return ``; | ||||
|     }, | ||||
| }); | ||||
| </script> | ||||
| <script> | ||||
| CMS.registerPreviewStyle("https://eesev9ie.github.io/plugins/bootstrap/bootstrap.min.css"); | ||||
| CMS.registerPreviewStyle("https://eesev9ie.github.io/plugins/slick/slick.css"); | ||||
| CMS.registerPreviewStyle("https://eesev9ie.github.io/plugins/animate/animate.css"); | ||||
| CMS.registerPreviewStyle("https://eesev9ie.github.io/plugins/venobox/venobox.css"); | ||||
| CMS.registerPreviewStyle("https://eesev9ie.github.io/plugins/themify-icons/themify-icons.css"); | ||||
| CMS.registerPreviewStyle("https://code.cdn.mozilla.net/fonts/fira.css"); | ||||
| CMS.registerPreviewStyle("https://eesev9ie.github.io/scss/style.css"); | ||||
| </script> | ||||
| <script> | ||||
| var PostPreview = createClass({ | ||||
|   render: function() { | ||||
|     var entry = this.props.entry; | ||||
|     var image = entry.getIn(['data', 'image']); | ||||
|     var bg = this.props.getAsset(image); | ||||
|     const divStyle = { | ||||
|       backgroundImage: 'url("/media/backgrounds/page-title.png"),url("/media/backgrounds/page-title.png")', | ||||
|     }; | ||||
|     return h('div', {}, | ||||
|               h('section', {"className": "page-title-section overlay", "style": divStyle}, | ||||
|                 h('div', {"className": "container"}, | ||||
|                   h('div', {"className": "col-md-8"}, | ||||
|                     h('ul', {"className": "list-inline custom-breadcrumb"}, | ||||
|                       h('li', {"className": "list-inline-item h1"}, | ||||
|                         h('a', {"className": "text-primary font-secondary", href: ""}, "Schulchronik")), | ||||
|                       h('li', {"className": "list-inline-item ha"}, | ||||
|                         h("i", {"className": "ti-angle-right text-white"})), | ||||
|                       h('li', {"className": "list-inline-item text-white h1 font-secondary"}, entry.getIn(['data', 'title'])) | ||||
|                     ) | ||||
|                   ) | ||||
|                 ) | ||||
|               ), | ||||
|               h('section', {"className": "section-sm"}, | ||||
|                 h('div', {"className": "container"}, | ||||
|                   h('div', {"className": "row"}, | ||||
|                     h('div', {"className": "col-12 mb-4"}, this.props.widgetFor('body')) | ||||
|                   ) | ||||
|                 ) | ||||
|               ) | ||||
|             ); | ||||
|   } | ||||
| }); | ||||
|  | ||||
| CMS.registerPreviewTemplate("schulchronik", PostPreview); | ||||
| </script> | ||||
| </body> | ||||
| </html> | ||||
|  | ||||
| <!-- src: bg.toString()}),--> | ||||
|   | ||||
							
								
								
									
										
											BIN
										
									
								
								static/android-chrome-192x192.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/android-chrome-512x512.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 34 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-114x114.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 3.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-120x120.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 3.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-144x144.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 4.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-152x152.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 4.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-180x180.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 5.8 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-57x57.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.5 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-60x60.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-72x72.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.8 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon-76x76.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/apple-touch-icon.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 5.8 KiB | 
							
								
								
									
										12
									
								
								static/browserconfig.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,12 @@ | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <browserconfig> | ||||
|     <msapplication> | ||||
|         <tile> | ||||
|             <square70x70logo src="/mstile-70x70.png"/> | ||||
|             <square150x150logo src="/mstile-150x150.png"/> | ||||
|             <square310x310logo src="/mstile-310x310.png"/> | ||||
|             <wide310x150logo src="/mstile-310x150.png"/> | ||||
|             <TileColor>#1a1a37</TileColor> | ||||
|         </tile> | ||||
|     </msapplication> | ||||
| </browserconfig> | ||||
							
								
								
									
										
											BIN
										
									
								
								static/favicon-16x16.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 873 B | 
							
								
								
									
										
											BIN
										
									
								
								static/favicon-32x32.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/favicon.ico
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 15 KiB | 
| Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 109 KiB | 
| @@ -1 +1,88 @@ | ||||
| <svg xmlns="http://www.w3.org/2000/svg" xmlns:svg="http://www.w3.org/2000/svg" id="svg8" width="6550.091" height="500mm" version="1.1" viewBox="0 0 1733.045 500"><defs id="defs2"><rect id="rect101" width="1231.018" height="630.593" x="-576.462" y="149.707"/></defs><metadata id="metadata5"/><g id="layer1" transform="translate(1042.643,-148.59066)"><path id="path94" d="m -800.20189,148.59075 c -15.66268,0.005 -30.93737,0.32979 -35.92752,0.97152 -24.97802,3.21209 -46.06623,10.40832 -71.03494,24.24038 -39.97029,22.14261 -74.9122,57.98028 -99.47355,102.02323 -30.8652,55.34705 -42.151,113.50098 -32.8321,169.17882 5.8702,35.07216 16.8579,61.17871 40.68799,96.67317 7.95457,11.84812 11.84213,16.78099 24.46931,31.04978 14.63989,16.54318 27.57386,28.10203 42.20104,37.7145 28.86973,18.97219 57.71137,30.08127 95.58848,36.81738 v 10e-4 c 5.82412,1.03579 11.34034,1.26458 31.88746,1.32448 29.27973,0.0855 41.98501,-0.79986 60.14103,-4.19251 28.56955,-5.3386 57.43662,-16.77149 86.12757,-34.11008 33.44712,-20.21282 61.80706,-48.4681 81.46479,-81.16454 2.61834,-4.35506 4.64965,-8.00301 4.51392,-8.10649 -1.17086,-0.89357 -95.91117,-53.61068 -96.34604,-53.61068 -0.31474,0 -1.29111,1.27902 -2.16939,2.84169 -6.00422,10.68316 -23.40278,29.78738 -34.7033,38.10569 -38.44099,28.29642 -85.40586,35.86808 -129.74092,20.91759 -44.55018,-15.02312 -79.25266,-52.35019 -90.71746,-97.57855 -3.25589,-12.8444 -4.07642,-19.7718 -4.10362,-34.62114 -0.0427,-24.05789 4.0303,-42.064 14.11128,-62.38792 23.94487,-48.27458 71.92399,-78.04898 125.76906,-78.04898 37.71851,0 72.5558,14.34737 98.97588,40.76237 7.22351,7.22214 17.36655,20.0891 21.37491,27.11514 1.14192,2.00157 2.27232,3.55695 2.51201,3.45663 0.23966,-0.1005 21.42683,-11.94867 47.08239,-26.32914 30.23246,-16.94596 46.47755,-26.42693 46.16617,-26.94409 -15.24453,-25.3227 -37.5117,-51.05103 -60.39477,-69.78282 -19.53739,-15.99307 -45.92463,-31.3187 -70.29079,-40.8249 -21.82173,-8.51359 -38.29612,-12.71106 -57.08179,-14.54278 -6.5434,-0.63855 -22.59441,-0.95366 -38.2571,-0.94878 z m 71.03339,248.12387 c -33.16717,0 -60.11718,0.18715 -59.88884,0.41548 0.22842,0.22842 27.12928,15.96042 59.77929,34.95962 32.65006,18.9992 59.59962,34.55902 59.88834,34.57722 0.28884,0.0183 0.52504,-15.7137 0.52504,-34.95962 v -34.9927 z" style="fill:#ffbc3b;fill-opacity:1;stroke-width:.699855"/><text id="text99" transform="matrix(1.3592448,0,0,1.3592448,227.35348,-182.72846)" xml:space="preserve" style="font-style:normal;font-weight:400;font-size:499.798px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect101);fill:#ffbc3b;fill-opacity:1;stroke:none"><tspan x="-576.463" y="601.608"><tspan style="font-style:normal;font-variant:normal;font-weight:900;font-stretch:normal;font-family:'Fira Sans';-inkscape-font-specification:'Fira Sans Heavy';shape-inside:url(#rect101);fill:#ffbc3b;fill-opacity:1">GCG</tspan></tspan></text></g></svg> | ||||
| <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||
| <svg | ||||
|    id="svg8" | ||||
|    width="1289.4308mm" | ||||
|    height="500mm" | ||||
|    version="1.1" | ||||
|    viewBox="0 0 1289.4309 500" | ||||
|    sodipodi:docname="logo_y.svg" | ||||
|    inkscape:version="1.1 (c68e22c387, 2021-05-23)" | ||||
|    inkscape:export-filename="/home/denys/github/gcg-website-0/static/media/logo.png" | ||||
|    inkscape:export-xdpi="4.3730927" | ||||
|    inkscape:export-ydpi="4.3730927" | ||||
|    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" | ||||
|    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" | ||||
|    xmlns="http://www.w3.org/2000/svg" | ||||
|    xmlns:svg="http://www.w3.org/2000/svg" | ||||
|    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | ||||
|    xmlns:cc="http://creativecommons.org/ns#" | ||||
|    xmlns:dc="http://purl.org/dc/elements/1.1/"> | ||||
|   <sodipodi:namedview | ||||
|      fit-margin-bottom="0" | ||||
|      fit-margin-right="0" | ||||
|      fit-margin-left="0" | ||||
|      fit-margin-top="0" | ||||
|      inkscape:document-rotation="0" | ||||
|      pagecolor="#ffffff" | ||||
|      bordercolor="#666666" | ||||
|      borderopacity="1" | ||||
|      objecttolerance="10" | ||||
|      gridtolerance="10" | ||||
|      guidetolerance="10" | ||||
|      inkscape:pageopacity="0" | ||||
|      inkscape:pageshadow="2" | ||||
|      inkscape:window-width="1373" | ||||
|      inkscape:window-height="964" | ||||
|      id="namedview13" | ||||
|      showgrid="false" | ||||
|      inkscape:zoom="0.09915893" | ||||
|      inkscape:cx="4336.4728" | ||||
|      inkscape:cy="1265.645" | ||||
|      inkscape:window-x="26" | ||||
|      inkscape:window-y="23" | ||||
|      inkscape:window-maximized="0" | ||||
|      inkscape:current-layer="layer1" | ||||
|      inkscape:pagecheckerboard="0" | ||||
|      inkscape:document-units="mm" /> | ||||
|   <defs | ||||
|      id="defs2"> | ||||
|     <rect | ||||
|        id="rect101" | ||||
|        width="1231.0179" | ||||
|        height="630.59302" | ||||
|        x="-576.46198" | ||||
|        y="149.707" /> | ||||
|   </defs> | ||||
|   <metadata | ||||
|      id="metadata5"> | ||||
|     <rdf:RDF> | ||||
|       <cc:Work | ||||
|          rdf:about=""> | ||||
|         <dc:format>image/svg+xml</dc:format> | ||||
|         <dc:type | ||||
|            rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> | ||||
|       </cc:Work> | ||||
|     </rdf:RDF> | ||||
|   </metadata> | ||||
|   <g | ||||
|      id="layer1" | ||||
|      transform="translate(1042.643,-148.59066)" | ||||
|      inkscape:export-filename="/home/denys/GCG/Moodle/GCG Logo.png" | ||||
|      inkscape:export-xdpi="14.6812" | ||||
|      inkscape:export-ydpi="14.6812"> | ||||
|     <path | ||||
|        style="fill:#ffbc38;fill-opacity:1;stroke-width:0.699855" | ||||
|        id="path94" | ||||
|        d="m -800.20189,148.59075 c -15.66268,0.005 -30.93737,0.32979 -35.92752,0.97152 -24.97802,3.21209 -46.06623,10.40832 -71.03494,24.24038 -39.97029,22.14261 -74.9122,57.98028 -99.47355,102.02323 -30.8652,55.34705 -42.151,113.50098 -32.8321,169.17882 5.8702,35.07216 16.8579,61.17871 40.68799,96.67317 7.95457,11.84812 11.84213,16.78099 24.46931,31.04978 14.63989,16.54318 27.57386,28.10203 42.20104,37.7145 28.86973,18.97219 57.71137,30.08127 95.58848,36.81738 v 10e-4 c 5.82412,1.03579 11.34034,1.26458 31.88746,1.32448 29.27973,0.0855 41.98501,-0.79986 60.14103,-4.19251 28.56955,-5.3386 57.43662,-16.77149 86.12757,-34.11008 33.44712,-20.21282 61.80706,-48.4681 81.46479,-81.16454 2.61834,-4.35506 4.64965,-8.00301 4.51392,-8.10649 -1.17086,-0.89357 -95.91117,-53.61068 -96.34604,-53.61068 -0.31474,0 -1.29111,1.27902 -2.16939,2.84169 -6.00422,10.68316 -23.40278,29.78738 -34.7033,38.10569 -38.44099,28.29642 -85.40586,35.86808 -129.74092,20.91759 -44.55018,-15.02312 -79.25266,-52.35019 -90.71746,-97.57855 -3.25589,-12.8444 -4.07642,-19.7718 -4.10362,-34.62114 -0.0427,-24.05789 4.0303,-42.064 14.11128,-62.38792 23.94487,-48.27458 71.92399,-78.04898 125.76906,-78.04898 37.71851,0 72.5558,14.34737 98.97588,40.76237 7.22351,7.22214 17.36655,20.0891 21.37491,27.11514 1.14192,2.00157 2.27232,3.55695 2.51201,3.45663 0.23966,-0.1005 21.42683,-11.94867 47.08239,-26.32914 30.23246,-16.94596 46.47755,-26.42693 46.16617,-26.94409 -15.24453,-25.3227 -37.5117,-51.05103 -60.39477,-69.78282 -19.53739,-15.99307 -45.92463,-31.3187 -70.29079,-40.8249 -21.82173,-8.51359 -38.29612,-12.71106 -57.08179,-14.54278 -6.5434,-0.63855 -22.59441,-0.95366 -38.2571,-0.94878 z m 71.03339,248.12387 c -33.16717,0 -60.11718,0.18715 -59.88884,0.41548 0.22842,0.22842 27.12928,15.96042 59.77929,34.95962 32.65006,18.9992 59.59962,34.55902 59.88834,34.57722 0.28884,0.0183 0.52504,-15.7137 0.52504,-34.95962 v -34.9927 z" /> | ||||
|     <text | ||||
|        style="font-style:normal;font-weight:400;font-size:499.798px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect101);fill:#ffbc38;fill-opacity:1;stroke:none" | ||||
|        id="text99" | ||||
|        transform="matrix(1.3592448,0,0,1.3592448,227.35348,-182.72846)" | ||||
|        xml:space="preserve"><tspan | ||||
|          x="-576.46289" | ||||
|          y="601.60773" | ||||
|          id="tspan901"><tspan | ||||
|            style="font-weight:900;font-family:'Fira Sans';-inkscape-font-specification:'Fira Sans Heavy';shape-inside:url(#rect101)" | ||||
|            id="tspan899">CG</tspan></tspan></text> | ||||
|   </g> | ||||
| </svg> | ||||
|   | ||||
| Before Width: | Height: | Size: 2.8 KiB After Width: | Height: | Size: 4.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/mstile-144x144.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 8.1 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/mstile-150x150.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 8.1 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/mstile-310x150.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 8.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/mstile-310x310.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 18 KiB | 
							
								
								
									
										
											BIN
										
									
								
								static/mstile-70x70.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 5.7 KiB | 
							
								
								
									
										28
									
								
								static/safari-pinned-tab.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,28 @@ | ||||
| <?xml version="1.0" standalone="no"?> | ||||
| <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" | ||||
|  "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> | ||||
| <svg version="1.0" xmlns="http://www.w3.org/2000/svg" | ||||
|  width="1024.000000pt" height="1024.000000pt" viewBox="0 0 1024.000000 1024.000000" | ||||
|  preserveAspectRatio="xMidYMid meet"> | ||||
| <metadata> | ||||
| Created by potrace 1.14, written by Peter Selinger 2001-2017 | ||||
| </metadata> | ||||
| <g transform="translate(0.000000,1024.000000) scale(0.100000,-0.100000)" | ||||
| fill="#000000" stroke="none"> | ||||
| <path d="M4785 10229 c-1357 -91 -2619 -715 -3515 -1736 -1217 -1387 -1593 | ||||
| -3333 -979 -5073 801 -2269 3073 -3675 5460 -3380 1419 176 2700 939 3533 | ||||
| 2103 496 693 812 1506 916 2351 121 990 -46 1982 -485 2881 -757 1549 -2256 | ||||
| 2615 -3969 2825 -315 39 -663 49 -961 29z m795 -1298 c485 -63 930 -205 1351 | ||||
| -431 166 -89 438 -269 584 -387 222 -179 497 -465 669 -696 85 -115 220 -317 | ||||
| 250 -374 l16 -32 -67 -39 c-110 -64 -1199 -674 -1305 -731 l-97 -52 -54 83 | ||||
| c-347 535 -885 888 -1497 982 -779 119 -1568 -200 -2051 -830 -354 -461 -506 | ||||
| -1077 -409 -1659 86 -517 364 -994 772 -1324 338 -273 751 -438 1180 -472 728 | ||||
| -58 1419 243 1875 817 77 98 173 241 173 260 0 5 -392 236 -871 514 -479 278 | ||||
| -894 520 -922 537 l-52 33 928 0 927 0 0 -537 0 -538 38 -21 c118 -65 1308 | ||||
| -733 1365 -767 l67 -40 -31 -56 c-55 -98 -207 -315 -317 -453 -122 -153 -433 | ||||
| -468 -572 -579 -555 -445 -1155 -708 -1870 -820 -153 -24 -546 -43 -735 -36 | ||||
| -372 15 -850 116 -1200 254 -658 260 -1196 658 -1640 1213 -421 526 -726 1270 | ||||
| -794 1939 -14 128 -14 696 -1 852 12 142 65 412 120 614 139 502 394 994 723 | ||||
| 1395 192 234 523 541 772 716 556 392 1271 645 1930 684 220 13 567 4 745 -19z"/> | ||||
| </g> | ||||
| </svg> | ||||
| After Width: | Height: | Size: 1.6 KiB | 
							
								
								
									
										18
									
								
								static/site.webmanifest
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | ||||
| { | ||||
|     "name": "Georg-Cantor-Gymnasium", | ||||
|     "short_name": "Georg-Cantor-Gymnasium", | ||||
|     "icons": [ | ||||
|         { | ||||
|             "src": "/android-chrome-192x192.png", | ||||
|             "sizes": "192x192", | ||||
|             "type": "image/png" | ||||
|         }, | ||||
|         { | ||||
|             "src": "/android-chrome-512x512.png", | ||||
|             "sizes": "512x512", | ||||
|             "type": "image/png" | ||||
|         } | ||||
|     ], | ||||
|     "theme_color": "#1a1a37", | ||||
|     "background_color": "#1a1a37" | ||||
| } | ||||