{{define "title"}}Créer un compte |{{end}} {{define "body"}} <div class="d-flex"> <h2>Création d'un nouveau compte</h2> </div> {{if .ErrorMessage}} <div class="alert alert-danger mt-4">Impossible de créer le compte. <div style="font-size: 0.8em">{{ .ErrorMessage }}</div> </div> {{end}} {{if .WarningMessage}} <div class="alert alert-danger mt-4">Des erreurs se sont produites, le compte pourrait ne pas être totalement fonctionnel. <div style="font-size: 0.8em">{{ .WarningMessage }}</div> </div> {{end}} {{if .Success}} <div class="alert alert-success mt-4"> Le compe a été créé ! Rendez-vous <a href="/logout">sur la page d'accueil</a> pour vous connecter avec ce nouveau compte. </div> {{else}} <form method="POST" class="mt-4"> <div class="form-group"> <label for="displayname">Nom affiché :</label> <input type="text" id="displayname" name="displayname" class="form-control" value="{{ .DisplayName }}" /> </div> <div class="form-group"> <label for="mail">Email :</label> <input type="text" id="mail" name="mail" class="form-control" value="{{ .Mail }}" /> <small class="form-text text-muted"> Le courriel de l'utilisateur. </small> </div> <div class="form-group"> <label for="givenname">Prénom :</label> <input type="text" id="givenname" name="givenname" class="form-control" value="{{ .GivenName }}" /> </div> <div class="form-group"> <label for="surname">Nom de famille :</label> <input type="text" id="surname" name="surname" class="form-control" value="{{ .Surname }}" /> </div> <div class="form-group"> <label for="username">Identifiant souhaité :</label> <input type="text" id="username" name="username" class="form-control" value="{{ .Username }}" /> <small class="form-text text-muted"> Votre identifiant doit être en minuscule. </small> </div> <div id="calc-uid"></div> <div id="calc-cn"></div> {{if .ErrorInvalidUsername}} <div class="alert alert-warning"> Nom d'utilisateur invalide. Ne peut contenir que les caractères suivants : chiffres, lettres minuscules, point, tiret bas (_) et tiret du milieu (-). </div> {{end}} {{if .ErrorUsernameTaken}} <div class="alert alert-warning"> Ce nom d'utilisateur est déjà pris. </div> {{end}} <p><a href="#" onClick="javascript:var suggestPW = Math.random().toString(36).slice(-10); document.getElementById('password').value='{{ .SuggestPW }}';document.getElementById('password2').value='{{ .SuggestPW }}';">Utiliser ce mot de passe :</a> {{ .SuggestPW }}</p> <div class="form-group"> <label for="password">Mot de passe :</label> <input type="password" id="password" name="password" class="form-control" /> <small class="form-text text-muted"> La seule contrainte est que votre mot de passe doit faire au moins 8 caractères. Utilisez chiffres, majuscules, et caractères spéciaux sans modération ! </small> </div> {{if .ErrorPasswordTooShort}} <div class="alert alert-warning"> Le mot de passe choisi est trop court (minimum 8 caractères). </div> {{end}} <div class="form-group"> <label for="password2">Répéter le mot de passe :</label> <input type="password" id="password2" name="password2" class="form-control" /> </div> {{if .ErrorPasswordMismatch}} <div class="alert alert-warning"> Les deux mots de passe entrés ne correspondent pas. </div> {{end}} <button type="submit" class="btn btn-primary">Créer le compte</button> </form> <script lang="javascript"> function changeDisplayname () { displayname = document.getElementById("displayname"); username = document.getElementById("username"); givenname = document.getElementById("givenname"); surname = document.getElementById("surname"); if (!username.value) { username.value = displayname.value; changeUsername(); } if (!givenname.value) { givenname.value = displayname.value.split(" ")[0]; } if (!surname.value) { surname.value = displayname.value.split(" ")[1]; } } function changeUsername () { username = document.getElementById("username"); calcCn = document.getElementById("calc-cn"); username.value = username.value.toLowerCase().replace(/[^A-z0-9.-]/g, ''); calcCn.innerText = "Login Name et Courriel seront : " + username.value.split("@")[0] + "@lesgv.com"; } document.getElementById("username").addEventListener("change",changeUsername); document.getElementById("displayname").addEventListener("change",changeDisplayname); </script> {{end}} {{end}}