<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Authentification</title>
<link href="//maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<style>
{# html, body {
background-color: rgb(122, 163, 185);
} #}
html, body {
height: 100%;
margin: 0;
padding: 0;
}
body {
position: relative;
background: url('/assets/img/Bg3.png') no-repeat center center fixed;/*ancienne bgcanva3.png*/
background-size: cover;
}
body::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(255, 233, 201, 0.5); /* Couche blanche semi-transparente */
z-index: -1;
}
body {
font-family: "Poppins", sans-serif;
height: 100vh;
}
a {
color: rgb(64, 120, 148);
display: inline-block;
text-decoration: none;
font-weight: 400;
}
h2 {
text-align: center;
font-size: 16px;
font-weight: 600;
text-transform: uppercase;
display: inline-block;
margin: 40px 8px 10px 8px;
color: #cccccc;
}
.wrapper {
display: flex;
align-items: center;
flex-direction: column;
justify-content: center;
width: 100%;
min-height: 100%;
padding: 20px;
}
#formContent {
border-radius: 10px;
background: #fff;
width: 90%;
max-width: 600px;
position: relative;
padding: 30px 30px 30px 30px;
box-shadow: 0 30px 60px 0 rgba(0,0,0,0.3);
text-align: center;
}
#formTitle {
background-color: #f6f6f6;
border-top: 1px solid #dce8f1;
padding: 25px;
text-align: center;
border-radius: 0 0 10px 10px;
}
input[type=button], input[type=submit], input[type=reset] {
background-color:rgb(64, 120, 148);
border: none;
color: white;
padding: 15px 40px;
text-align: center;
text-decoration: none;
display: inline-block;
text-transform: uppercase;
font-size: 13px;
box-shadow: 0 10px 30px 0 rgba(95, 186, 233, 0.4);
border-radius: 5px;
margin: 5px 20px 40px 20px;
transition: all 0.3s ease-in-out;
}
input[type=button]:hover, input[type=submit]:hover, input[type=reset]:hover {
background-color:rgb(124, 168, 191);
}
input[type=text], input[type=password],input[type=email] {
background-color: #f6f6f6;
border: none;
color: #0d0d0d;
padding: 15px 32px;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
margin: 5px;
width: 85%;
border: 2px solid #f6f6f6;
transition: all 0.5s ease-in-out;
border-radius: 5px;
}
input[type=text]:focus, input[type=password]:focus {
background-color: #fff;
border-bottom: 2px solid rgb(124, 168, 191);
}
.fadeInDown {
animation: fadeInDown 1s both;
}
@keyframes fadeInDown {
0% {
opacity: 0;
transform: translate3d(0, -100%, 0);
}
100% {
opacity: 1;
transform: none;
}
}
*:focus {
outline: none;
}
.logo {
font-family: "Script MT";
font-size: 54px;
text-align: center;
color:rgb(242, 154, 78);
margin-bottom: 30px;
}
.logo .logo-font {
color:rgb(64, 120, 148);
}
@media only screen and (max-width: 767px) {
.logo {
font-size: 34px;
}
}
.sinscrire {
text-transform: uppercase;
font-size: 12px;
border-radius: 5px;
transition: all 0.3s ease-in-out;
border: 2px solid rgb(242,154,78);
color: white;
background-color: rgb(242,154,78);
padding: 10px 20px;
font-weight: bold;
}
/* Effet hover : inverser les couleurs */
.sinscrire:hover {
color: rgb(242,154,78);
background-color: white;
}
.reset-title {
font-size: 1.5rem; /* taille lisible */
font-weight: 600; /* semi-gras moderne */
color: #2c3e50; /* gris foncé élégant */
position: relative;
display: inline-block;
padding-bottom: 8px;
}
.reset-title::after {
content: "";
position: absolute;
left: 50%;
bottom: 0;
transform: translateX(-50%);
width: 60px;
height: 3px;
background: linear-gradient(90deg, rgb(64,120,148), rgb(242,154,78)); /* dégradé bleu moderne */
border-radius: 2px;
}
</style>
</head>
<body>
<div class="wrapper fadeInDown">
<div id="formContent">
{# <form method="post" action="{{ path('email_password') }}" class="login-form m-0">
<div class="logo d-flex justify-content-center">
<img src="{{ asset('img/logo.png') }}" alt="Logo" class="logo-img">
</div>
<input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}">
<div class="input-group mb-3">
<input id="email" type="email" class="form-control" placeholder="Email" name="email" required>
</div>
{% for message in app.flashes('error') %}
<div id="emailError" class="text-center" style="color: orange; font-weight: bold; font-size: 16px;">
{{ message }}
</div>
{% endfor %}
<div class="input-group mb-3">
<input type="password" class="form-control" placeholder="Mot de passe" name="password" id="password" required>
</div>
<div class="input-group mb-3">
<input type="password" class="form-control" placeholder="Confirmer le mot de passe" name="confirm_password" id="confirm_password" required>
</div>
<div id="passwordError" class="text-danger text-center mb-3 d-none" style="color: rgb(242,154,78);">
<p style="color: rgb(242,154,78);">Veuillez saisir des mots de passe identiques.</p>
</div>
<div class="text-center">
<input type="submit" id="registerBtn" class="btn btn-secondary mb-0" value="Envoyer" >
</div>
</form> #}
<h3 class="text-center mb-4 reset-title">Recevez un lien de réinitialisation par email</h3>
<form method="post" action="{{ path('forgot_password') }}">
<div class="input-group mb-3">
<input type="email" name="email" placeholder="Votre email" required class="form-control mb-3">
</div>
<button type="submit" class="btn sinscrire w-25">Envoyer</button>
{% for message in app.flashes('success') %}
<div class="alert alert-success mt-2">{{ message }}</div>
{% endfor %}
{% for message in app.flashes('error') %}
<div class="alert alert-danger mt-2">{{ message }}</div>
{% endfor %}
</form>
</div>
</div>
{# <script>
document.addEventListener("DOMContentLoaded", function () {
let password = document.getElementById("password");
let confirmPassword = document.getElementById("confirm_password");
let registerBtn = document.getElementById("registerBtn");
let passwordError = document.getElementById("passwordError");
function validatePassword() {
if (password.value !== confirmPassword.value || password.value === "") {
passwordError.classList.remove("d-none");
registerBtn.disabled = true;
} else {
passwordError.classList.add("d-none");
registerBtn.disabled = false;
}
}
password.addEventListener("keyup", validatePassword);
confirmPassword.addEventListener("keyup", validatePassword);
});
</script>
<script>
document.addEventListener("DOMContentLoaded", function () {
let emailField = document.getElementById("email");
let emailError = document.getElementById("emailError");
if (emailField && emailError) {
emailField.addEventListener("input", function () {
emailError.style.display = "none";
});
}
});
</script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script> #}
</body>
</html>