private async Task UpdateExternalLoginSettingsAsync(ExternalLoginProviderSettingsEditDto input) { await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.Host.Facebook, input.Facebook == null || !input.Facebook.IsValid() ?_settingDefinitionManager.GetSettingDefinition(AppSettings.ExternalLoginProvider.Host.Facebook) .DefaultValue : input.Facebook.ToJsonString() ); await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.Host.Google, input.Google == null || !input.Google.IsValid() ?_settingDefinitionManager.GetSettingDefinition(AppSettings.ExternalLoginProvider.Host.Google) .DefaultValue : input.Google.ToJsonString() ); await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.Host.Twitter, input.Twitter == null || !input.Twitter.IsValid() ?_settingDefinitionManager.GetSettingDefinition(AppSettings.ExternalLoginProvider.Host.Twitter) .DefaultValue : input.Twitter.ToJsonString() ); await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.Host.Microsoft, input.Microsoft == null || !input.Microsoft.IsValid() ?_settingDefinitionManager.GetSettingDefinition(AppSettings.ExternalLoginProvider.Host.Microsoft) .DefaultValue : input.Microsoft.ToJsonString() ); await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.Host.OpenIdConnect, input.OpenIdConnect == null || !input.OpenIdConnect.IsValid() ?_settingDefinitionManager .GetSettingDefinition(AppSettings.ExternalLoginProvider.Host.OpenIdConnect).DefaultValue : input.OpenIdConnect.ToJsonString() ); await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.OpenIdConnectMappedClaims, input.OpenIdConnectClaimsMapping.IsNullOrEmpty() ?_settingDefinitionManager .GetSettingDefinition(AppSettings.ExternalLoginProvider.OpenIdConnectMappedClaims).DefaultValue : input.OpenIdConnectClaimsMapping.ToJsonString() ); await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.Host.WsFederation, input.WsFederation == null || !input.WsFederation.IsValid() ?_settingDefinitionManager .GetSettingDefinition(AppSettings.ExternalLoginProvider.Host.WsFederation).DefaultValue : input.WsFederation.ToJsonString() ); await SettingManager.ChangeSettingForApplicationAsync( AppSettings.ExternalLoginProvider.WsFederationMappedClaims, input.WsFederationClaimsMapping.IsNullOrEmpty() ?_settingDefinitionManager .GetSettingDefinition(AppSettings.ExternalLoginProvider.WsFederationMappedClaims).DefaultValue : input.WsFederationClaimsMapping.ToJsonString() ); ExternalLoginOptionsCacheManager.ClearCache(); }
private async Task UpdateExternalLoginSettingsAsync(ExternalLoginProviderSettingsEditDto input) { await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.Tenant.Facebook, input.Facebook == null || !input.Facebook.IsValid()? "" : input.Facebook.ToJsonString() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.Tenant.Google, input.Google == null || !input.Google.IsValid()? "" : input.Google.ToJsonString() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.Tenant.Twitter, input.Twitter == null || !input.Twitter.IsValid()? "" : input.Twitter.ToJsonString() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.Tenant.Microsoft, input.Microsoft == null || !input.Microsoft.IsValid()? "" : input.Microsoft.ToJsonString() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.Tenant.OpenIdConnect, input.OpenIdConnect == null || !input.OpenIdConnect.IsValid()? "" : input.OpenIdConnect.ToJsonString() ); var openIdConnectMappedClaimsValue = ""; if (input.OpenIdConnect == null || !input.OpenIdConnect.IsValid() || input.OpenIdConnectClaimsMapping.IsNullOrEmpty()) { openIdConnectMappedClaimsValue = await SettingManager.GetSettingValueForApplicationAsync(AppSettings.ExternalLoginProvider.OpenIdConnectMappedClaims);//set default value } else { openIdConnectMappedClaimsValue = input.OpenIdConnectClaimsMapping.ToJsonString(); } await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.OpenIdConnectMappedClaims, openIdConnectMappedClaimsValue ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.Tenant.WsFederation, input.WsFederation == null || !input.WsFederation.IsValid()? "" : input.WsFederation.ToJsonString() ); var wsFederationMappedClaimsValue = ""; if (input.WsFederation == null || !input.WsFederation.IsValid() || input.WsFederationClaimsMapping.IsNullOrEmpty()) { wsFederationMappedClaimsValue = await SettingManager.GetSettingValueForApplicationAsync(AppSettings.ExternalLoginProvider.WsFederationMappedClaims);//set default value } else { wsFederationMappedClaimsValue = input.WsFederationClaimsMapping.ToJsonString(); } await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.ExternalLoginProvider.WsFederationMappedClaims, wsFederationMappedClaimsValue ); ExternalLoginOptionsCacheManager.ClearCache(); }