Skip to content
Snippets Groups Projects
Commit 0c178125 authored by Lukas Ruge's avatar Lukas Ruge
Browse files

better doku

parent 44f22926
No related branches found
No related tags found
No related merge requests found
Pipeline #23447 passed
......@@ -2,7 +2,19 @@
# Dokumentation zur Chaotikum website
Aktuell wohnt die Doku noch im Wiki: https://wiki.chaotikum.org/howto:chaotikumwebsite und wird hier her umgezogen. Daher unten noch viel TODO.
**Aktuell wohnt die Doku noch im Wiki: https://wiki.chaotikum.org/howto:chaotikumwebsite und wird hier her umgezogen. Daher unten noch viel TODO.**
### Für wen ist diese Doku (nicht)
Dies ist keine Doku für Menschen, die einfach auf unserer Website surfen wollen und sie benutzen wollen. Die Hoffnung ist, das geht einfach so. ganz ohne Doku. Es ist auch keine Doku für Menschen, die an dieser Website programmieren. Hierzu wird es langfristig (hoffentlich) eine Entwicklungsdoku geben, welche es erleichtert neue Features einzubauen.
Diese Doku ist für Menschen, die Content erstellen wollen. Sie soll ein Verständnis schaffen, wie Inhalte strukturiert sind, wie sie abgelegt werden, auf was dabei zu achten ist und welche Verknüpfungen geschehen. Das ist nämlich dank der Komplexität der Website nicht (immer) einfach.
Die Doku soll auch einen Überblick darüber geben, wo die Website von anderen Systemen als Informationsquelle genutzt wird oder Informationen anderer Quellen nutzt, um sich beim Erstellen von Content dieser Abhängigkeiten bewusst zu sein und zu wissen: Änderungen können effekte außerhalb der Website haben.
Beschrieben, oder verlinkt, werden daher auch einige Systeme, die Eng mit der Website kooperieren oder für ihren Betrieb relevant sind.
Aufgeteilt ist die Dokumentation folgendermaßen:
* [Website Lokal starten](/docs/dev/local.md)
* Builds Scripts
......@@ -14,15 +26,17 @@ Aktuell wohnt die Doku noch im Wiki: https://wiki.chaotikum.org/howto:chaotikumw
* [Einen Blogpost schreiben](/docs/content/newpost.md)
* [Space-Status](/docs/content/status.md)
* [Medien wie Bilder oder Videos einbinden](/docs/content/embedmedia.md)
* [Menschen und Gruppen](/docs/content/people.md) (TODO)
* [Projekte und Aktivitäten](/docs/content/activities.md) (TODO)
* [Events im Kalender](/docs/content/events.md) (TODO)
* [Inventar und Werkstatt](/docs/content/inventory.md)
* [Leihgabe und Verleih-Infos](/docs/content/loans.md) (TODO)
* [Menschen und Gruppen](/docs/content/people.md) (TODO)
* [Geräte Buchen](/docs/content/booking.md)
* [Leihgabe und Verleih-Infos](/docs/content/loans.md) (TODO)
* [pressespiegel](/docs/content/press.md) (TODO)
* [Videos/Conferences](/docs/content/media.md) (TODO)
* [Anwesenheit](/docs/content/presence.md)
* [Layouts anpassen](/docs/content/layouts.md) (TODO)
* [Glossar](/docs/glossary.md)
## Changelog
......
![Header](https://chaotikum.org/assets/header.png)
# Geräte und Arbeitsplätze Buchen
Es kann sinnvoll sein, dass ein Gerät, für verschiedenen zwecke exklusiv einer person oder Gruppe für einen Zeitraum zugesichert wird. Der Überbrgriff hierfür ist das Buchen von Objekten. Es kann im Kontext unterschiedlicher Bereiche geschehen:
- *Events*: Bei der durchführung von Workshops, Vorträgen, der Nook, einem Sommerfest usw.. ist es notwendig sicherzustellen, dass bestimmte Dinge da sind, die benötigt werden. In Events ist es daher möglich direkt einzutragen, dass man Objekten aus dem Inventar bucht. Events sind auch die einzige Möglichkeit komplette Räume zu buchen. Wenn es sich eher um ein Treffen einer Projektgruppe oder andere Interne Sachen handelt, für die das dennoch sinnvoll erscheint sich Ruhe und Freiruam zu schaffen, [gibt es das Flag, das Event als Intern zu markieren]((/events.md). Es landet dann nicht im großen Kalender für die ganze öffentlichkeit.
- *Verleih*: Es ist möglich als Privatperson oder Gruppen gewisse dafür vorgesehene Objekte aus dem Inventar zu leihen. Dafür füllt man ein Formular aus, unterscheibt einen Leihvertrag und erhält dan das Objekt oder die Objekte.
- *Reservieren für Aktivitäten*: Akltivotäten (früher Projekte) sind langfristige Tätigkeiten von personen oder Gruppen im Rahmen des Vereinszwecks innerhalb (oder zumindest teilweise innerhalb) der Vereinsräume. Manchmal sind diese Zeitkritisch oder verlangen Teamarbeit und es ist sinnvoll, dafür Objekte aus dem Inventar zu reservieren.
![Header](https://chaotikum.org/assets/header.png)
# Events
### Eventverwaltung über die Website
Um Events auf der Website darstellen zu können werden Events aktuell im Repository der Website angelegt.
Wie [fast alles auf der Website](https://git.chaotikum.org/chaotikum/website/-/blob/master/docs/content/content_basics.md) ist auch ein Event in erster Linie eine korrekt formatierte Makrdown-Datei im korrekten Ordner. Der Ordner ist in diesem Fall, wenig überschaned, `_events`.
Wie ebenfalls vieles auf der Website interagiert dies mit verschiendenen bestandteilen der Website und wird an unterschiedlichen Stellen integriert. Dafür gibt es neben den recht offensichtlichen Informationen wie einem Titel, Start- und Endzeit und dem Ort einen haufen, teilweise wenig offensichtlicher Flags, die im folgenden erklärt werden.
Für Events die anderen events, die es bereits gab, sehr ähnlich sind, ist es vermutlich oft eine gute idee einfach die entsprechende Markdown-Datei zu kopieren, dort sollte ja hoffentlich bereits alles stimmen.
### Dateinamen
Events werden, anders als z.B. Blogposts, so benannt, dass das Datum zwar zu Anfang steht, aber kein Bindestrich dahinter ist. Das gilt für so ziemlich alles außer Blogposts und hat etwas mit jakyll internen Sortier-Automatismen zu tun, die greifen, wenn jekyll bindestrich getrennte Daten sieht. Ein Dateiname sieht also z.B. so aus:
- 20240501-aufraeumen.md
### Zeichensatz
Diese Dateien werden zu ICS-Dateien verarbeitet. Es ist daher **zwingend notwendig hier nur einen einfachen ASCII Datensatz zu nutzen. Jegliche Unicode Symbole zerstören das ical parsing und der gesammte Chaotikum-Kalender funktioniert für alle MEnschen die ihn abonieren nicht mehr**
### Inhalt einer Event-Datei
Eine Even-Datei besteht ausschließlich aus Front-Matter, die beiden Striche am Anfang und Ende sind also wichtig, sonst funktioniert die Verarbeitung nicht.
```
---
layout: [eventcal]
title: "Freitalk: Feinstaubsensoren"
eventdate: 2019-05-10 20:00:00 +0200
eventend: 2019-05-10 23:00:00 +0200
#https://www.uuidgenerator.net/
uid: 05f0bcf2-05b3-47ae-95b7-ed7927207bab
contact: vorstand@chaotikum.org
recording: true
locations:
- Augenprüfraum
short: "Freitalk N8: Freitalk Nacht - Freitag nach Acht."
---
```
* `layout` MUSS immer `[eventcal]` sein. Die Eckigen klammern sind wichtig, da wir hier als Layout eine nicht html-Datei nutzen (Kalender sind ics), und jekyll das eigentlich nicht mag...
* `title` ist der Name des Events wie er im kalender und überll dort, wo das Event angezeigt wird (z.B. in Aktivitäten und Blogposts) genannt wird. Häufig werden Präfixe wie "Bits und Bäume" oder "Freitalk" vor Events getan, die zu einer Reihe gehören. Das ist aber nicht pflicht. Ein Titel an und für sich ist pflicht.
* `image` Ein veraltetes Feld, wird nicht genutzt, kann man angeben oder weglassen. Sollte mal irgendwo als HEader image landen... das ist aber unsinn. Findet sich noch in älteren Event Dateien. Gerne nicht verwenden.
* `eventdate`: Startzeit des Events. **ACHTUNG. im Winter mit +0100 und im Sommer mit +0200**
* `eventend`: Endzeit des Events. **ACHTUNG. im Winter mit +0100 und im Sommer mit +0200**
* `uid`: Wie [fast alles auf der Website](https://git.chaotikum.org/chaotikum/website/-/blob/master/docs/content/content_basics.md) braucht auch jedes Event eine eindeutige ID. Und zwar eine UID. **Diese UID wird als die im ical format verpflichtende eindeutige ID eines Events genutzt. Ist sie also nicht eindeutig (z.B. durch kopieren einer Datei) kann dies dazu führen, dass Kalendersysteme den Kalender nicht mehr parsen können und der Chaotikum-Kalender für Menschen nicht angezeigt wird. Dies ist also wichtig!** Ändert man einen termin grundlegend (anderes Datum o.ä.) kann es hilfreich sein die uid zu erneuern, damit Kalender besser aktualisieren. **Wichtig: Beachte, wo du die ID sonst noch als verweis zum Event angeben hattest, z.B. Blogposts**.
* `contact`: Jedes Event braucht einen Kontakt. Das ist eine E-Mail Adresse. Per default kann die Adresse des Chaotikum Vorstands genutzt werden.
* `poster`: Ein veraltetes Feld, wird nicht genutzt, kann man angeben oder weglassen. War mal gedacht für Poster. Findet sich noch in älteren Event Dateien. Gerne nicht verwenden.
* `recording`: *true* oder *false* hierbei geht es darum ob wir das Event aufzeichnen, also eine Videoaufzeichnung machen. Das muss nicht unbedingt durchgehend passieren, aber ein Aufbau des Setups oder die präsenz vieler, oft laufender, Videokameras ist zu erwarten.
* `fotopolicy`: Interagiert zu einem gewissen grad mit dem `recording`-Flag. Hier legen wir die Foto-Policy fest. Es gibt drei Werte: *open*, *restrictive* und *ccc*. Die Details unten in einem Abschnitt zur Foto-Policy. Man kann es auch freilassen. Dann greift ein Default. Bei Events mit recording *true* ist der default *open*, bei recording *false* ist der default für die fotopolicy *restrictive*. Entsprechend wird ein Text in der *Eventbox* (s.u.) angezeigt.
* `stream`: Manchmal machen wie vielleicht einen Stream. Wenn man sie kennt kann man hier die URL des Streams hinschreiben. Das kommt dann auch in die *Evenbox*. Wir nennen das dann einen *Vielleicht-Stream*, weil es in der Vergangenheit zu irritationen geführt hat, wenn wir, aus welchem Grund auch immer, dann doch keinen Stream machen. Wenn es kein Stream gibt, das Feld einfach leer lassen.
* `stream_certain`: Wenn wir uns sicher sind, dass wir einen Stream machen, kann man hier den wert *true* setzen, dann wird aus einem *Vielleicht-Stream* in der *Eventbox* ein *Live-Stream*.
* `locations`: Eine Liste von Locations. Das sind letztendlich freitexte, aber nur bei bestimmten Raumnamen greifen Automatismen, wie z.B., dass gewisse Kalender für diese Locations gefüllt werden, oder das gewisse Locations zusammengefasst werden können. Werden *Augenprüfraum*, *Wartezimmer*, *Lager* und *Confy Zone* angegeben fasst die öffentliche kalender Datei dies einfach als *Nobreakspace* zusammen. Andererorts verbleiben alle vier Locations.
* `short`: Eine kurze Beschreibung. Der iCal standart macht lange Texte anstrengend. Fasst euch bitte kurz. Für lange Texte gibt es den Blog oder Aktivitätsbeschreibungen.
### Die Eventbox
Die Eventbox ist eine Box, welche unten in Blogposts angezeigt wird, in welchen es um ein Event geht. Die enthällt grundsätzliche Daten zum Event, die Möglichkeit ein ical für das Event runterlzuladen und ggf links zum Stream und Infso zu Recording und Fotopolicy. Damit diese angezeigt wird, muss das Event vom Blog-Post aus referenziert werden. Wie das steht, kann man im Kapitel zum [anlegen von Blog-Posts](/newpost.md) nachlesen.
### Foto-Policy bei Events:
Es gibt drei verschiedene Foto-Policies, die gesetzt werden können. Diese Führen zu folgenden texten in der Box:
- *open*: "Unsere Events werden fotografisch und ggf. filmisch dokumentiert. Durch Teilnahme an den Veranstaltungen gilt eine Einwilligung zur Verarbeitung des entstandenen Materials als erteilt. Die Aufnahmen verwenden wir für die Öffentlichkeitsarbeit (z.B. Social Media) und der Dokumentation der Vereinsarbeit (Art. 6 Ab. 1 f DSGVO). Weitere Informationen und Kontaktdaten finden sich in unseren <a href="https://chaotikum.org/datenschutzerk/">Datenschutzhinweisen.</a></b>"
- *restrictive*: "Das Fotografieren und Filmen auf dieser Veranstaltung ist lediglich mit explizieter Erlaubnis aller fotografierten oder gefilmten Personen gestattet."
- *ccc*: Ist eine speziell für das camp 2023 erstellte policy, sie verweist auf die dort geltende Policy. Sie müsste angepasst werden, wenn wir sie erneut nutzen wollen...
Wie oben beschrieben, kann man das Feld weglassen, es greift dann ein default über das Flag `recording`. Lediglich, wenn man das nicht möchte, kann man es explizit setzen. Ist recording *false* und die fotopolicy *open* so wird ein Hinweis "Es findet keine kontinuierliche Aufzeichnung, vergleichbar mit einem Vortrag o.ä., statt." hinzugefügt, um vwerirrungen zu reduzieren, das kann man z.B. hier im [Blog-Post über das Sommerfst 2024](https://chaotikum.org/blog/2024/03/25/maifest/) sehen.
Die exakte Formulierung der texte in der Box mag sich ab und zu ändern, ggf wird die Doku nicht immer aktualisiert. Der Code zur Darstellung der Texte findet sich in `_includes/post-event.md`. Dort kann das immer nachgelesen werden. Jede Änderung dort wirkt sich auch Rückwirkend auf alle alen Blogposts aus!
### Verarbeitung der Datein
Die hier eingegebenen Datein werden an verschieensten Stellen verwendet. Events werden häufig referenziert. z.B.:
- verschiedne ical Dateien (sowohl pro locatatio als auch interne und externe kalender)
- verschiedene RSS Dateien, welche wiederum z.B. auch auf Mastodon landen
- frab/schedule.xml (Die Dateien die man für CCC-Events und media.ccc.de uploads braucht)
- Porjekte/Aktivitäten
- Darstellung von Medien/Videos auf unseren Websites
- Reservierung von Geräten und den entsprechenden darstellung im Inventar, der Werkstattseite
- Auf dem Verleih-Formular
Daher ist hier eine gewisse Vorsicht geboten. Insbesondere **bitte immer darauf achten eine frische UUID zu nutzen**, weswegen dies auch [beim Build nochmal geprüft wird]() (**TODO: MISSING LINK**).
......@@ -155,8 +155,10 @@ Hier dokumentieren wir einen Schaden beispielhaft als Text. Natürlich könnte.
### Geräte buchen
Es kann sinnvoll sein, dass ein Gerät, für verschiedenen zwecke exklusiv einer person oder Gruppe für einen zeitraum zugesichert wird. Der Überbrgriff hierfür ist das Buchen von Objekten. Es kann im Kontext unterschiedlicher Bereiche geschehen:
Es kann sinnvoll sein, dass ein Gerät, für verschiedenen zwecke exklusiv einer person oder Gruppe für einen Zeitraum zugesichert wird. Der Überbrgriff hierfür ist das Buchen von Objekten. Es kann im Kontext unterschiedlicher Bereiche geschehen:
- Events: Bei der durchführung von Workshops, Vorträgen, der Nook, einem Sommerfest usw.. ist es notwendig sicherzustellen, dass bestimmte Dinge da sind, die benötigt werden. In Events ist es daher möglich direkt einzutragen, dass man Objekten aus dem Inventar bucht.
- Verleih: Es ist möglich als Privatperson oder gruppe gewisse dafür vorgesehene Objekte aus dem Inventar zu leihen. Dafür füllt man ein Formular aus, unterscheibt einen Leihvertrag und erhält dan das Objekt oder die Objekte.
- Reservieren für Aktivitäten: Akltivotäten (früher Projekte) sind langfristige Tätigkeiten von personen oder Gruppen im Rahmen des Vereinszwecks innerhalb (oder zumindest teilweise innerhalb) der Vereinsräume. Manchmal sind diese Zeitkritisch oder verlangen Teamarbeit und es ist sinnvoll, dafür Objekte aus dem Inventar zu reservieren.
\ No newline at end of file
- Reservieren für Aktivitäten: Akltivotäten (früher Projekte) sind langfristige Tätigkeiten von personen oder Gruppen im Rahmen des Vereinszwecks innerhalb (oder zumindest teilweise innerhalb) der Vereinsräume. Manchmal sind diese Zeitkritisch oder verlangen Teamarbeit und es ist sinnvoll, dafür Objekte aus dem Inventar zu reservieren.
Welche Dateien und Ordner hier involviert sind, wie das funktioniert und auch, welche grundsätze hier zu beachten sind, um das gemeinsame Arbeiten im Space nicht unnötig zu erschweren, beschreibt der nächste [Abschnitt der Dokumentation]((/booking.md) .
\ No newline at end of file
# Glossar
Ein Glossar ist immer zum Scheitern verurteilt. Das vorausgestellt... Machen wir es einfach dennoch, wa.
Ziel ist Begrifflichkeiten zu erklären, die (glaube ich) in dieser Doku genutzt werden.
### A
### B
#### Builds Scripts
Damit sind einige Skripts im Repo gemeint, welche als [Github Pipelines] bei jedem Build der Website laufen. Mehr über diese in den kapiteln [Wie unsere Website tickt](docs/content/content_basics.md) und den [Unterseiten zu Builds Scripts](https://git.chaotikum.org/chaotikum/website/-/tree/master/docs).
#### Blogpost
Ein Blogpost ist so ziemlich das wichtigste Konzept dieser Website, die im herzen ein Blog ist. Mehr unter dem kapitel [Einen Blogpost schreiben](/docs/content/newpost.md) .
### C
#### <a name="ChaotikumWebsite"></a>Chaotikum website
Damit meinen wir diese Website, das komplette Konstrukt unter chaotikum.org. Seite unter Subdomains sind ggf nicht mit gemeint und alufen anders. Eine allgemeine Einführung bietet das Kapitel [Wie unsere Website tickt](docs/content/content_basics.md).
#### Content
Unter Content wird fast alles verstanden, was in einen der mit Unterstrich beginnenden Ordner kommt aber auch Bilder und andere Assets. Halt alles, was irgendwie zu Inhalten verarbeitet wird.
### D
### E
#### Evenbox
### F
#### Fotopolicy
### G
### H
### I
### J
### K
### L
#### Live-Stream
### M
### N
### O
### P
#### Projektbox
### Q
### R
### S
#### Sidebar
### T
### U
### V
#### Vielleicht-Stream
### W
#### Website
-> [pookie](#ChaotikumWebsite)
### X
### Y
### Z
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment