public BaseResult <IUser> Authorize(LoginUser loginUser) { User user = _userRepository.GetByEmail(loginUser.LoginOrEmail); var result = new BaseResult <IUser>(); if (user.Password == Md5Hash.Generate(loginUser.Password)) { result.Success = true; result.Message = "User authorized!"; result.Data = new User { Id = user.Id, Name = user.Name, Email = user.Email }; } else { result.Success = false; result.Message = "Not authorized!"; } return(result); }
public bool Save(User user) { User u = context.Users.Where(x => x.Email == user.Email).FirstOrDefault(); if (u != null) { throw new EmailAlreadyExistsException("Email já está em uso"); } // Encrypts user password user.Password = Md5Hash.Generate(user.Password); var state = user.Id == 0 ? EntityState.Added : EntityState.Modified; context.Entry(user).State = state; context.Add(user); context.SaveChanges(); return(true); }
public User Update(LoginUser user) { var _user = context.Users.Where(x => x.Email == user.LoginOrEmail).FirstOrDefault(); if (_user != null) { // When user forgets the password, he can change it by sending the email user.Password = Md5Hash.Generate(user.Password); _user.Password = user.Password; context.Entry(_user).State = EntityState.Modified; context.SaveChanges(); } // Usuário não encontrado else { throw new UserNotFoundException("Usuário não encontrado"); } return(_user); }