Complete dynamic site implementation: routes, templates, updated requirements and docker setup

This commit is contained in:
2025-09-21 17:39:56 +02:00
parent f96b7d47e0
commit 8b7ab9d66e
11 changed files with 1181 additions and 30 deletions

View File

@@ -0,0 +1,99 @@
{% extends "base.html" %}
{% block title %}Registrazione - Hersel.it{% endblock %}
{% block content %}
<div class="container mt-5">
<div class="row justify-content-center">
<div class="col-md-8 col-lg-6">
<div class="card shadow">
<div class="card-body p-5">
<div class="text-center mb-4">
<h2 class="card-title">Registrati</h2>
<p class="text-muted">Crea il tuo account su Hersel.it</p>
</div>
<form method="POST">
<div class="row">
<div class="col-md-6">
<div class="mb-3">
<label for="first_name" class="form-label">Nome</label>
<input type="text" class="form-control" id="first_name" name="first_name">
</div>
</div>
<div class="col-md-6">
<div class="mb-3">
<label for="last_name" class="form-label">Cognome</label>
<input type="text" class="form-control" id="last_name" name="last_name">
</div>
</div>
</div>
<div class="mb-3">
<label for="username" class="form-label">Username</label>
<div class="input-group">
<span class="input-group-text">
<i class="bi bi-person"></i>
</span>
<input type="text" class="form-control" id="username" name="username" required>
</div>
<div class="form-text">Minimo 3 caratteri, solo lettere, numeri e underscore</div>
</div>
<div class="mb-3">
<label for="email" class="form-label">Email</label>
<div class="input-group">
<span class="input-group-text">
<i class="bi bi-envelope"></i>
</span>
<input type="email" class="form-control" id="email" name="email" required>
</div>
</div>
<div class="mb-3">
<label for="password" class="form-label">Password</label>
<div class="input-group">
<span class="input-group-text">
<i class="bi bi-lock"></i>
</span>
<input type="password" class="form-control" id="password" name="password" required>
</div>
<div class="form-text">Minimo 8 caratteri con maiuscola, minuscola e numero</div>
</div>
<div class="mb-3">
<label for="confirm_password" class="form-label">Conferma Password</label>
<div class="input-group">
<span class="input-group-text">
<i class="bi bi-lock-fill"></i>
</span>
<input type="password" class="form-control" id="confirm_password" name="confirm_password" required>
</div>
</div>
<div class="mb-3 form-check">
<input type="checkbox" class="form-check-input" id="terms" name="terms" required>
<label class="form-check-label" for="terms">
Accetto i <a href="#" class="text-decoration-none">Termini e Condizioni</a>
</label>
</div>
<div class="d-grid">
<button type="submit" class="btn btn-primary btn-lg">
<i class="bi bi-person-plus"></i> Registrati
</button>
</div>
</form>
<div class="text-center mt-4">
<p class="mb-0">
Hai già un account?
<a href="{{ url_for('auth.login') }}" class="text-decoration-none">Accedi qui</a>
</p>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}