// Méthode permettant à l'utilisateur de s'inscrire après avoir rempli toutes les cases correctement.
        public ActionResult CreateUser(UtilisateurViewModelConnection vm)
        {
            if (!ModelState.IsValid)
            {
                return(View(vm));
            }
            if (db.Utilisateurs.Count(u => u.ID == vm.Utilisateur.ID) != 0)
            {
                ModelState.AddModelError("Utilisateur.ID", "Cette adresse e-mail est déjà utilisée");
                return(View(vm));
            }

            int i          = 1;
            var telephones = new List <Telephone>();

            while (i < Request.Form.AllKeys.Length)
            {
                if (Request.Form.AllKeys[i].Contains("prefixe"))
                {
                    telephones.Add(new Telephone()
                    {
                        Numéro        = Request.Form.GetValues(Request.Form.AllKeys[i + 1])[0],
                        Préfixe       = Request.Form.GetValues(Request.Form.AllKeys[i])[0],
                        UtilisateurID = vm.Utilisateur.ID
                    });
                    i++;
                }
                i++;
            }

            string id = db.AjouterUtilisateur(vm.Utilisateur.ID, vm.motDePasse, vm.Utilisateur.Nom, vm.Utilisateur.Prénom, TypeUtilisateur.EnAttente, telephones, vm.Lieu, vm.Utilisateur.Civilite, vm.Utilisateur.OtherInfo);

            FormsAuthentication.SetAuthCookie(id, false);
            return(Redirect("/"));
        }
Esempio n. 2
0
 // Méthode permettant à l'administrateur de créer un utilisateur après avoir instancié les données sur la page de création.
 public ActionResult Create(UtilisateurViewModelConnection vm)
 {
     if (ModelState.IsValid)
     {
         if (db.Utilisateurs.Count(u => u.ID == vm.Utilisateur.ID) == 0)
         {
             db.AjouterUtilisateur(vm.Utilisateur.ID, vm.motDePasse, vm.Utilisateur.Nom, vm.Utilisateur.Prénom, vm.Utilisateur.Type, vm.Utilisateur.Telephones, vm.Lieu, vm.Utilisateur.Civilite, vm.Utilisateur.OtherInfo);
             return(RedirectToAction("Index"));
         }
         ModelState.AddModelError("Utilisateur.ID", "Cette adresse e-mail est déjà utilisée");
     }
     return(View(vm));
 }