32 lines
1.1 KiB
HTML
32 lines
1.1 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>{{( pgettext "Login" "title" )}} — Numerus</title>
|
|
<link rel="stylesheet" type="text/css" media="screen" href="/static/numerus.css">
|
|
</head>
|
|
<body class="web">
|
|
<h1><img src="/static/numerus.svg" alt="Numerus" width="620" height="77"></h1>
|
|
|
|
{{ if .LoginError }}
|
|
<div class="error" role="alert">
|
|
<p>{{( gettext "Invalid user or password" )}}</p>
|
|
</div>
|
|
{{ end }}
|
|
|
|
<section id="login">
|
|
<h2>{{( pgettext "Login" "title" )}}</h2>
|
|
<form method="POST" action="/login">
|
|
<label for="user_email">{{( pgettext "Email" "input" )}}</label>
|
|
<input id="user_email" type="email" required autofocus name="email" autocapitalize="none" value="{{ .Email }}">
|
|
|
|
<label for="user_password">{{( pgettext "Password" "input" )}}</label>
|
|
<input id="user_password" type="password" required name="password" autocomplete="current-password" value="{{ .Password }}">
|
|
|
|
<button type="submit">{{( pgettext "Login" "action" )}}</button>
|
|
</form>
|
|
</section>
|
|
</body>
|
|
</html>
|