Files
zbiorki_app/templates/login.html
Mateusz Gruszczyński e9db945bb4 przebudowa systemu
2025-08-28 10:27:06 +02:00

55 lines
2.5 KiB
HTML

{% extends 'base.html' %}
{% block title %}Logowanie{% endblock %}
{% block content %}
<div class="container my-5">
<div class="row justify-content-center">
<div class="col-sm-10 col-md-8 col-lg-5">
<div class="card shadow-sm">
<div class="card-header">
<h3 class="card-title mb-0">Logowanie</h3>
</div>
<div class="card-body">
<form method="post" class="needs-validation" novalidate>
{% set next_url = request.args.get('next') %}
{% if next_url %}
<input type="hidden" name="next" value="{{ next_url }}">
{% endif %}
<div class="mb-3">
<label for="username" class="form-label">Nazwa użytkownika</label>
<input type="text" class="form-control" id="username" name="username"
autocomplete="username" autocapitalize="none" spellcheck="false" required autofocus>
<div class="invalid-feedback">Podaj nazwę użytkownika.</div>
</div>
<div class="mb-2">
<label for="password" class="form-label d-flex justify-content-between align-items-center">
<span>Hasło</span>
<small id="capsWarning" class="text-muted" style="display:none;">CAPS LOCK
włączony</small>
</label>
<div class="input-group">
<input type="password" class="form-control" id="password" name="password"
autocomplete="current-password" required minlength="5">
<button type="button" class="btn btn-secondary rounded-end" id="togglePw"
aria-label="Pokaż/ukryj hasło">Pokaż</button>
<div class="invalid-feedback">Wpisz hasło (min. 5 znaków).</div>
</div>
</div>
<button type="submit" class="btn btn-primary w-100">Zaloguj</button>
</form>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block extra_scripts %}
<script src="{{ url_for('static', filename='js/walidacja_logowanie.js') }}"></script>
{% endblock %}