/// <summary> /// Adds a new user to the vending machine system /// </summary> /// <param name="user">Model that contains all the user information</param> public void RegisterUser(User user) { UserItem userItem = null; try { userItem = _db.GetUserItem(user.UserName); } catch (Exception) { } if (userItem != null) { throw new Exception("The username is already taken."); } if (user.Password != user.ConfirmPassword) { throw new Exception("The password and confirm password do not match."); } PasswordManager passHelper = new PasswordManager(user.Password); UserItem newUser = new UserItem() { UserName = user.UserName, Salt = passHelper.Salt, Hash = passHelper.Hash, }; _db.AddUserItem(newUser); LoginUser(newUser.UserName, user.Password); }