public ActionResult Registration([Bind(Exclude = "IsEmailVerified, ActivationCode")] UserRegistration model) { var user = new Users() { UserName = model.UserName, Password = model.Password, Email = model.Email, ConfirmPassword = model.ConfirmPassword, ActivationCode = model.ActivationCode, IsEmailVerified = model.IsEmailVerified, Role = model.Role }; bool Status = false; string message = ""; //Model Validation if (ModelState.IsValid) { #region Email is already exist var isExist = IsEmailExist(user.Email); if (isExist) { ModelState.AddModelError("EmailExist", "Email alrerady exist"); return(View(model)); } #endregion #region Generate Activation Code user.ActivationCode = Guid.NewGuid(); #endregion #region Password hashing user.Password = Crypto.Hash(user.Password); user.ConfirmPassword = Crypto.Hash(user.ConfirmPassword); #endregion user.IsEmailVerified = false; #region Save to DataBAse using (DuomenuBazeEntities db = new DuomenuBazeEntities()) { db.Users.Add(user); db.SaveChanges(); //Send email to user SendeVerificationEmail(user.Email, user.ActivationCode.ToString()); message = "Jūs užsiregistravote sėkmingai. Aktyvacijos nuoroda buvo išsiųstas jūsų paštu:" + user.Email; Status = true; } #endregion } else { message = "Invalid request"; } ViewBag.Message = message; ViewBag.Status = Status; return(View(model)); }
public ActionResult Create([Bind(Exclude = "IsEmailVerified, ActivationCode")] CreateViewModel model) { var user = new Users() { UserName = model.UserName, FirstName = model.FirstName, LastName = model.LastName, Password = model.Password, Email = model.Email, BirthDate = model.BirthDate, PhoneNumber = model.PhoneNumber, ConfirmPassword = model.ConfirmPassword, ActivationCode = model.ActivationCode, IsEmailVerified = model.IsEmailVerified, Subscriptions = model.Subscriptions, Role = model.Role }; bool Status = false; string message = ""; //Model Validation if (ModelState.IsValid) { #region Email is already exist var isExist = IsEmailExist(user.Email); if (isExist) { ModelState.AddModelError("EmailExist", "Email alrerady exist"); return(View(model)); } #endregion #region Generate Activation Code user.ActivationCode = Guid.NewGuid(); #endregion #region Password hashing user.Password = Crypto.Hash(user.Password); user.ConfirmPassword = Crypto.Hash(user.ConfirmPassword); #endregion user.IsEmailVerified = false; #region Save to DataBAse db.Users.Add(user); db.SaveChanges(); //Send email to user SendeVertificationEmail(user.Email, user.ActivationCode.ToString()); Status = true; return(RedirectToAction("UsersList")); #endregion } else { message = "Invalid request"; } ViewBag.Message = message; ViewBag.Status = Status; return(View(model)); }