tenseleyflow/shithub / 4fa8d24

Browse files

S34: layout-level impersonation banner

Authored by espadonne
SHA
4fa8d241b596fb97d54caeef17411377cd0d330b
Parents
e3091ee
Tree
8347389

2 changed files

StatusFile+-
A internal/web/templates/_impersonation_banner.html 14 0
M internal/web/templates/_layout.html 1 0
internal/web/templates/_impersonation_banner.htmladded
@@ -0,0 +1,14 @@
1
+{{ define "impersonation-banner" -}}
2
+{{ with .Viewer }}
3
+{{ if .ImpersonatedUserID }}
4
+<div class="shithub-imp-banner" role="alert">
5
+  <strong>Impersonating</strong> {{ .Username }} (#{{ .ID }})
6
+  · {{ if .ImpersonateWriteOK }}<span class="shithub-imp-write">writes ENABLED</span>{{ else }}<span class="shithub-imp-read">read-only</span>{{ end }}
7
+  <form method="POST" action="/admin/impersonate/stop" style="display:inline; margin-left: 0.75rem">
8
+    <input type="hidden" name="csrf_token" value="{{ $.CSRFToken }}">
9
+    <button type="submit" class="shithub-button">Stop impersonation</button>
10
+  </form>
11
+</div>
12
+{{ end }}
13
+{{ end }}
14
+{{- end }}
internal/web/templates/_layout.htmlmodified
@@ -30,6 +30,7 @@
3030
 </head>
3131
 <body class="shithub-body">
3232
 {{ template "nav" . }}
33
+{{ template "impersonation-banner" . }}
3334
 <main class="shithub-main">
3435
 {{ template "page" . }}
3536
 </main>