diff --git a/_layouts/wartung.html b/_layouts/wartung.html new file mode 100644 index 0000000000000000000000000000000000000000..eadbeb1f713acdc4fc4c59c5ad3be09c80538f32 --- /dev/null +++ b/_layouts/wartung.html @@ -0,0 +1,83 @@ +--- +layout: default +--- + +{% include site-header.html %} + +<main class="main container"> + <div class="content-up"> + <article class="article--page typeset"> + <h1>Wartungsankündigungen für die Chaotikum Infra</h1> + + Die Chaotikum Infrastruktur beinhaltet verschiedene Server, Container und Software. Diese Liste ist nicht unbedingt vollständig. + <ul> + {% for component in site.inventory -%} + {% if component.layout == 'infra' -%} + {% if component.parent == nil -%} + <li> <b>{{component.name }}</b> + {% assign children = site.inventory | where_exp: "c", "c.parent == component.uid" -%} + <ul> + {% for child in children -%} + <li style="margin-left:50px;"><b>{{child.name }} + {% assign grandchildren = site.inventory | where_exp: "g", "g.parent == child.uid" -%} + <ul> + {% for gc in grandchildren -%} + <li style="margin-left:80px;"><b>{{gc.name }} + {% endfor -%} + </ul> + {% endfor -%} + </ul> + {% endif -%} + {% endif -%} + {% endfor -%} + </ul> + </article> + <div id="calendar"></div> + {{ content }} + </div> +</main> + +{% include site-footer.html %} + +<script src='{{ site.url }}/assets/fullcalendar/moment.min.js'></script> + <script src='{{ site.url }}/assets/fullcalendar/jquery.min.js'></script> + <script src='{{ site.url }}/assets/fullcalendar/ical.min.js'></script> + <script src='{{ site.url }}/assets/fullcalendar/fullcalendar.min.js'></script> + <script src='{{ site.url }}/assets/fullcalendar/de.js'></script> +<script> +$(document).ready(function() { + $('#calendar').fullCalendar({ + header: { + left: 'prev,next today', + center: 'title', + right: 'month,agendaWeek,agendaDay,listMonth' + }, + eventLimit: true, // allow "more" link when too many events + locale: "de", + navLinks: true, + }); + $.get('{{ site.url }}/maintenance.ics', function (res) { + var events = [] + var parsed = ICAL.parse(res); + parsed[2].forEach(function(event) { + if (event[0] !== 'vevent') return + var data = {}; + event[1].forEach(function(item){ + data[item[0]] = item[3]; + }); + events.push({ + title: data["summary"], + start: data["dtstart"], + end: data["dtend"], + url: data["url"], + location: data["location"] + }); + }); + e_source = {} + e_source['events'] = events; + e_source['id'] = 'holydays' + e_source['color']="{{device.calcolor}}" + $('#calendar').fullCalendar('addEventSource', e_source); + }); + }); +</script> \ No newline at end of file