Esempio n. 1
0
        public async Task <IActionResult> ConfirmLogin(LoginAttemptConfirmInputModel model, CancellationToken cancellationToken)
        {
            _logger.LogInformation("Show confirm page for {LoginAttemptId}", model.Id);
            var loginAttemptId = model.Id.GetValueOrDefault();
            var loginAttempt   = await _mediator.Send(new GetLoginAttemptQuery(loginAttemptId), cancellationToken);

            if (loginAttempt?.Secret != model.Secret)
            {
                loginAttempt = null;
            }

            var viewModel = BuildLoginAttemptConfirmViewModel(loginAttemptId, loginAttempt);

            return(View(viewModel));
        }
Esempio n. 2
0
        public async Task <IActionResult> ConfirmLoginFinish(LoginAttemptConfirmInputModel model, string button, CancellationToken cancellationToken)
        {
            var loginAttemptId = model.Id.GetValueOrDefault();

            if (button != "yes")
            {
                _logger.LogInformation("Reject login attempt {LoginAttemptId}", loginAttemptId);
                var loginAttempt = await _mediator.Send(new RejectLoginAttemptCommand(loginAttemptId, model.Secret), cancellationToken);

                return(View(loginAttempt != null ? LoginAttemptStatus.Deleted : null));
            }
            else
            {
                _logger.LogInformation("Confirm login attempt {LoginAttemptId}", loginAttemptId);
                var loginAttempt = await _mediator.Send(new ApproveLoginAttemptCommand(loginAttemptId, model.Secret), cancellationToken);

                return(View(loginAttempt?.Status));
            }
        }