public async Task ChangeLanguage(ChangeUserLanguageDto input) { if (AbpSession.TenantId != null) { await SettingManager.ChangeSettingForTenantAsync( AbpSession.TenantId.Value, LocalizationSettingNames.DefaultLanguage, input.LanguageName ); } }
/// <summary> /// Changes setting for tenant with fallback to application /// </summary> /// <param name="name">Setting name</param> /// <param name="value">Setting value</param> protected async Task ChangeSettingAsync(string name, string value) { if (AbpSession.TenantId.HasValue) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.TenantId.Value, name, value); } else { await SettingManager.ChangeSettingForApplicationAsync(name, value); } }
public async Task Change(SettingDto[] input) { if (AbpSession.TenantId == null) { throw new UserFriendlyException(L("YouShouldLoginWithTenantInOrderToMakeThisChange")); } foreach (var item in input) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.TenantId.Value, item.Name, item.Value); } }
public async Task UpdateTenantUiManagementSettingsAsync(int tenantId, ThemeSettingsDto settings) { await SettingManager.ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Theme, ThemeName); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LayoutType, settings.Layout.LayoutType); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.ContentSkin, settings.Layout.ContentSkin); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.DesktopFixedHeader, settings.Header.DesktopFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.MobileFixedHeader, settings.Header.MobileFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.AsideSkin, settings.Menu.AsideSkin); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Footer.FixedFooter, settings.Footer.FixedFooter.ToString()); }
/// <summary> /// 保存设置 /// </summary> /// <param name="key">设置键</param> /// <param name="value">值</param> /// <returns></returns> private async Task SaveSettings(string key, string value) { if (AbpSession.TenantId.HasValue) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.TenantId.Value, key, value); } else { await SettingManager.ChangeSettingForApplicationAsync(key, value); } }
public async Task UpdateTenantUiManagementSettingsAsync(int tenantId, ThemeSettingsDto settings) { await SettingManager.ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Theme, ThemeName); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LayoutType, settings.Layout.LayoutType); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.DesktopFixedHeader, settings.Header.DesktopFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.MobileFixedHeader, settings.Header.MobileFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.MinimizeType, settings.Header.MinimizeDesktopHeaderType); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.MenuArrows, settings.Header.HeaderMenuArrows.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.SearchActive, settings.Menu.SearchActive.ToString()); }
public async Task UpdateTenantUiManagementSettingsAsync(int tenantId, ThemeSettingsDto settings) { await SettingManager.ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Theme, ThemeName); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.DesktopFixedHeader, settings.Header.DesktopFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.MobileFixedHeader, settings.Header.MobileFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.SubHeader.Fixed, settings.SubHeader.FixedSubHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.SubHeader.Style, settings.SubHeader.SubheaderStyle); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Footer.FixedFooter, settings.Footer.FixedFooter.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.SearchActive, settings.Menu.SearchActive.ToString()); }
public async Task SaveSettingMenusAsync(long?userId, string settingStr) { if (userId.HasValue) { var userIdentifier = new Abp.UserIdentifier(AbpSession.TenantId, userId.Value); await SettingManager.ChangeSettingForUserAsync(userIdentifier, SettingNames.MenuSetting, settingStr); } else if (AbpSession.TenantId.HasValue) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.TenantId.Value, SettingNames.MenuSetting, settingStr); } }
//LienThong private async Task UpdateLienThongInfoSettingsAsync(LienThongInfoSettingDto input) { await SettingManager.ChangeSettingForApplicationAsync(AppSettings.LienThongInfo.DOMAIN_LIEN_THONG, input.DomainLienThong); await SettingManager.ChangeSettingForApplicationAsync(AppSettings.LienThongInfo.TENANT_LIEN_THONG, input.TenantLienThong); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.LienThongInfo.USER_LIEN_THONG, input.UserLienThong); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.LienThongInfo.PASS_LIEN_THONG, SimpleStringCipher.Instance.Encrypt(input.PassLienThong)); // await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.LienThongInfo.TOKEN_LIEN_THONG, input.TokenLienThong); }
private async Task UpdateOtherSettingsAsync(TenantOtherSettingsEditDto input) { await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.IsQuickThemeSelectEnabled, input.IsQuickThemeSelectEnabled.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.TenantManagement.PowerBiReportUrl, input.PowerBiReportUrl.ToString()); }
public async Task UpdateAllSettings(TenantSettingsEditDto input) { //User management await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.UserManagement.AllowSelfRegistration, input.UserManagement.AllowSelfRegistration.ToString(CultureInfo.InvariantCulture).ToLower(CultureInfo.InvariantCulture)); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.UserManagement.IsNewRegisteredUserActiveByDefault, input.UserManagement.IsNewRegisteredUserActiveByDefault.ToString(CultureInfo.InvariantCulture).ToLower(CultureInfo.InvariantCulture)); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AbpZeroSettingNames.UserManagement.IsEmailConfirmationRequiredForLogin, input.UserManagement.IsEmailConfirmationRequiredForLogin.ToString(CultureInfo.InvariantCulture).ToLower(CultureInfo.InvariantCulture)); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.UserManagement.UseCaptchaOnRegistration, input.UserManagement.UseCaptchaOnRegistration.ToString(CultureInfo.InvariantCulture).ToLower(CultureInfo.InvariantCulture)); if (!_multiTenancyConfig.IsEnabled) { input.ValidateHostSettings(); //General await SettingManager.ChangeSettingForApplicationAsync(AppSettings.General.WebSiteRootAddress, input.General.WebSiteRootAddress.EnsureEndsWith('/')); //Email await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.DefaultFromAddress, input.Email.DefaultFromAddress); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.DefaultFromDisplayName, input.Email.DefaultFromDisplayName); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.Smtp.Host, input.Email.SmtpHost); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.Smtp.Port, input.Email.SmtpPort.ToString(CultureInfo.InvariantCulture)); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.Smtp.UserName, input.Email.SmtpUserName); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.Smtp.Password, input.Email.SmtpPassword); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.Smtp.Domain, input.Email.SmtpDomain); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.Smtp.EnableSsl, input.Email.SmtpEnableSsl.ToString(CultureInfo.InvariantCulture).ToLower(CultureInfo.InvariantCulture)); await SettingManager.ChangeSettingForApplicationAsync(EmailSettingNames.Smtp.UseDefaultCredentials, input.Email.SmtpUseDefaultCredentials.ToString(CultureInfo.InvariantCulture).ToLower(CultureInfo.InvariantCulture)); //Ldap if (_ldapModuleConfig.IsEnabled) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), LdapSettingNames.IsEnabled, input.Ldap.IsEnabled.ToString(CultureInfo.InvariantCulture).ToLower(CultureInfo.InvariantCulture)); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), LdapSettingNames.Domain, input.Ldap.Domain.IsNullOrWhiteSpace()?null : input.Ldap.Domain); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), LdapSettingNames.UserName, input.Ldap.UserName.IsNullOrWhiteSpace()?null : input.Ldap.UserName); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), LdapSettingNames.Password, input.Ldap.Password.IsNullOrWhiteSpace()?null : input.Ldap.Password); } } }
private async Task UpdateBillingSettingsAsync(TenantBillingSettingsEditDto input) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.TenantManagement.BillingLegalName, input.LegalName); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.TenantManagement.BillingAddress, input.Address); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.TenantManagement.BillingTaxNumber, input.TaxNumber); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.TenantManagement.BillingContact, input.Contact); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.TenantManagement.BillingBank, input.Bank); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.TenantManagement.BillingBankAccount, input.BankAccount); }
public async Task SaveSettingMenusAsync(long?userId, List <MenuItemDefinition> menuItems) { var settingStr = Newtonsoft.Json.JsonConvert.SerializeObject(menuItems); if (userId.HasValue) { var userIdentifier = new Abp.UserIdentifier(AbpSession.TenantId, userId.Value); await SettingManager.ChangeSettingForUserAsync(userIdentifier, SettingNames.MenuSetting, settingStr); } else if (AbpSession.TenantId.HasValue) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.TenantId.Value, SettingNames.MenuSetting, settingStr); } }
public async Task UpdateTenantUiManagementSettingsAsync(int tenantId, ThemeSettingsDto settings) { await SettingManager.ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Theme, settings.Theme); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.ThemeColor, settings.Layout.ThemeColor.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.OverallStyle, settings.Layout.OverallStyle.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.SlidingHiddenHeader, settings.Header.SlidingHiddenHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.ContentWidth, settings.Header.ContentWidth); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.FixedHeader, settings.Header.FixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.NavigationMode, settings.Menu.NavigationMode.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.FixedMenu, settings.Menu.FixedMenu.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Other.WeakMode, settings.Other.WeakMode.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Footer.FixedFooter, settings.Footer.FixedFooter.ToString()); }
private async Task UpdateEmailSettingsAsync(TenantEmailSettingsEditDto input) { if (_multiTenancyConfig.IsEnabled && !ERPConsts.AllowTenantsToChangeEmailSettings) { return; } var useHostDefaultEmailSettings = _multiTenancyConfig.IsEnabled && input.UseHostDefaultEmailSettings; if (useHostDefaultEmailSettings) { var smtpPassword = await SettingManager.GetSettingValueForApplicationAsync(EmailSettingNames.Smtp.Password); input = new TenantEmailSettingsEditDto { UseHostDefaultEmailSettings = true, DefaultFromAddress = await SettingManager.GetSettingValueForApplicationAsync(EmailSettingNames.DefaultFromAddress), DefaultFromDisplayName = await SettingManager.GetSettingValueForApplicationAsync(EmailSettingNames.DefaultFromDisplayName), SmtpHost = await SettingManager.GetSettingValueForApplicationAsync(EmailSettingNames.Smtp.Host), SmtpPort = await SettingManager.GetSettingValueForApplicationAsync <int>(EmailSettingNames.Smtp.Port), SmtpUserName = await SettingManager.GetSettingValueForApplicationAsync(EmailSettingNames.Smtp.UserName), SmtpPassword = SimpleStringCipher.Instance.Decrypt(smtpPassword), SmtpDomain = await SettingManager.GetSettingValueForApplicationAsync(EmailSettingNames.Smtp.Domain), SmtpEnableSsl = await SettingManager.GetSettingValueForApplicationAsync <bool>(EmailSettingNames.Smtp.EnableSsl), SmtpUseDefaultCredentials = await SettingManager.GetSettingValueForApplicationAsync <bool>(EmailSettingNames.Smtp.UseDefaultCredentials) }; } await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.Email.UseHostDefaultEmailSettings, useHostDefaultEmailSettings.ToString().ToLowerInvariant()); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.DefaultFromAddress, input.DefaultFromAddress); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.DefaultFromDisplayName, input.DefaultFromDisplayName); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.Smtp.Host, input.SmtpHost); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.Smtp.Port, input.SmtpPort.ToString(CultureInfo.InvariantCulture)); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.Smtp.UserName, input.SmtpUserName); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.Smtp.Password, SimpleStringCipher.Instance.Encrypt(input.SmtpPassword)); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.Smtp.Domain, input.SmtpDomain); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.Smtp.EnableSsl, input.SmtpEnableSsl.ToString().ToLowerInvariant()); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), EmailSettingNames.Smtp.UseDefaultCredentials, input.SmtpUseDefaultCredentials.ToString().ToLowerInvariant()); }
private async Task UpdateUserManagementSettingsAsync(TenantUserManagementSettingsEditDto settings) { await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.AllowSelfRegistration, settings.AllowSelfRegistration.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.IsNewRegisteredUserActiveByDefault, settings.IsNewRegisteredUserActiveByDefault.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AbpZeroSettingNames.UserManagement.IsEmailConfirmationRequiredForLogin, settings.IsEmailConfirmationRequiredForLogin.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.UseCaptchaOnRegistration, settings.UseCaptchaOnRegistration.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.UseCaptchaOnLogin, settings.UseCaptchaOnLogin.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.IsCookieConsentEnabled, settings.IsCookieConsentEnabled.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.AllowUsingGravatarProfilePicture, settings.AllowUsingGravatarProfilePicture.ToString().ToLowerInvariant() ); await UpdateUserManagementSessionTimeOutSettingsAsync(settings.SessionTimeOutSettings); }
public async Task UpdateTenantUiManagementSettingsAsync(int tenantId, ThemeSettingsDto settings) { await SettingManager.ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Theme, settings.Theme); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LayoutType, settings.Layout.LayoutType); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.ContentSkin, settings.Layout.ContentSkin); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.DesktopFixedHeader, settings.Header.DesktopFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.MobileFixedHeader, settings.Header.MobileFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.Skin, settings.Header.HeaderSkin); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.AsideSkin, settings.Menu.AsideSkin); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.FixedAside, settings.Menu.FixedAside.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.AllowAsideMinimizing, settings.Menu.AllowAsideMinimizing.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.DefaultMinimizedAside, settings.Menu.DefaultMinimizedAside.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.AllowAsideHiding, settings.Menu.AllowAsideHiding.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.DefaultHiddenAside, settings.Menu.DefaultHiddenAside.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Footer.FixedFooter, settings.Footer.FixedFooter.ToString()); }
private async Task UpdateTenantSetting(int tenantId, SettingDto input) { await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.PasswordComplexity.RequiredLength, input.PasswordComplexity.RequiredLength.ToString()); await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.PasswordComplexity.RequireDigit, input.PasswordComplexity.RequireDigit.ToString().ToLower()); await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.PasswordComplexity.RequireLowercase, input.PasswordComplexity.RequireLowercase.ToString().ToLower()); await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.PasswordComplexity.RequireUppercase, input.PasswordComplexity.RequireUppercase.ToString().ToLower()); await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.PasswordComplexity.RequireNonAlphanumeric, input.PasswordComplexity.RequireNonAlphanumeric.ToString().ToLower()); // UserManagementSetting await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.IsNewRegisteredUserActiveByDefault, input.UserManagement.IsNewRegisteredUserActiveByDefault.ToString().ToLower()); await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.IsEmailConfirmationRequiredForLogin, input.UserManagement.IsEmailConfirmationRequiredForLogin.ToString().ToLower()); // UserLockOut await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.UserLockOut.IsEnabled, input.UserLockOut.IsEnabled.ToString().ToLower()); await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.UserLockOut.DefaultAccountLockoutSeconds, input.UserLockOut.DefaultAccountLockoutSeconds.ToString()); await SettingManager.ChangeSettingForTenantAsync(tenantId, StudioXZeroSettingNames.UserManagement.UserLockOut.MaxFailedAccessAttemptsBeforeLockout, input.UserLockOut.MaxFailedAccessAttemptsBeforeLockout.ToString()); }
public async Task UpdateAllSettings(TenantSettingsEditDto input) { try { await UpdateUserManagementSettingsAsync(input.UserManagement); await UpdateSecuritySettingsAsync(input.Security); //Payment await UpdatePaymentSettingsAsync(input.Payment); //LienThong await UpdateLienThongInfoSettingsAsync(input.LienThong); //Time Zone if (Clock.SupportsMultipleTimezone) { if (input.General.Timezone.IsNullOrEmpty()) { var defaultValue = await _timeZoneService.GetDefaultTimezoneAsync(SettingScopes.Tenant, AbpSession.TenantId); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), TimingSettingNames.TimeZone, defaultValue); } else { await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), TimingSettingNames.TimeZone, input.General.Timezone); } } if (!_multiTenancyConfig.IsEnabled) { input.ValidateHostSettings(); await UpdateEmailSettingsAsync(input.Email); if (_ldapModuleConfig.IsEnabled) { await UpdateLdapSettingsAsync(input.Ldap); } } } catch (Exception ex) { Logger.Error(ex.Message); } }
public async Task Should_Delete_Setting_Values_On_Default_Value() { var session = new MyChangableSession(); var store = new MemorySettingStore(); var settingManager = new SettingManager(CreateMockSettingDefinitionManager()) { SettingStore = store, Session = session }; session.TenantId = 1; session.UserId = 1; //We can get user's personal stored value (await store.GetSettingOrNullAsync(null, 1, MyAllLevelsSetting)).ShouldNotBe(null); (await settingManager.GetSettingValueAsync(MyAllLevelsSetting)).ShouldBe("user 1 stored value"); //This will delete setting for the user since it's same as tenant's setting value await settingManager.ChangeSettingForUserAsync(1, MyAllLevelsSetting, "tenant 1 stored value"); (await store.GetSettingOrNullAsync(null, 1, MyAllLevelsSetting)).ShouldBe(null); //We can get tenant's setting value (await store.GetSettingOrNullAsync(1, null, MyAllLevelsSetting)).ShouldNotBe(null); (await settingManager.GetSettingValueAsync(MyAllLevelsSetting)).ShouldBe("tenant 1 stored value"); //This will delete setting for tenant since it's same as application's setting value await settingManager.ChangeSettingForTenantAsync(1, MyAllLevelsSetting, "application level stored value"); (await store.GetSettingOrNullAsync(null, 1, MyAllLevelsSetting)).ShouldBe(null); //We can get application's value (await store.GetSettingOrNullAsync(null, null, MyAllLevelsSetting)).ShouldNotBe(null); (await settingManager.GetSettingValueAsync(MyAllLevelsSetting)).ShouldBe("application level stored value"); //This will delete setting for application since it's same as the default value of the setting await settingManager.ChangeSettingForApplicationAsync(MyAllLevelsSetting, "application level default value"); (await store.GetSettingOrNullAsync(null, null, MyAllLevelsSetting)).ShouldBe(null); //Now, there is no setting value, default value should return (await settingManager.GetSettingValueAsync(MyAllLevelsSetting)).ShouldBe("application level default value"); }
private async Task UpdateTwoFactorLoginSettingsAsync(TwoFactorLoginSettingsEditDto settings) { if (_multiTenancyConfig.IsEnabled && !await IsTwoFactorLoginEnabledForApplicationAsync()) //Two factor login can not be used by tenants if disabled by the host { return; } await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AbpZeroSettingNames.UserManagement.TwoFactorLogin.IsEnabled, settings.IsEnabled.ToString().ToLowerInvariant()); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AbpZeroSettingNames.UserManagement.TwoFactorLogin.IsRememberBrowserEnabled, settings.IsRememberBrowserEnabled.ToString().ToLowerInvariant()); if (!_multiTenancyConfig.IsEnabled) { //These settings can only be changed by host, in a multitenant application. await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AbpZeroSettingNames.UserManagement.TwoFactorLogin.IsEmailProviderEnabled, settings.IsEmailProviderEnabled.ToString().ToLowerInvariant()); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AbpZeroSettingNames.UserManagement.TwoFactorLogin.IsSmsProviderEnabled, settings.IsSmsProviderEnabled.ToString().ToLowerInvariant()); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.UserManagement.TwoFactorLogin.IsGoogleAuthenticatorEnabled, settings.IsGoogleAuthenticatorEnabled.ToString().ToLowerInvariant()); } }
public async Task UpdateTenantUiManagementSettingsAsync(int tenantId, ThemeSettingsDto settings) { await SettingManager.ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Theme, settings.Theme); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.DesktopFixedHeader, settings.Header.DesktopFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.MobileFixedHeader, settings.Header.MobileFixedHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Header.Skin, settings.Header.HeaderSkin); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.SubHeader.Fixed, settings.SubHeader.FixedSubHeader.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.SubHeader.Style, settings.SubHeader.SubheaderStyle); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.AsideSkin, settings.Menu.AsideSkin); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.FixedAside, settings.Menu.FixedAside.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.AllowAsideMinimizing, settings.Menu.AllowAsideMinimizing.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.DefaultMinimizedAside, settings.Menu.DefaultMinimizedAside.ToString()); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.LeftAside.SubmenuToggle, settings.Menu.SubmenuToggle); await ChangeSettingForTenantAsync(tenantId, AppSettings.UiManagement.Footer.FixedFooter, settings.Footer.FixedFooter.ToString()); }
private async Task UpdatSMSSettingsAsync(SMSSettingsEditDto input) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.AppKey, input.AppKey); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.AppSecret, input.AppSecret); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.SignName, input.SignName); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.UserIdentityValidateTemplateCode, input.UserIdentityValidateTemplateCode); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.UserLoginConfirmTemplateCode, input.UserLoginConfirmTemplateCode); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.UserLoginErrorTemplateCode, input.UserLoginErrorTemplateCode); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.UserRegisterTemplateCode, input.UserRegisterTemplateCode); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.UserChangePasswordTemplateCode, input.UserChangePasswordTemplateCode); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), AppSettings.SMSManagement.UserChangeInformationTemplateCode, input.UserChangeInformationTemplateCode); }
private async Task UpdateUserManagementSessionTimeOutSettingsAsync(SessionTimeOutSettingsEditDto settings) { await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.SessionTimeOut.IsEnabled, settings.IsEnabled.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.SessionTimeOut.TimeOutSecond, settings.TimeOutSecond.ToString() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.SessionTimeOut.ShowTimeOutNotificationSecond, settings.ShowTimeOutNotificationSecond.ToString() ); }
/// <summary> /// 更新账套的设置 /// </summary> /// <param name="settingDtos"></param> /// <returns></returns> public virtual async Task UpdateSettings(List <SettingDto> settingDtos) { var settingDefinitions = Resolve <ISettingDefinitionManager>().GetAllSettingDefinitions(); foreach (var settingDto in settingDtos) { var settingDefinition = settingDefinitions.Single(o => o.Name == settingDto.Name); if (settingDefinition.Scopes == SettingScopes.Application) { await SettingManager.ChangeSettingForApplicationAsync(settingDto.Name, settingDto.Value); } else if (settingDefinition.Scopes == SettingScopes.Tenant) { await SettingManager.ChangeSettingForTenantAsync(AbpSession.TenantId.Value, settingDto.Name, settingDto.Value); } else { await SettingManager.ChangeSettingForUserAsync(AbpSession.ToUserIdentifier(), settingDto.Name, settingDto.Value); } } }
private async Task UpdateSecuritySettingsAsync(SecuritySettingsEditDto settings) { if (settings.UseDefaultPasswordComplexitySettings) { await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.Security.PasswordComplexity, settings.DefaultPasswordComplexity.ToJsonString() ); } else { await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.Security.PasswordComplexity, settings.PasswordComplexity.ToJsonString() ); } await UpdateUserLockOutSettingsAsync(settings.UserLockOut); await UpdateTwoFactorLoginSettingsAsync(settings.TwoFactorLogin); }
public async Task Should_Change_Setting_Values() { var session = new MyChangableSession(); var settingManager = new SettingManager(CreateMockSettingDefinitionManager()) { SettingStore = new MemorySettingStore(), Session = session }; //Application level changes await settingManager.ChangeSettingForApplicationAsync(MyAppLevelSetting, "53"); await settingManager.ChangeSettingForApplicationAsync(MyAppLevelSetting, "54"); await settingManager.ChangeSettingForApplicationAsync(MyAllLevelsSetting, "application level changed value"); (await settingManager.SettingStore.GetSettingOrNullAsync(null, null, MyAppLevelSetting)).Value.ShouldBe("54"); (await settingManager.GetSettingValueAsync <int>(MyAppLevelSetting)).ShouldBe(54); (await settingManager.GetSettingValueAsync(MyAllLevelsSetting)).ShouldBe("application level changed value"); //Tenant level changes session.TenantId = 1; await settingManager.ChangeSettingForTenantAsync(1, MyAllLevelsSetting, "tenant 1 changed value"); (await settingManager.GetSettingValueAsync(MyAllLevelsSetting)).ShouldBe("tenant 1 changed value"); //User level changes session.UserId = 1; await settingManager.ChangeSettingForUserAsync(1, MyAllLevelsSetting, "user 1 changed value"); (await settingManager.GetSettingValueAsync(MyAllLevelsSetting)).ShouldBe("user 1 changed value"); }
private async Task UpdateUserManagementSettingsAsync(TenantUserManagementSettingsEditDto settings) { await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.AllowSelfRegistration, settings.AllowSelfRegistration.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.IsNewRegisteredUserActiveByDefault, settings.IsNewRegisteredUserActiveByDefault.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AbpZeroSettingNames.UserManagement.IsEmailConfirmationRequiredForLogin, settings.IsEmailConfirmationRequiredForLogin.ToString().ToLowerInvariant() ); await SettingManager.ChangeSettingForTenantAsync( AbpSession.GetTenantId(), AppSettings.UserManagement.UseCaptchaOnRegistration, settings.UseCaptchaOnRegistration.ToString().ToLowerInvariant() ); }
public async Task UpdateAllSettings(TenantSettingsEditDto input) { await UpdateUserManagementSettingsAsync(input.UserManagement); await UpdateSecuritySettingsAsync(input.Security); await UpdateBillingSettingsAsync(input.Billing); await UpdateWeixinSettingsAsync(input.Weixin); await UpdateJinseSettingsAsync(input.Jinse); await UpdatSMSSettingsAsync(input.SMS); //Time Zone if (Clock.SupportsMultipleTimezone) { if (input.General.Timezone.IsNullOrEmpty()) { var defaultValue = await _timeZoneService.GetDefaultTimezoneAsync(SettingScopes.Tenant, AbpSession.TenantId); await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), TimingSettingNames.TimeZone, defaultValue); } else { await SettingManager.ChangeSettingForTenantAsync(AbpSession.GetTenantId(), TimingSettingNames.TimeZone, input.General.Timezone); } } if (!_multiTenancyConfig.IsEnabled) { input.ValidateHostSettings(); await UpdateEmailSettingsAsync(input.Email); if (_ldapModuleConfig.IsEnabled) { await UpdateLdapSettingsAsync(input.Ldap); } } }
private async Task EnableIsNewRegisteredUserActiveByDefaultAsync(Tenant tenant) { await SettingManager.ChangeSettingForTenantAsync(tenant.Id, AppSettings.UserManagement.IsNewRegisteredUserActiveByDefault, "true"); }