public async Task <IActionResult> MethodUpdate(AuthenticationMethodModel model) { var eam = _openAuthenticationService.LoadAuthenticationProviderBySystemName(model.SystemName); if (eam.IsMethodActive(_externalAuthenticationSettings)) { if (!model.IsActive) { //mark as disabled _externalAuthenticationSettings.ActiveAuthenticationMethodSystemNames.Remove(eam.SystemName); await _settingService.SaveSetting(_externalAuthenticationSettings); } } else { if (model.IsActive) { //mark as active _externalAuthenticationSettings.ActiveAuthenticationMethodSystemNames.Add(eam.SystemName); await _settingService.SaveSetting(_externalAuthenticationSettings); } } return(new JsonResult("")); }
private async Task PrepareExternalAuth(CustomerInfoModel model, GetInfo request) { model.NumberOfExternalAuthenticationProviders = _externalAuthenticationService .LoadActiveAuthenticationProviders(request.Customer, request.Store).Count; foreach (var ear in await _externalAuthenticationService.GetExternalIdentifiers(request.Customer)) { if (!_externalAuthenticationService.AuthenticationProviderIsAvailable(ear.ProviderSystemName)) { continue; } var authMethod = _externalAuthenticationService.LoadAuthenticationProviderBySystemName(ear.ProviderSystemName); model.AssociatedExternalAuthRecords.Add(new CustomerInfoModel.AssociatedExternalAuthModel { Id = ear.Id, Email = ear.Email, ExternalIdentifier = ear.ExternalDisplayIdentifier, AuthMethodName = authMethod.FriendlyName }); } }