documentation.html 13.2 KB
Newer Older
Robin Sonnabend's avatar
Robin Sonnabend committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{% extends "layout.html" %}
{% from "macros.html" import render_table %}
{% block title %}Dokumentation{% endblock %}

{% block content %}
<div class="row">
    <div id="left-column", class="col-lg-6">
        <h3>Protokollsystem</h3>
        Das Protokollsystem dient der Planung von Sitzungen und Verwaltung von Protokollen. Die anstehenden Sitzungen der nächsten Woche sind auf der <a href="{{url_for("index")}}">Startseite</a>, alle Protokolle unter <a href="{{url_for("list_protocols")}}">Protokolle</a> zu finden.
        <h4 id="planung">Sitzungsplanung</h4>
        Sollte das Protokoll noch nicht existieren:
        <ol>
            <li>Gehe auf <a href="{{url_for("new_protocol")}}">Neu</a></li>
            <li>Wähle bei „Typ“ den Typ der Sitzung aus.</li>
            <li>Gib das Datum der Sitzung ein.</li>
            <li>Anlegen</li>
        </ol>
        Wenn es existiert:
        <ol>
            <li>Gehe auf <a href="{{url_for("list_protocols")}}">Protokolle</a></li>
            <li>Wähle die Sitzung aus. Noch ausstehende Sitzungen sind ganz oben.</a>
        </ol>
        Auf der Seite der Sitzung siehst du die Tagesordnung.
        <ul>
            <li>Die ersten und letztes TOPs sind Standard-TOPs, die jede Sitzung hat. Die kannst du nur über beim Protokolltyp ändern, nicht beim Protokoll selbst.</li>
            <li>Die mittleren TOPs gehören nur zu dieser Sitzung. Du kannst welche hinzufügen oder sie umsortieren.</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
27
            <li>Solltest du die TOPs nicht bearbeiten können, handelt es sich um ein Protokoll, das du lesen, aber nicht bearbeiten kannst. Mehr dazu bei <a href="#rechte">Rechteverwaltung</a>.</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
28
29
30
31
32
33
34
35
36
37
        </ul>
        <h4 id="wie">Wie schreibe ich eine Protokoll?</h4>
        <ol>
            <li>Protokoll auswählen (s.o.)</li>
            <li>mit „In Etherpad“ die Vorlage in das Etherpad schreiben.</li>
            <li>mit „Etherpad“ das Etherpad öffnen</li>
            <li>verlese Tagesordnung und Todos</li>
            <li>falls Todo erledigt, markiere als erledigt (Details siehe <a href="#Todos">Todos</a></li>
            <li>schreibe das Protokoll im Etherpad</li>
            <li>Importiere das Protokoll am Ende mit „Aus Etherpad“</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
38
            <li>Falls Fehler auftreten, behebe sie (siehe <a href="#fehler">Fehler</a></li>
Robin Sonnabend's avatar
Robin Sonnabend committed
39
40
            <li>Wenn keine Fehler mehr auftreten, drucke das Protokoll mit „Löschen” (unten beim Anhang) aus.</li>
            <li>Korrekturlesen lassen und im Etherpad korrigieren, dann nochmal „aus Etherpad“</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
41
42
43
44
            <li>Drucken und abheften</li>
            <li>Intern per Mail versenden</li>
            <li>Korrekturen abwarten (z.B. die Genehmigung auf der nächsten Sitzung)</li>
            <li>Veröffentlichen (und ggf. öffentlich versenden)</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
45
        </ol>
Robin Sonnabend's avatar
Robin Sonnabend committed
46
47
        <h5>Höchst interne Protokolle</h5>
        Falls das Protokoll Daten beinhaltet, die auf keinen Fall öffentlich sein sollten (z.B. personenbezogene Daten bei einem Sozialausschuss), kann anstelle des Editierens im Etherpad auch mit „Vorlage“ die leere Protokollvorlage heruntergeladen werden. Darin kann lokal mit einem beliebigen Texteditor die Sitzung protokolliert werden, um sie dann am Ende lokal zu speichern und mit „Quellcode hochladen“ hochzuladen.
Robin Sonnabend's avatar
Robin Sonnabend committed
48
49
50
51
52
53
54
        <h4 id="fehler">Was, wenn etwas nicht funktioniert?</h4>
        <ul>
            <li>Typische Web-Fehler (404, 500, etc.) sollten nicht auftreten. Wenn sie es doch tun, wende dich bitte an die <a href="mailto:{{config.ADMIN_MAIL}}">Admins</a></li>
            <li>Wenn beim Parsen, Kompilieren, versenden, hochladen, … Fehler auftreten, werden sie aufgelistet. Die Fehler aller Protokolle findest du unter <a href="{{url_for("list_errors")}}">Fehler</a>. Bei sehr langen Beschreibungen (z.B. LaTeX-Kompilierfehlern) solltest du den einzelnen Fehler anklicken, um die ganze Beschreibung zu erhalten.</li>
            <li>Wenn die Fehlerbeschreibung dir nicht ausreicht, um den Fehler zu beheben, wende dich an jemand erfahreneren und lass dir helfen.</li>
        </ul>
        <h4 id="todos">Todosystem</h4>
Robin Sonnabend's avatar
Robin Sonnabend committed
55
        Das Protokollsystem verwaltet Todos über mehrere Protokolle hinweg. Offene Todos werden in die Protokollvorlage eingefügt, falls diese einen TOP „Todos“ beinhaltet.
Robin Sonnabend's avatar
Robin Sonnabend committed
56
57
58
59
        <ul>
            <li>Jedes Todo hat eine (oder durch Kommata oder Leerzeichen getrennt mehrere) Personen, die es erledigen sollen.</li>
            <li>Todos haben auch einen Zustand, in dem sie sich befinden. Es gibt:
                <ul>
Robin Sonnabend's avatar
Robin Sonnabend committed
60
61
62
63
64
65
66
67
68
                    <li>offen: Das Todo muss noch erledigt werden</li>
                    <li>wartet auf Rückmeldung: Jemand kümmert sich um das Todo, wartet allerdings gerade darauf, dass jemand anderes (intern oder extern) sich zurückmeldet.</li>
                    <li>in Bearbeitung: Jemand kümmert sich gerade um das Todo.</li>
                    <li>ab: Das Todo wird erst ab dem Datum relevant.</li>
                    <li>vor: Das Todo muss vor dem Datum erledigt werden.</li>
                    <li>verwaist: Das Todo hat niemanden, der es erledigen wird.</li>
                    <li>erledigt: Das Todo ist erledigt.</li>
                    <li>abgewiesen: Das Todo ist nicht und wird nicht mehr erledigt.</li>
                    <li>obsolet: Das Todo wurde nicht erledigt und nun ist es zu spät, das noch zu tun.</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
69
70
71
72
73
74
75
76
77
78
79
80
                </ul>
            </li>
            <li>Alle Todos findest du unter <a href="{{url_for("list_todos")}}">Todos</a>.</li>
        </ul>

        <h4 id="suche">Suche</h4>
        <a href="{{url_for("list_protocols")}}">Protokolle</a>, <a href="{{url_for("list_todos")}}">Todos</a> und <a href="{{url_for("list_decisions")}}">Beschlüsse</a> können durchsucht werden.
        Im Suchfeld können mehrere durch Leerzeichen getrennte Suchbegriffe angegeben werden: <code>Begriff1 Begriff2</code>.
        Angezeigt werden alle Ergebnisse, die jeden der Suchbegriffe (unabhängig von Groß- oder Kleinschreibung) enthalten.
        Wenn ein Suchbegriff ein Leerzeichen beinhaltet, muss er mit Anführungszeichen umrandet werden: <code>"Begriff1 mit Leerzeichen" Begriff2</code>.

        <h4 id="rechte">Rechteverwaltung</h4>
Robin Sonnabend's avatar
Robin Sonnabend committed
81
        Das Protokollsystem hat ein Konzept von Rechteverwaltung, dass auf den Benutzergruppen im LDAP basiert.
Robin Sonnabend's avatar
Robin Sonnabend committed
82
        Rechte werden pro Protokolltyp eingestellt.
Robin Sonnabend's avatar
Robin Sonnabend committed
83
84
        Die vorhandenen Rechtestufen sind „Darf öffentliche Version einsehen“, „Darf interne Version einsehen“, „Darf Ändern“ und „Darf Protokolltyp bearbeiten“.
        Jedes Protokoll hat eine öffentliche Gruppe, eine interne Gruppe, eine Bearbeitungsgruppe, eine Verwaltungsgruppe und eine Einstellung, ob es öffentlich ist.<br>
Robin Sonnabend's avatar
Robin Sonnabend committed
85
86
87

        Die öffentliche Version einsehen dürfen:
        <ul>
Robin Sonnabend's avatar
Robin Sonnabend committed
88
            <li>
Robin Sonnabend's avatar
Robin Sonnabend committed
89
                Nicht authentifizierte Nutzer, wenn für den Protokolltyp „Öffentlich“ eingestellt ist, sobald das Protokoll veröffentlicht ist.
Robin Sonnabend's avatar
Robin Sonnabend committed
90
91
92
93
                <ul>
                    <li>Die Tagesordnung und Metadaten sind auch vor Veröffentlichung einsehbar.</li>
                </ul>
            </li>
Robin Sonnabend's avatar
Robin Sonnabend committed
94
            <li>Authentifizierte Nutzer auch dann, wenn der Protokolltyp nicht „Öffentlich“ ist, aber sie die „Öffentliche Gruppe“ oder die „Interne Gruppe” des Protokolltyps haben. Wenn keine Gruppe eingestellt ist, kann auch kein Nutzer diese haben.</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
95
96
97
        </ul>
        Die interne Version einsehen dürfen:
        <ul>
Robin Sonnabend's avatar
Robin Sonnabend committed
98
99
100
101
102
103
104
105
106
            <li>Authentifizierte Nutzer, wenn sie die „Interne Gruppe” des Protokolltyps haben.</li>
        </ul>
        Das Protokoll bearbeiten dürfen:
        <ul>
            <li>Authentifizierte Benutzer, wenn sie die „Bearbeitungsgruppe“ des Protokolltyps haben.</li>
        </ul>
        Die Einstellungen des Protokolltyps bearbeiten dürfen:
        <ul>
            <li>Authentifizierte Benutzer, wenn sie die „Verwaltungsgruppe“ des Protokolltyps haben.</li>
Robin Sonnabend's avatar
Robin Sonnabend committed
107
108
        </ul>

Robin Sonnabend's avatar
Robin Sonnabend committed
109
        Vom Protokoll wird eine interne und eine öffentliche Version generiert, falls es Inhalte gibt, die nur intern sind.
Robin Sonnabend's avatar
Robin Sonnabend committed
110
        Todos sind generell intern, Beschlüsse sind generell öffentlich (d.h. einsehbar, wenn man das Recht „Darf öffentliche Version sehen“ hat).
Robin Sonnabend's avatar
Robin Sonnabend committed
111
        Daher dürfen Beschlüsse nicht in einem internen Teil des Protokolls sein.
Robin Sonnabend's avatar
Robin Sonnabend committed
112
113
114
115
116
117
118
    </div>
    <div id="right-column", class="col-lg-6">
        <h3 id="syntax">Syntax</h3>
        Ein Dokument beginn mit einigen Metadaten, danach kommen nacheinander die Tagesordnungspunkte, die durch Listen strukturiert sind.
        Darüberhinaus gibt es Tags, mit denen URLs, Beschlüsse oder ToDos markiert werden können.

        <h4 id="metadaten">Metadaten</h4>
Robin Sonnabend's avatar
Robin Sonnabend committed
119
        Die Syntax der Metadaten ist <code>#Name;Wert</code> und die einzelnen Einträge werden durch Zeilenumbrüche getrennt. Folgende Metadaten müssen immer in diesem Format angegeben werden:
Robin Sonnabend's avatar
Robin Sonnabend committed
120
121
122
123
124
        <ul>
            <li><code>#Datum;01.01.2017</code> Das Datum der Sitzung</li>
            <li><code>#Beginn;19:00</code> Beginn der Sitzung</li>
            <li><code>#Ende;21:42</code> Ende der Sitzung</li>
        </ul>
Robin Sonnabend's avatar
Robin Sonnabend committed
125
    Zusätzlich können pro Protokolltyp weitere Metadatenfelder konfiguriert werden, beispielsweise der Ort, die Anwesenden Teilnehmer, die Protokollführung, …. Diese haben als Wert beliebigen Text.
Robin Sonnabend's avatar
Robin Sonnabend committed
126
127
        <h4 id="tops">Tagesordnungspunkte</h4>
        Ein TOP besteht aus einem Titel und beliebigem Inhalt.
Robin Sonnabend's avatar
Robin Sonnabend committed
128
        Ein TOP ist eine besondere Liste (s.u.) und kann somit wie diese verwendet werden.
Robin Sonnabend's avatar
Robin Sonnabend committed
129
130
<pre>
{TOP Tagesordnungspunkt
marco's avatar
marco committed
131
    Inhalt:
Robin Sonnabend's avatar
Robin Sonnabend committed
132
133
134
135
}
</pre>
        <h4 id="liste">Liste</h4>
        Die Liste ist das einzige strukturierende Element.
Robin Sonnabend's avatar
Robin Sonnabend committed
136
        Listen können beliebig geschachtelt werden.
marco's avatar
marco committed
137
        Die Elemente der Liste werden durch das Zeilenende getrennt.
Robin Sonnabend's avatar
Robin Sonnabend committed
138
139
<pre>
{TOP Tagesordnungspunkt
Robin Sonnabend's avatar
Robin Sonnabend committed
140
    Zeile mit Text drin
Robin Sonnabend's avatar
Robin Sonnabend committed
141
    Hier eine geschachtelte Liste: {
Robin Sonnabend's avatar
Robin Sonnabend committed
142
143
        Details zu diesem Punkt.
        Mehr Details zu diesen Punkt.
marco's avatar
marco committed
144
145
    }
}
Robin Sonnabend's avatar
Robin Sonnabend committed
146
147
</pre>

Robin Sonnabend's avatar
Robin Sonnabend committed
148
        Text, der vor der öffnenden Klammer <code>{</code> steht, wird als Name der Liste angesehen, nur TOPs können Text hinter der öffnenden Klammer haben.
Robin Sonnabend's avatar
Robin Sonnabend committed
149
150
151
152
        Listen in der höchsten Ebene müssen TOPs sein.
{% if config.PRIVATE_KEYWORDS|length > 0 %}
        <h4 id="intern">Interne Abschnitte</h4>
        Wenn der Name einer Liste (bis auf Leerzeichen und einen optionalen <code>:</code>) eins aus
Robin Sonnabend's avatar
Robin Sonnabend committed
153
        {{config.PRIVATE_KEYWORDS|map("code")|join(" ")|safe}}
Robin Sonnabend's avatar
Robin Sonnabend committed
154
155
        ist, ist diese Liste intern.
        Daher wird sie nur in der internen Version des Protokolls angezeigt.
Robin Sonnabend's avatar
Robin Sonnabend committed
156
        In der öffentlichen Version steht stattdessen nur ein Hinweis auf diese interne Stelle.
Robin Sonnabend's avatar
Robin Sonnabend committed
157
158
<pre>
{TOP Tagesordnungspunkt
marco's avatar
marco committed
159
    Dieser Punkt ist öffentlich.
Robin Sonnabend's avatar
Robin Sonnabend committed
160
    {{config.PRIVATE_KEYWORDS[0]}}: {
marco's avatar
marco committed
161
162
163
164
        Dieser Punkt ist intern.
        Dieser auch.
    }
    Dieser ist wieder öffentlich.
Robin Sonnabend's avatar
Robin Sonnabend committed
165
166
167
168
169
}
</pre>
        
        <h4 id="tag">Tags</h4>
        Tags können Text besonders hervorheben oder bestimmte Aktionen ausführen.
Robin Sonnabend's avatar
Robin Sonnabend committed
170
        Die grundsätzliche Syntax ist <code>[Name;Arg1;Arg2;…]</code>, wobei theoretisch beliebig viele Argumente angegeben werden können, allerdings je nach Typ nur endlich viele eine Bedeutung haben.
Robin Sonnabend's avatar
Robin Sonnabend committed
171
        <h5>URL-Tag</h5>
Robin Sonnabend's avatar
Robin Sonnabend committed
172
        Mittels <code>[url;https://protokolle.fsmpi.rwth-aachen.de ]</code> kann ein entsprechend formatierter Link eingebunden werden.
Robin Sonnabend's avatar
Robin Sonnabend committed
173
174
175
176
177
        Das Leerzeichen am Ende ist nicht notwendig für das Protokollsystem, erleichtert aber das Anklicken im Etherpad.
        <h5>Beschluss-Tag</h5>
        <code>[beschluss;Wir beschließen etwas tolles.]</code> erzeugt einen Beschluss im Protokoll.
        Ein Beschluss wird zusätzlich am Anfang des Protokoll angezeigt.
        Die Beschlüsse sind online durchsuchbar.
Robin Sonnabend's avatar
Robin Sonnabend committed
178
179
180
        Beschluss-Tags dürfen nicht in internen Abschnitten stehen.
        Falls für den Protokolltyp <b>Beschlusskategorien</b> definiert sind, können Beschlüsse mit <code>[…;finanzwirksam;…]</code> diesen zugeordnet werden.
        Beschlüsse können nach Beschlusskategorien gefiltert werden.
Robin Sonnabend's avatar
Robin Sonnabend committed
181
182
183
        <h5>Todo-Tag</h5>
        In den Protokollen können <a href="#todos">Todos</a> verwaltet werden.
        Ein neuer Todo wird mit <code>[todo;Name;Aufgabe]</code> angelegt.
Robin Sonnabend's avatar
Robin Sonnabend committed
184
        Dieser ist dann online und in den Mails sichtbar.
Robin Sonnabend's avatar
Robin Sonnabend committed
185
186
187
        Falls der Name einer Mail <a href="{{url_for("list_todomails")}}">zugeordnet</a> ist, wird diese Person (oder AG, AK, …) per Mail über ihre offenen Todos informiert.
        Mehrere Personen können durch Leerzeichen oder Kommata getrennt angegeben werden.

Robin Sonnabend's avatar
Robin Sonnabend committed
188
        Ein bereits bestehender Todo wird mit der zusätzlichen Option <code>[…;id 1338]</code> in ein neues Protokoll eingefügt, falls es den TOP „Todos“ beinhaltet.. Wird dieser Todo dann geändert, passiert das auch im Protokollsystem.
Robin Sonnabend's avatar
Robin Sonnabend committed
189
        Außerdem kann der Status des Todos, z.B. <code>[…;done;…]</code> angegeben werden.
Robin Sonnabend's avatar
Robin Sonnabend committed
190
191
192
193
        Wenn der Status ein Datum benötigt 
        ({{todostates|select("needs_date")|map("todo_get_name")|join(", ")}})
        muss dies als <code>[…;dd.mm.yyyy;…]</code> angegeben werden.
        <br>
Robin Sonnabend's avatar
Robin Sonnabend committed
194
        Folgende Begriffe werden vom Protokollsystem verstanden (Groß- und Kleinschreibung spielt keine Rolle):
Robin Sonnabend's avatar
Robin Sonnabend committed
195
196
197
198
199
200
201
        <ul>
            {% for name in name_to_state %}
                {% set state = name_to_state[name] %}
                <li><code>{{name}}{% if state.needs_date() %};dd.mm.yyyy{% endif %}</code>: {{state.get_name()}}</li>
            {% endfor %}
        </ul>

Robin Sonnabend's avatar
Robin Sonnabend committed
202
203
204
205
{% endif %}
    </div>
</div>
{% endblock %}