public ActionResult Create(ManagersCooperativesViewModels managerCoop) { if (ModelState.IsValid && validForm(managerCoop)) { // Si la coopérative existe, on ne l'ajoute pas en BD if (managerCoop.manager.IDCooperative == 0 || managerCoop.manager.IDCooperative == null) { db.Cooperative.Add(managerCoop.cooperative); db.SaveChanges(); managerCoop.manager.IDCooperative = managerCoop.cooperative.IDCooperative; } managerCoop.manager.ManagerPassword = UtilResources.EncryptPassword(Request.Form["password1"]); db.Manager.Add(managerCoop.manager); db.SaveChanges(); return(RedirectToAction("Index", "Home")); } if (!ModelState.IsValid) { ModelState.AddModelError("", UtilResources.GetLabel("Tous les champs doivent contenir une valeur")); } return(View(managerCoop)); }
public bool validForm(ManagersCooperativesViewModels managerCoop) { bool valid = true; //validation si les mots de passes sont pareils if (Request.Form["password1"] == "" || Request.Form["password2"] == "" || (Request.Form["password2"] != Request.Form["password1"])) { valid = false; ModelState.AddModelError("", UtilResources.GetLabel("Les mots de passe ne correspondent pas")); } //validation si la cooperative existe déjà dans la base de données if (db.Cooperative.Any(o => o.Name == managerCoop.cooperative.Name)) { //Met à jour les données de la coopérative Cooperative temp = db.Cooperative.Where(o => o.Name == managerCoop.cooperative.Name).First(); managerCoop.manager.IDCooperative = temp.IDCooperative; temp.NoStreet = managerCoop.cooperative.NoStreet; temp.Street = managerCoop.cooperative.Street; temp.PostalCode = managerCoop.cooperative.PostalCode; temp.City = managerCoop.cooperative.City; db.Entry(temp).State = EntityState.Modified; db.SaveChanges(); } //validation pour le courriel if (managerCoop.manager.Email != "" || managerCoop.manager.Email != null) { try { MailAddress mail = new MailAddress(managerCoop.manager.Email); } catch (FormatException) { ModelState.AddModelError("", UtilResources.GetLabel("L'adresse courriel n'est pas valide.")); valid = false; } } else { ModelState.AddModelError("", UtilResources.GetLabel("L'adresse courriel n'est pas valide.")); valid = false; } // On regarde si l'email est déjà en BD if (db.Manager.Any(o => o.Email == managerCoop.manager.Email)) { valid = false; ModelState.AddModelError("", UtilResources.GetLabel("L'adresse courriel est déjà utilisé")); } return(valid); }
public ActionResult Create([Bind(Include = "IDStudent,FirstName,LastName,Email,PhoneNumber,StudentPassword")] Student student) { if (ModelState.IsValid && validForm()) { student.StudentPassword = UtilResources.EncryptPassword(Request.Form["password1"]); db.Student.Add(student); db.SaveChanges(); return(RedirectToAction("Index", "Home")); } if (!ModelState.IsValid) { ModelState.AddModelError("", UtilResources.GetLabel("Tous les champs doivent contenir une valeur")); } return(View(student)); }
// Valide si les informations entrés par l'utilisateur sont corrects public bool validForm() { bool valid = true; //validation si les mots de passes sont pareils if (Request.Form["password1"] == null || Request.Form["password2"] == null || (Request.Form["password2"] != Request.Form["password1"])) { valid = false; ModelState.AddModelError("", UtilResources.GetLabel("Les mots de passe ne correspondent pas")); } // Numero Telephone validation // L'utilisateur à le choix de ne pas écrire son # de téléphone if (Request.Form["PhoneNumber"] != "") { // À l'aide des Regular Expression, on regarde si le numéro de téléphone est du bon format. string strIn = Request.Form["PhoneNumber"]; string re1 = @"^((\(\d{3}\) ?)|(\d{3}-))?\d{3}-\d{4}$"; // RegEx du numero de telephone Regex r = new Regex(re1, RegexOptions.IgnoreCase | RegexOptions.Singleline); Match m = r.Match(strIn); if (m.Success) { String int1 = m.Groups[1].ToString(); Console.Write("(" + int1.ToString() + ")" + "\n"); // On doit également vérifier si le numéro n'est pas déjà dans la base de donnée if (db.Student.Any(o => o.PhoneNumber == strIn)) { valid = false; ModelState.AddModelError("", UtilResources.GetLabel("Ce numéro de téléphone est déjà utilisé")); } } else { valid = false; ModelState.AddModelError("", UtilResources.GetLabel("Numéro de téléphone doit être sous le format: xxx-xxx-xxxx")); } } // Email validation string strEmail = Request.Form["Email"]; if (strEmail != "" || strEmail != null) { try { MailAddress mail = new MailAddress(strEmail); } catch (FormatException) { ModelState.AddModelError("", UtilResources.GetLabel("L'adresse courriel n'est pas valide.")); valid = false; } } else { ModelState.AddModelError("", UtilResources.GetLabel("L'adresse courriel n'est pas valide.")); valid = false; } // On regarde si l'email est déjà en BD if (db.Student.Any(o => o.Email == strEmail)) { valid = false; ModelState.AddModelError("", UtilResources.GetLabel("L'adresse courriel est déjà utilisé")); } return(valid); }