public async Task <Unit> Handle(Command request, CancellationToken cancellationToken) { User user; if (string.IsNullOrEmpty(request.UsernameOrEmail)) { user = await _userAccessor.GetCurrentUserAsync(); } else { user = await _userManager.FindUserByUsernameOrEmailAsync(request.UsernameOrEmail); } var template = new PasswordChangedTemplate { DisplayName = user.DisplayName, ArpaLogo = $"{_jwtConfiguration.Audience}/images/arpa_logo.png", ClubAddress = _clubConfiguration.Address, ClubMail = _clubConfiguration.Email, ClubName = _clubConfiguration.Name, ClubPhoneNumber = _clubConfiguration.Phone }; await _emailSender.SendTemplatedEmailAsync(template, user.Email); return(Unit.Value); }
public async Task <ActionResult> ResetPassword(CompletePasswordResetViewModel vm) { var user = await _userContextService.GetCurrentContextAsync(); if (user.IsCofoundryUser()) { return(await GetLoggedInDefaultRedirectActionAsync()); } var template = new PasswordChangedTemplate(); var settings = await _queryExecutor.ExecuteAsync(new GetSettingsQuery <GeneralSiteSettings>()); template.ApplicationName = settings.ApplicationName; await _authenticationHelper.CompletePasswordResetAsync(this, vm, template, _adminUserArea); if (ModelState.IsValid) { var completeViewPath = ViewPathFormatter.View(CONTROLLER_NAME, nameof(ResetPassword) + "Complete"); return(View(completeViewPath)); } var viewPath = ViewPathFormatter.View(CONTROLLER_NAME, nameof(ResetPassword)); return(View(viewPath, vm)); }