rin
Public Open-source lightweight git hosting.
register.html · 47 lines · 2.3 KB
Raw
1 {{define "content"}}
2 <div class="container" style="max-width:23rem;padding-top:2rem;">
3 <div class="card">
4 <div class="card-header">
5 <h1 class="text-base font-semibold" style="margin:0;">{{t .Lang "auth.register.title"}}</h1>
6 </div>
7 {{if not .RegistrationOpen}}
8 <div class="card-body text-sm text-muted">
9 <div class="flex items-center gap-2 text-destructive">
10 {{icon "lock" "size-4"}}
11 <span>{{t .Lang "auth.register.disabled"}}</span>
12 </div>
13 </div>
14 {{else}}
15 <form method="post" action="/register" class="card-body flex flex-col gap-3">
16 <input type="hidden" name="_csrf" value="{{.CSRFToken}}">
17 {{if eq .RegistrationMode "confirm"}}
18 <div class="card p-2.5 text-xs text-muted" style="background:hsl(var(--muted) / 0.35);">
19 {{t .Lang "auth.register.pending_notice"}}
20 </div>
21 {{end}}
22 <div>
23 <label class="label" for="username">{{t .Lang "auth.username"}}</label>
24 <input id="username" name="username" type="text" class="input font-mono" value="{{.FormUsername}}" placeholder="polar" required autofocus pattern="^[a-zA-Z0-9](?:[a-zA-Z0-9]|[-_][a-zA-Z0-9]){1,31}$">
25 <div class="field-hint">{{t .Lang "auth.username_hint"}}</div>
26 </div>
27 <div>
28 <label class="label" for="email">{{t .Lang "auth.email"}}</label>
29 <input id="email" name="email" type="email" class="input" value="{{.FormEmail}}" placeholder="user@example.com" required autocomplete="email">
30 </div>
31 <div>
32 <label class="label" for="password">{{t .Lang "auth.password"}}</label>
33 <input id="password" name="password" type="password" class="input" minlength="8" required autocomplete="new-password">
34 <div class="field-hint">{{t .Lang "auth.password_hint"}}</div>
35 </div>
36 <button type="submit" class="btn btn-primary w-full mt-1">
37 <span>{{t .Lang "auth.submit_register"}}</span>
38 </button>
39 </form>
40 {{end}}
41 <div class="card-footer text-xs text-muted flex items-center justify-between">
42 <span>{{t .Lang "auth.have_account"}}</span>
43 <a href="/login" class="font-medium" style="color:hsl(var(--foreground));">{{t .Lang "nav.login"}} →</a>
44 </div>
45 </div>
46 </div>
47 {{end}}