43 lines
No EOL
1.8 KiB
HTML
43 lines
No EOL
1.8 KiB
HTML
{% extends "base.html" %}
|
|
|
|
{% block title %}Login - Mock API Admin{% endblock %}
|
|
|
|
{% block content %}
|
|
<div class="row justify-content-center mt-5">
|
|
<div class="col-md-6 col-lg-4">
|
|
<div class="card shadow">
|
|
<div class="card-header bg-primary text-white">
|
|
<h4 class="mb-0"><i class="bi bi-box-arrow-in-right"></i> Admin Login</h4>
|
|
</div>
|
|
<div class="card-body">
|
|
{% if error %}
|
|
<div class="alert alert-danger alert-dismissible fade show" role="alert">
|
|
{{ error }}
|
|
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
|
|
</div>
|
|
{% endif %}
|
|
<form method="post" action="/admin/login">
|
|
<div class="mb-3">
|
|
<label for="username" class="form-label">Username</label>
|
|
<input type="text" class="form-control" id="username" name="username" required autofocus>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label for="password" class="form-label">Password</label>
|
|
<input type="password" class="form-control" id="password" name="password" required>
|
|
</div>
|
|
<div class="d-grid">
|
|
<button type="submit" class="btn btn-primary">
|
|
<i class="bi bi-key"></i> Sign In
|
|
</button>
|
|
</div>
|
|
</form>
|
|
<hr class="my-4">
|
|
<p class="text-muted small">
|
|
Default credentials: <code>admin / admin123</code><br>
|
|
Change via environment variables.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{% endblock %} |