441 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			441 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <!doctype html>
 | |
| <html>
 | |
| <head>
 | |
|   <meta charset="utf-8" />
 | |
|   <meta name="viewport" content="width=device-width, initial-scale=1.0" />
 | |
|   <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>
 | |
|   <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({
 | |
|   id: "collapsible-note",
 | |
|   label: "Zugeklappter Abschnitt",
 | |
|   collapsed: true,
 | |
|   fields: [
 | |
|     {
 | |
|       name: 'summary',
 | |
|       label: 'Titel',
 | |
|       widget: 'string'
 | |
|     },
 | |
|     {
 | |
|       name: 'details',
 | |
|       label: 'Inhalt',
 | |
|       widget: 'markdown'
 | |
|     }
 | |
|   ],
 | |
| 
 | |
|   pattern: /^{{% collapsible  title=\"(.*?)\" %}}$\s*?(.*?)\n^{{% \/collapsible %}}$/ms,
 | |
|   fromBlock: function(match) {
 | |
|     return {
 | |
|       summary: match[1],
 | |
|       details: match[2]
 | |
|     };
 | |
|   },
 | |
|   toBlock: function(data) {
 | |
|     return `
 | |
| {{% collapsible  title="${data.summary}" %}}
 | |
| 
 | |
| ${data.details}
 | |
| 
 | |
| {{% /collapsible %}}
 | |
| `;
 | |
|   },
 | |
|   toPreview: function(data) {
 | |
|     return `
 | |
|     <div class="container mb-0">
 | |
|       <div class="card border-primary rounded-0 hover-shadow mb-5">
 | |
|         <div class="card-body mb-0">
 | |
|           <details class="mb-0">
 | |
|           <summary class="mb-0">${data.summary}</summary>
 | |
|           <div class="content"><p class="content">${data.details}</p></div>
 | |
|           </details>
 | |
|         </div>
 | |
|       </div>
 | |
|     </div>
 | |
| `;
 | |
|   }
 | |
| });
 | |
| </script>
 | |
| <script>
 | |
| CMS.registerEditorComponent({
 | |
| id: "content",
 | |
| label: "\"content\"-Tag",
 | |
| collapsed: false,
 | |
| fields: [
 | |
|   {
 | |
|     name: 'details',
 | |
|     label: 'Inhalt',
 | |
|     widget: 'markdown'
 | |
|   }
 | |
| ],
 | |
| 
 | |
| pattern: /^{{% content %}}$\s*?(.*?)\n^{{% \/content %}}$/ms,
 | |
| fromBlock: function(match) {
 | |
|   return {
 | |
|     details: match[1]
 | |
|   };
 | |
| },
 | |
| toBlock: function(data) {
 | |
|   return `
 | |
| {{% content %}}
 | |
| 
 | |
| ${data.details}
 | |
| 
 | |
| {{% /content %}}
 | |
| `;
 | |
| },
 | |
| toPreview: function(data) {
 | |
|   return `
 | |
|   <div class="content">
 | |
|     ${data.details}
 | |
|   </div>
 | |
| `;
 | |
| }
 | |
| });
 | |
| </script>
 | |
| <script>
 | |
| CMS.registerEditorComponent({
 | |
| id: "card",
 | |
| label: "Link-Karte",
 | |
| collapsed: false,
 | |
| fields: [
 | |
|   {
 | |
|     name: 'link',
 | |
|     label: 'Link',
 | |
|     widget: 'string'
 | |
|   },
 | |
|   {
 | |
|     name: 'title',
 | |
|     label: 'Bezeichnung',
 | |
|     widget: 'string'
 | |
|   }
 | |
| ],
 | |
| 
 | |
| pattern: /^{{< card link=\"(.*?)\" title=\"(.*?)\" >}}/,
 | |
| fromBlock: function(match) {
 | |
|   return {
 | |
|     link: match[1],
 | |
|     title: match[2]
 | |
|   };
 | |
| },
 | |
| toBlock: function(data) {
 | |
|   return `
 | |
| {{< card link="${data.link}" title="${data.title}" >}}
 | |
| `;
 | |
| },
 | |
| toPreview: function(data) {
 | |
|   return `
 | |
|   <div class="container mb-0">
 | |
|     <div class="card border-primary rounded-0 hover-shadow mb-5">
 | |
|       <div class="card-body mb-0">
 | |
|         <h4 class="card-title"><a class="text-decoration-none" href='${data.link}'>${data.title}</a></h4>
 | |
|         <a href='${data.link}' class="mb-0 btn btn-primary btn-sm text-decoration-none">{{ i18n "show_more"}}</a>
 | |
|       </div>
 | |
|     </div>
 | |
|   </div>
 | |
| 
 | |
| `;
 | |
| }
 | |
| });
 | |
| </script>
 | |
|   <!-- <script>
 | |
|   CMS.registerPreviewStyle("https://eesev9ie.github.io/style.css");
 | |
|   CMS.registerEditorComponent({
 | |
|     id: "gallery",
 | |
|     label: "Bildergallerie",
 | |
|     fields: [{
 | |
|             name: "dir",
 | |
|             label: "Ordner",
 | |
|             widget: "string"
 | |
|         },
 | |
|     ],
 | |
|     pattern: /{{< gallery dir="([a-zA-Z0-9]+)" />}}/,
 | |
|     fromBlock: function(match) {
 | |
|         return {
 | |
|             username: dir[1],
 | |
|         };
 | |
|     },
 | |
|     toBlock: function(obj) {
 | |
|         return `{{< gallery dir="${obj.dir}" />}}`;
 | |
|     },
 | |
|     toPreview: function(obj) {
 | |
|         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.registerPreviewStyle("https://neu.cantorgymnasium.de/plugins/bootstrap/bootstrap.min.css");
 | |
| CMS.registerPreviewStyle("https://neu.cantorgymnasium.de/plugins/slick/slick.css");
 | |
| CMS.registerPreviewStyle("https://neu.cantorgymnasium.de/plugins/animate/animate.css");
 | |
| CMS.registerPreviewStyle("https://neu.cantorgymnasium.de/plugins/venobox/venobox.css");
 | |
| CMS.registerPreviewStyle("https://neu.cantorgymnasium.de/plugins/fontawesome/css/all.css");
 | |
| CMS.registerPreviewStyle("https://neu.cantorgymnasium.de/plugins/fira/fira.css");
 | |
| CMS.registerPreviewStyle("https://neu.cantorgymnasium.de/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": "fa-solid fa-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);
 | |
| CMS.registerPreviewTemplate("schuelerrat-index", PostPreview);
 | |
| 
 | |
| </script>
 | |
| <script>
 | |
| var PostPreviewContent = 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": "fa-solid fa-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"},
 | |
|                       h('div', {"className": "content"}, this.props.widgetFor('body'))
 | |
|                     )
 | |
|                   )
 | |
|                 )
 | |
|               )
 | |
|             );
 | |
|   }
 | |
| });
 | |
| 
 | |
| CMS.registerPreviewTemplate("anmeldung-index", PostPreviewContent);
 | |
| CMS.registerPreviewTemplate("impressum", PostPreviewContent);
 | |
| CMS.registerPreviewTemplate("schuelerrat-geschaeftsordnung", PostPreviewContent);
 | |
| 
 | |
| </script>
 | |
| <script>
 | |
| var EventPreview = 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": "row"},
 | |
|                   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: ""}, "Startseite")
 | |
|                         ),
 | |
|                         h('li', {"className": "list-inline-item ha"},
 | |
|                           h("i", {"className": "fa-solid fa-angle-right text-white"})
 | |
|                         ),
 | |
|                         h('li', {"className": "list-inline-item text-white h1 font-secondary"}, entry.getIn(['data', 'title'])
 | |
|                         )
 | |
|                       ),
 | |
|                       h('p', {"className": "text-lighten"}, entry.getIn(['data', 'description']))
 | |
|                     )
 | |
|                   )
 | |
|                 )
 | |
|               ),
 | |
|               h('section', {"className": "section"},
 | |
|                 h('div', {"className": "container"},
 | |
|                   h('div', {"className": "row"},
 | |
|                     h('div', {"className": "col-12 "},
 | |
|                       h('ul', {"className": "list-unstyled"},
 | |
|                         this.props.widgetsFor('events').map(function(event, index) {
 | |
|                           return h('li', {"className": "d-md-table mb-4 w-100 border-bottom hover-shadow"},
 | |
|                             h('div', {"className": "d-md-table-cell text-center p-4 bg-primary text-white mb-4 mb-md-0"},
 | |
|                                 h('span', {"className": "h2 d-block"}, new Intl.DateTimeFormat('de-De', { day: 'numeric'}).format(event.getIn(['data', 'date']))),
 | |
|                                 new Intl.DateTimeFormat('de-De', { month: 'short', year: 'numeric' }).format(event.getIn(['data', 'date']))
 | |
|                             ),
 | |
|                             h('div', {"className": "d-md-table-cell px-4 vertical-alighn-middle mb-4 mb-md-0"},
 | |
|                               h('p', {"className": "h4 mb-3 d-block"}, event.getIn(['data', 'title'])),
 | |
|                               h('p', {"className": "mb-0"}, event.getIn(['data', 'summary']))
 | |
|                             ),
 | |
|                             h('div', {"className": "d-md-table-cell text-right pr-0 pr-md-4"},
 | |
|                               h('p', {},
 | |
|                                 h('i', {"className": "fa-solid fa-location-dot text-primary mr-2"}),
 | |
|                                 event.getIn(['data', 'location'])
 | |
|                               )
 | |
|                             )
 | |
|                           );
 | |
|                         })
 | |
|                       )
 | |
|                     )
 | |
|                   )
 | |
|                 )
 | |
|               )
 | |
|             );
 | |
|   }
 | |
| });
 | |
| 
 | |
| CMS.registerPreviewTemplate("event-index", EventPreview);
 | |
| 
 | |
| </script>
 | |
| <script>
 | |
| var PagePreview = 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": "row"},
 | |
|                   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: ""}, "Startseite")
 | |
|                         ),
 | |
|                         h('li', {"className": "list-inline-item ha"},
 | |
|                           h("i", {"className": "fa-solid fa-angle-right text-white"})
 | |
|                         ),
 | |
|                         h('li', {"className": "list-inline-item text-white h1 font-secondary"}, entry.getIn(['data', 'title'])
 | |
|                         )
 | |
|                       ),
 | |
|                       h('p', {"className": "text-lighten"}, entry.getIn(['data', 'description']))
 | |
|                     )
 | |
|                   )
 | |
|                 )
 | |
|               )
 | |
|             );
 | |
|   }
 | |
| });
 | |
| 
 | |
| CMS.registerPreviewTemplate("blog-index", PagePreview);
 | |
| CMS.registerPreviewTemplate("cantorpreis-index", PagePreview);
 | |
| CMS.registerPreviewTemplate("contact-index", PagePreview);
 | |
| CMS.registerPreviewTemplate("forms-index", PagePreview);
 | |
| CMS.registerPreviewTemplate("ganztagsangebote-index", PagePreview);
 | |
| CMS.registerPreviewTemplate("wettbewerbe-index", PagePreview);
 | |
| 
 | |
| </script>
 | |
| <script>
 | |
| var PagePreviewImage = 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": "row"},
 | |
|                   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: ""}, "Startseite")
 | |
|                         ),
 | |
|                         h('li', {"className": "list-inline-item ha"},
 | |
|                           h("i", {"className": "fa-solid fa-angle-right text-white"})
 | |
|                         ),
 | |
|                         h('li', {"className": "list-inline-item text-white h1 font-secondary"}, entry.getIn(['data', 'title'])
 | |
|                         )
 | |
|                       ),
 | |
|                       h('p', {"className": "text-lighten"}, entry.getIn(['data', 'description']))
 | |
|                     )
 | |
|                   )
 | |
|                 )
 | |
|               ),
 | |
|               h('section', {"className": "section-sm"},
 | |
|                 h('div', {"className": "container"},
 | |
|                   h('div', {"className": "row"},
 | |
|                     h('div', {"className": "col-12 mb-4"},
 | |
|                     h('img', {"className": "img-fluid w-100 mb-4", src: bg.toString(), alt: "about image"}),
 | |
|                     this.props.widgetFor('body'))
 | |
|                   )
 | |
|                 )
 | |
|               )
 | |
|             );
 | |
|   }
 | |
| });
 | |
| 
 | |
| CMS.registerPreviewTemplate("about-index", PagePreviewImage);
 | |
| 
 | |
| </script>
 | |
| </body>
 | |
| </html>
 |