public async Task <IActionResult> ConfirmEmail(ConfirmEmailParameters parameters)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.Values.SelectMany(state => state.Errors)
                                  .Select(error => error.ErrorMessage)
                                  .FirstOrDefault()));
            }

            if (parameters.UserId == null || parameters.Token == null)
            {
                return(BadRequest());
            }

            var user = await _userManager.FindByIdAsync(parameters.UserId);

            if (user == null)
            {
                _logger.LogInformation("User does not exist: {0}", parameters.UserId);
                return(BadRequest("User does not exist"));
            }

            string token  = parameters.Token;
            var    result = await _userManager.ConfirmEmailAsync(user, token);

            if (!result.Succeeded)
            {
                _logger.LogInformation("User Email Confirmation Failed: {0}", result.Errors.FirstOrDefault()?.Description);
                return(BadRequest(result.Errors.FirstOrDefault()?.Description));
            }

            await _signInManager.SignInAsync(user, true);

            return(Ok(new { success = "true" }));
        }
        public async Task <APIResponse> ConfirmEmail(ConfirmEmailParameters parameters)
        {
            if (!ModelState.IsValid)
            {
                return(new APIResponse(400, "User Model is Invalid"));
            }

            if (parameters.UserId == null || parameters.Token == null)
            {
                return(new APIResponse(404, "User does not exist"));
            }

            var user = await _userManager.FindByIdAsync(parameters.UserId);

            if (user == null)
            {
                _logger.LogInformation("User does not exist: {0}", parameters.UserId);
                return(new APIResponse(404, "User does not exist"));
            }

            string token  = parameters.Token;
            var    result = await _userManager.ConfirmEmailAsync(user, token);

            if (!result.Succeeded)
            {
                _logger.LogInformation("User Email Confirmation Failed: {0}", result.Errors.FirstOrDefault()?.Description);
                return(new APIResponse(400, "User Email Confirmation Failed"));
            }

            await _signInManager.SignInAsync(user, true);

            return(new APIResponse(200, "Success"));
        }
Example #3
0
        public async Task <ClientApiResponse> ConfirmEmail(ConfirmEmailParameters confirmEmailParameters)
        {
            ClientApiResponse apiResponse = await _authorizeApi.ConfirmEmail(confirmEmailParameters);

            NotifyAuthenticationStateChanged(GetAuthenticationStateAsync());
            return(apiResponse);
        }
Example #4
0
        public async Task ConfirmEmail(ConfirmEmailParameters confirmEmailParameters)
        {
            await _authorizeApi.ConfirmEmail(confirmEmailParameters);

            NotifyAuthenticationStateChanged(GetAuthenticationStateAsync());
        }
 public async Task ConfirmEmail(ConfirmEmailParameters confirmEmailParameters)
 {
     await _httpClient.PostJsonAsync <UserInfo>("api/Authorize/ConfirmEmail", confirmEmailParameters);
 }
 public async Task <ClientApiResponse> ConfirmEmail(ConfirmEmailParameters confirmEmailParameters)
 {
     return(await _httpClient.PostJsonAsync <ClientApiResponse>("api/Authorize/ConfirmEmail", confirmEmailParameters));
 }