Beispiel #1
0
            public async Task <CreateUserVm> Handle(CreateUserCommand request, CancellationToken cancellationToken)
            {
                var vm = new CreateUserVm();

                var user = await _userManager.FindByNameAsync(request.UserName);

                if (user == null)
                {
                    var created = await _userManager.CreateUserAsync(request.UserName, request.Password, request.Email);

                    if (created)
                    {
                        var addedUser = await _userManager.FindByNameAsync(request.UserName);

                        vm.Token    = _jwtGenerator.CreateToken(addedUser);
                        vm.Username = addedUser.UserName;

                        return(vm);
                    }

                    vm.Error = "Passwords did not match!";
                    return(vm);
                }

                vm.Error = "The user already exists!";
                return(vm);
            }
Beispiel #2
0
        public async Task <CurrentUserVm> Handle(LoginUserQuery request, CancellationToken cancellationToken)
        {
            var vm = new CurrentUserVm();

            var user = await _userManager.FindByNameAsync(request.Username);

            if (user != null)
            {
                var result = await _userManager.CheckPasswordAsync(user.UserName, request.Password);

                if (result != "")
                {
                    vm.Username = user.UserName;
                    vm.Token    = result;
                }
                else
                {
                    vm.Error    = "Wrong password!";
                    vm.Username = "";
                    vm.Token    = "";
                }
            }
            else
            {
                vm.Error    = "User does not exist!";
                vm.Username = "";
                vm.Token    = "";
            }

            return(vm);
        }
Beispiel #3
0
        public async Task<CurrentUserVm> Handle(CurrentUserQuery request, CancellationToken cancellationToken)
        {
            var vm = new CurrentUserVm();

            if (string.IsNullOrEmpty(_currentUser))
            {
                vm.Username = "";
            }
            else
            {
                var found = await _userManager.FindByNameAsync(_currentUser);

                if (found.UserName == _currentUser)
                {
                    vm.Username = _currentUser;
                }
                else
                {
                    vm.Username = "";
                }
            }

            return vm;
        }