예제 #1
0
 public void AddUser(UserViewModel user)
 {
     EmailSend.SendEmailTo(user.Email, "Registered at Teacher Kit", "You have registered succesfully " + user.FirstName + " " + user.LastName);
     user.Password  = PasswordEncoder.EncodePasswordMd5(user.Password);
     user.TokenGuid = null;
     _userRepository.AddUser(_mapper.Map <UserModel>(user));
 }
예제 #2
0
        public UserViewModel LogIn(string username, string password)
        {
            var matchedUser = _userRepository.GetUser(username);

            if (matchedUser == null)
            {
                return(new UserViewModel());
            }
            if (!matchedUser.Password.Equals(PasswordEncoder.EncodePasswordMd5(password)))
            {
                return(new UserViewModel());
            }
            if (matchedUser.TokenGuid != null)
            {
                return(_mapper.Map <UserViewModel>(matchedUser));
            }
            var guidString = System.Guid.NewGuid().ToString();

            matchedUser.TokenGuid = guidString;
            _userRepository.Update(matchedUser);
            return(_mapper.Map <UserViewModel>(matchedUser));
        }
예제 #3
0
        public void Update(UserCommandViewModel updatedUser)
        {
            if (updatedUser.FirstName.Equals("") || updatedUser.LastName.Equals("") || updatedUser.Email.Equals("") ||
                updatedUser.OldPassword.Equals("") || updatedUser.NewPassword.Equals("") || updatedUser.RepeatPassword.Equals(""))
            {
                throw new ArgumentException("Empty field");
            }
            if (!updatedUser.NewPassword.Equals(updatedUser.RepeatPassword))
            {
                throw new ArgumentException("New password is not the same as Repeat Password");
            }
            var actualUser = _userRepository.GetUser(updatedUser.Id, PasswordEncoder.EncodePasswordMd5(updatedUser.OldPassword));

            if (actualUser == null)
            {
                throw new InexistentResourceException("Invalid combination of id and password");
            }
            actualUser.FirstName = updatedUser.FirstName;
            actualUser.LastName  = updatedUser.LastName;
            actualUser.Email     = updatedUser.Email;
            actualUser.Password  = PasswordEncoder.EncodePasswordMd5(updatedUser.NewPassword);
            _userRepository.Update(actualUser);
        }