munin/templates/workspaces.html
2026-10-19 10:13:56 +02:00

95 lines
3.8 KiB
HTML

{{template "header" .}}
<div class="page-header">
<div class="page-header-title">
<h1>Workspaces {{template "helplink" "plattform-admin#workspaces"}}</h1>
<span class="help">Jede Abteilung hat ihren eigenen Workspace — eigene Projekte,
eigene Einträge, eigener Speicherbereich (Datei bzw. Schema, siehe unter dem
Namen). Sie sehen sich gegenseitig nicht.</span>
</div>
</div>
{{if .Data.Workspaces}}
<div class="table-wrap">
<table class="styled-table">
<thead>
<tr>
<th>Workspace</th>
<th class="num">Projekte</th>
<th class="num">Workspace-Admins</th>
<th>Angelegt</th>
<th class="narrow right">Auswahl</th>
<th class="narrow right">Verwaltung</th>
</tr>
</thead>
<tbody>
{{$aktuell := .Data.Current}}
{{range .Data.Workspaces}}
<tr>
<td>
{{.Name}}
{{if eq .ID $aktuell}}<span class="badge emphasis">Aktuell</span>{{end}}
{{/* Wo die Daten liegen: PostgreSQL-Schema oder SQLite-Datei.
Zum Wiederfinden in der Datenbank, z.B. in psql. */}}
<div class="help storage-location" title="Speicherort in der Datenbank">{{.Location}}</div>
</td>
<td class="num">{{.Projects}}</td>
{{/* Aktive Workspace-Admins. "ungenutzt" ist das Signal, auf das
es hier ankommt: ein offener Zugang zum ganzen Workspace,
den seit über 90 Tagen niemand benutzt. */}}
<td class="num">
{{if .Admins}}{{.Admins}}{{else}}<span class="help">keine</span>{{end}}
{{if .AdminsUnused}}
<div><a href="/admin/workspaces/{{.ID}}/edit" class="badge warning"
title="Seit über 90 Tagen nicht benutzt">{{.AdminsUnused}} ungenutzt</a></div>
{{end}}
</td>
<td class="help">{{.CreatedAt}}</td>
<td class="narrow right">
{{if eq .ID $aktuell}}
<a href="/admin/projects" class="button secondary">Weiter</a>
{{else}}
<form method="POST" action="/admin/workspaces/select" class="row">
<input type="hidden" name="csrf_token" value="{{$.CSRFToken}}">
<input type="hidden" name="id" value="{{.ID}}">
<button type="submit" class="secondary">Öffnen</button>
</form>
{{end}}
</td>
<td class="narrow right">
<a href="/admin/workspaces/{{.ID}}/edit">Bearbeiten</a>
</td>
</tr>
{{end}}
</tbody>
</table>
</div>
{{else}}
<div class="empty">
<p>Noch kein Workspace angelegt.</p>
<p class="help">Ein Workspace ist die Abschottungsgrenze zwischen Abteilungen — meist einer je Team.</p>
</div>
{{end}}
<section class="section">
<h2>Neuer Workspace</h2>
<span class="help">Für eine neue Abteilung. Projekte werden danach innerhalb
des Workspace angelegt.</span>
<div class="card">
<form method="POST" action="/admin/workspaces/create" class="form">
<input type="hidden" name="csrf_token" value="{{.CSRFToken}}">
<div class="field medium">
<label for="name">Name</label>
<input type="text" id="name" name="name" required placeholder="z.B. Marketing" autofocus>
</div>
<div class="form-actions">
<button type="submit">Workspace anlegen</button>
</div>
</form>
</div>
</section>
{{template "footer" .}}