Files
print_forge/site/accounts/templates/accounts/login.html
T
westfarn b2029b6c0f Stand up Print Forge as a 3D-printed toy shop with color variants and printer photography.
Replaces the client_site template branding, adds shop/shipping, and points beta CI at master for easy deploy.

Closes #1
2026-09-06 08:28:04 -05:00

44 lines
1.8 KiB
HTML

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Sign in · Portal · {{ SITE_NAME }}</title>
<link rel="icon" href="{% static 'brand/favicon.ico' %}" type="image/x-icon">
<link rel="apple-touch-icon" href="{% static 'brand/apple-touch-icon.png' %}">
<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Work+Sans:300,400,500,700%7CPoppins:400,600,700">
<link rel="stylesheet" href="{% static 'css/portal.css' %}">
</head>
<body class="portal">
<div class="login-wrap">
<div class="login-card">
<h1>{{ SITE_NAME }} portal</h1>
<p class="sub">{{ SITE_TAGLINE }}</p>
<p class="sub" style="margin-top:0;margin-bottom:16px;font-size:13px">Leads, campaigns, and social — one place.</p>
{% if form.errors %}
<ul class="portal-flash">
<li class="error">Invalid email or password.</li>
</ul>
{% endif %}
<form class="form-grid" method="post" action="{% url 'accounts:login' %}">
{% csrf_token %}
{% if next %}<input type="hidden" name="next" value="{{ next }}">{% endif %}
<div class="field">
<label for="id_username">Email</label>
<input id="id_username" type="text" name="username" autocomplete="username" required value="{{ form.username.value|default:'' }}">
</div>
<div class="field">
<label for="id_password">Password</label>
<input id="id_password" type="password" name="password" autocomplete="current-password" required>
</div>
<button class="btn btn-primary" type="submit" data-tianji-event="login_submit">Sign in</button>
</form>
<p style="margin-top:16px;font-size:13px;color:#6b7280">
<a href="{% url 'public:home' %}">← Back to site</a>
</p>
</div>
</div>
</body>
</html>