public IActionResult RegisterUser(User user) { if (ModelState.IsValid) { if (dbContext.User.Any(u => u.Email == user.Email)) { ModelState.AddModelError("Email", "Email already in use!"); return(View("Index")); } else { PasswordHasher <User> Hasher = new PasswordHasher <User>(); user.Password = Hasher.HashPassword(user, user.Password); dbContext.Add(user); dbContext.SaveChanges(); var AddedUser = dbContext.User.FirstOrDefault(u => u.Email == user.Email); HttpContext.Session.SetInt32("UserId", AddedUser.UserId); int?LoggedInUserId = HttpContext.Session.GetInt32("UserId"); return(RedirectToAction("ViewProfile", new { id = LoggedInUserId })); } } else { return(View("Index")); } }
public IActionResult Registration(User UserSubmission) { System.Console.WriteLine("*************************** Enter Registration Function ***************************"); if (ModelState.IsValid) { System.Console.WriteLine("*************************** Is Valid ***************************"); if (dbContext.User.Any(u => u.Email == UserSubmission.Email)) { System.Console.WriteLine("*************************** Email already in use error ***************************"); ModelState.AddModelError("Email", "Email already in use!"); return(View("Index")); } else { System.Console.WriteLine("*************************** Success, Hashing password ***************************"); PasswordHasher <User> Hasher = new PasswordHasher <User>(); UserSubmission.Password = Hasher.HashPassword(UserSubmission, UserSubmission.Password); dbContext.Add(UserSubmission); dbContext.SaveChanges(); HttpContext.Session.SetInt32("UserId", UserSubmission.UserId); return(RedirectToAction("accountpage")); } } System.Console.WriteLine("*************************** ModelState is not valid ***************************"); ModelState.AddModelError("Email", "Invalid Email/Password"); return(View("Index")); }
public IActionResult AddUser(UsersValidate uservalidator) { if (ModelState.IsValid) { PasswordHasher <UsersValidate> Hasher = new PasswordHasher <UsersValidate>(); uservalidator.password = Hasher.HashPassword(uservalidator, uservalidator.password); Users myUser = new Users(); myUser.firstname = uservalidator.firstname; myUser.lastname = uservalidator.lastname; myUser.email = uservalidator.email; myUser.password = uservalidator.password; myUser.created_at = DateTime.Now; myUser.updated_at = DateTime.Now; _context.Add(myUser); _context.SaveChanges(); HttpContext.Session.SetInt32("UserID", (int)myUser.usersid); int?UserID = HttpContext.Session.GetInt32("UserID"); ViewBag.UserID = UserID; return(RedirectToAction("Account")); } else { return(View("Index")); } }
public IActionResult Register(User _user) { // Check initial ModelState if (ModelState.IsValid) { // If a User exists with provided email if (dbContext.Users.Any(u => u.Email == _user.Email)) { // Manually add a ModelState error to the Email field, with provided // error message ModelState.AddModelError("Email", "Email already in use!"); return(Redirect("/")); // You may consider returning to the View at this point } // Initializing a PasswordHasher object, providing our User class as its PasswordHasher <User> Hasher = new PasswordHasher <User>(); _user.Password = Hasher.HashPassword(_user, _user.Password); dbContext.Add(_user); dbContext.SaveChanges(); return(Redirect("Login")); } else { // Oh no! We need to return a ViewResponse to preserve the ModelState, and the errors it now contains! return View("Index"); } }
public IActionResult Register(User newUser) { if (ModelState.IsValid) { if (dbContext.Users.Any(u => u.Email == newUser.Email)) { ModelState.AddModelError("Email", "Email is already in use"); return(View("Index")); } PasswordHasher <User> Hasher = new PasswordHasher <User>(); newUser.Password = Hasher.HashPassword(newUser, newUser.Password); dbContext.Add(newUser); dbContext.SaveChanges(); HttpContext.Session.SetInt32("InSession", newUser.UserId); return(RedirectToAction("Account", new{ id = newUser.UserId })); } return(RedirectToAction("Index")); }
public IActionResult CreateUser(User user) { if (ModelState.IsValid) { if (dbContext.Users.Any(u => u.Email == user.Email)) { ModelState.AddModelError("Email", "Email already taken"); return(View("Index")); } PasswordHasher <User> Hasher = new PasswordHasher <User>(); user.Password = Hasher.HashPassword(user, user.Password); dbContext.Add(user); dbContext.SaveChanges(); return(RedirectToAction("Login")); } else { return(View("Index")); } }
public IActionResult ProcessRegister(User newUser) { if (ModelState.IsValid) { if (dbContext.Users.Any(u => u.Email == newUser.Email)) { ModelState.AddModelError("Email", "Email already in use. Please log in."); return(View("Register")); } PasswordHasher <User> Hasher = new PasswordHasher <User> (); newUser.Password = Hasher.HashPassword(newUser, newUser.Password); dbContext.Add(newUser); dbContext.SaveChanges(); User loggedUser = dbContext.Users.FirstOrDefault((u => u.Email == newUser.Email)); HttpContext.Session.SetInt32("logged", loggedUser.Id); return(RedirectToAction("TransactionHistory", loggedUser.Id)); } else { return(View("Register")); } }
public IActionResult Register(RegisterViewModel model) { if (ModelState.IsValid) { User newUser = new User { FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, Password = model.Password }; _context.Add(newUser); _context.SaveChanges(); HttpContext.Session.SetString("UserName", newUser.FirstName + " " + newUser.LastName); HttpContext.Session.SetInt32("UserId", newUser.UserId); return(RedirectToAction("Account", "Transactions", new { userId = newUser.UserId })); } return(View("Registration")); }
public IActionResult CreateReg(User newUser) { if (ModelState.IsValid) { if (db.Users.Any(e => e.Email == newUser.Email)) { ModelState.AddModelError("Email", "Email is already being used"); } PasswordHasher <User> Hasher = new PasswordHasher <User>(); newUser.Password = Hasher.HashPassword(newUser, newUser.Password); db.Add(newUser); db.SaveChanges(); HttpContext.Session.SetInt32("User", newUser.UserId); return(RedirectToAction("Account", new { userId = newUser.UserId })); } else { return(View("Register")); } }