public ActionResult Create(ENSEIGNANT enseignant) { enseignant.LOGIN = enseignant.NOM; RegisterModel rg = new RegisterModel(); userC.isLoginAlreadyUsed(enseignant.NOM); string motDePasse = Request.Form["Mot de passe"]; if (motDePasse.Length < 6) { ViewBag.ERROR = "Veuillez entrer un mot de passe de plus de 6 caractères."; return View(enseignant); } string profil = Request.Form["Profil"]; string username = enseignant.NOM; string usernameBase = username; int valeurAutre = 1; if (ModelState.IsValid) { while (userC.isLoginAlreadyUsed(username)) { username = usernameBase + valeurAutre.ToString(); } rg.UserName = username; rg.Password = motDePasse; rg.ConfirmPassword = motDePasse; // On enregistre la personne dans la BD ! dak.Register(rg); if (profil.Equals("Super_user")) { Roles.AddUserToRole(rg.UserName, "Super_user"); Roles.AddUserToRole(rg.UserName, "Normal_user"); } else { Roles.AddUserToRole(rg.UserName, "Normal_user"); } enseignant.LOGIN = username; db.ENSEIGNANTs.Add(enseignant); db.SaveChanges(); // Permettra de renvoyer à la vue le login effectivement enregistré dans la BD ViewBag.LOGIN = username; //return RedirectToAction("Index"); return View(enseignant); } return View(enseignant); }
public ActionResult Register(RegisterModel model) { if (ModelState.IsValid) { // Tentative d'inscription de l'utilisateur try { WebSecurity.CreateUserAndAccount(model.UserName, model.Password); //WebSecurity.Login(model.UserName, model.Password); return RedirectToAction("Index", "Home"); } catch (MembershipCreateUserException e) { ModelState.AddModelError("", ErrorCodeToString(e.StatusCode)); } } // Si nous sommes arrivés là, quelque chose a échoué, réafficher le formulaire return View(model); }