public ActionResult Login(string userName, string password) { string hash = HashwordHelper.GenerateSHA512String(password); User user = _userService.GetByUserNameAndPassword(userName, hash); if (user != null) { AuthenticationHelper.CreateAuthenticationCookie( new Guid(), user.UserName, user.Email, DateTime.Now.AddMinutes(15), GetUserRolesFromDatabase(user), true, user.FirstName, user.LastName); string[] roles = CookieHelper.GetUserRolesFromCookie(); string controllerName = ""; foreach (var role in roles) { if (role.Equals("Student")) { controllerName = "Product"; } else if (role.Equals("Admin") || role.Equals("Editor")) { controllerName = "Admin"; } } return(RedirectToAction("Index", controllerName)); } return(View()); }
public ActionResult Register(UserAddOrUpdateViewModel userAddOrUpdateViewModel) { User user = new User { Email = userAddOrUpdateViewModel.User.Email, FirstName = userAddOrUpdateViewModel.User.FirstName, Hashword = HashwordHelper.GenerateSHA512String(userAddOrUpdateViewModel.User.Hashword), LastName = userAddOrUpdateViewModel.User.LastName, UserName = userAddOrUpdateViewModel.User.UserName, }; string userName = userAddOrUpdateViewModel.User.UserName; string password = userAddOrUpdateViewModel.User.Hashword; int userId = _userService.Add(user).Id; UserRole userRole = new UserRole { RoleId = 3, UserId = userId }; _userRoleService.Add(userRole); ActionResult action = new AccountController(_userService, _userRoleService).Login(userName, password); return(action); }