templates/security/register.html.twig line 1
{% extends 'base.html.twig' %}
{% block title %}Inscription{% endblock %}
{% block body_class %}bg-biologie effect-bg-1 center{% endblock %}
{% block body %}
<div class="container">
<div class="row justify-content-center">
<div class="col-12 col-md-8">
<div class="bg-primary-transparent p-5 my-5">
<img src="{{ asset('images/identity/logo_short.png') }}" alt="Logo la brume">
<h1>Inscription</h1>
<p>Déjà inscrit ? <a href="{{ path('app_login') }}">Connexion</a></p>
{{ form_start(registrationForm) }}
<div class="form-group">
{{ form_label(registrationForm.username) }}
{{ form_errors(registrationForm.username) }}
{{ form_widget(registrationForm.username) }}
{{ form_help(registrationForm.username) }}
</div>
<div class="form-group">
{{ form_label(registrationForm.email) }}
{{ form_errors(registrationForm.email) }}
{{ form_widget(registrationForm.email) }}
</div>
{{ form_row(registrationForm.plainPassword) }}
<div class="form-group d-flex align-items-center">
<label class="toggleButton">
<input type="checkbox" name="newsletter">
<span>
<svg viewBox="0 0 44 44">
<path d="M14,24 L21,31 L39.7428882,11.5937758 C35.2809627,6.53125861 30.0333333,4 24,4 C12.95,4 4,12.95 4,24 C4,35.05 12.95,44 24,44 C35.05,44 44,35.05 44,24 C44,19.3 42.5809627,15.1645919 39.7428882,11.5937758" transform="translate(-2.000000, -2.000000)"></path>
</svg>
</span>
</label>
<p class="mb-0">S'inscrire à la Newsletter.<br><small class="text-muted">Vous pouvez vous désisncrire à tout moment de notre Newsletter.</small></p>
</div>
<div class="form-group d-flex align-items-center">
<p class="mb-0">En validant votre inscription, vous acceptez les <a href="{{ path('app_page_cgu') }}" target="_blank" rel="nofollow">conditions générales d'utilisation</a>.</p>
</div>
<input type="submit" class="btn mt-4" value="Inscription">
{{ form_end(registrationForm) }}
</div>
</div>
</div>
</div>
<div class="bg-effect"></div>
{% endblock %}
{% block footer_scripts %}
<script>
$(document).ready(function() {
let show_password =
'<div class="Control-label--showPassword">'+
'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="32" height="32" class="svg-toggle-password" title="Toggle Password Security">'+
'<title>Afficher/Masquer le mot de passe</title>'+
'<path d="M24,9A23.654,23.654,0,0,0,2,24a23.633,23.633,0,0,0,44,0A23.643,23.643,0,0,0,24,9Zm0,25A10,10,0,1,1,34,24,10,10,0,0,1,24,34Zm0-16a6,6,0,1,0,6,6A6,6,0,0,0,24,18Z"/>'+
'<rect x="20.133" y="2.117" height="44" transform="translate(23.536 -8.587) rotate(45)" class="closed-eye"/>'+
'<rect x="22" y="3.984" width="4" height="44" transform="translate(25.403 -9.36) rotate(45)" style="fill:#fff" class="closed-eye"/>'+
'</svg>'+
'</div>'
$('.password').each(function(){
$(this).append(show_password);
});
let show_test = '<div class="strength-lines"><div class="line"></div><div class="line"></div><div class="line"></div></div>'
$('.password').first().append(show_test)
// hide/show password
$(".Control-label--showPassword").click(function() {
$(".closed-eye").toggleClass("open");
let input = $(".ControlInput--password");
if (input.attr("type") == "password") {
input.attr("type", "text");
} else {
input.attr("type", "password");
}
});
// strength validation on keyup-event
$(".ControlInput--password").first().on("keyup", function() {
let val = $(this).val(),
color = testPasswordStrength(val);
styleStrengthLine(color, val);
});
// check password strength
function testPasswordStrength(value) {
let strongRegex = new RegExp(
'^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[=/\()%ยง!@#$%^&*])(?=.{8,})'
),
mediumRegex = new RegExp(
'^(((?=.*[a-z])(?=.*[A-Z]))|((?=.*[a-z])(?=.*[0-9]))|((?=.*[A-Z])(?=.*[0-9])))(?=.{6,})'
);
if (strongRegex.test(value)) {
return "green";
} else if (mediumRegex.test(value)) {
return "orange";
} else {
return "red";
}
}
function styleStrengthLine(color, value) {
$(".line")
.removeClass("bg-red bg-orange bg-green")
.addClass("bg-transparent");
if (value) {
if (color === "red") {
$(".line:nth-child(1)")
.removeClass("bg-transparent")
.addClass("bg-red");
} else if (color === "orange") {
$(".line:not(:last-of-type)")
.removeClass("bg-transparent")
.addClass("bg-orange");
} else if (color === "green") {
$(".line")
.removeClass("bg-transparent")
.addClass("bg-green");
}
}
}
});
</script>
{% endblock %}