SettingProvider.cs 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. using Abp.Configuration;
  2. using Abp.Localization;
  3. using VberZero;
  4. namespace VberAdmin.DomainService.Settings;
  5. public class SettingProvider : Abp.Configuration.SettingProvider
  6. {
  7. public override IEnumerable<SettingDefinition> GetSettingDefinitions(SettingDefinitionProviderContext context)
  8. {
  9. var list = new List<SettingDefinition>();
  10. var lang = context.Manager.GetSettingDefinition(LocalizationSettingNames.DefaultLanguage);
  11. if (lang == null)
  12. {
  13. list.Add(new SettingDefinition(LocalizationSettingNames.DefaultLanguage, VzConsts.DefaultLanguage, scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User, isVisibleToClients: true));
  14. }
  15. else
  16. {
  17. lang.DefaultValue = VzConsts.DefaultLanguage;
  18. }
  19. foreach (var name in SettingNames.UserSettings)
  20. {
  21. var setting = new SettingDefinition(name, null,
  22. scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User,
  23. isVisibleToClients: true);
  24. if (!list.Contains(setting))
  25. {
  26. list.Add(setting);
  27. }
  28. }
  29. foreach (var name in SettingNames.TenantSettings)
  30. {
  31. var setting = new SettingDefinition(name, null,
  32. scopes: SettingScopes.Application | SettingScopes.Tenant,
  33. isVisibleToClients: true);
  34. if (!list.Contains(setting))
  35. {
  36. list.Add(setting);
  37. }
  38. }
  39. foreach (var name in SettingNames.AppSettings)
  40. {
  41. var setting = new SettingDefinition(name, null,
  42. scopes: SettingScopes.Application,
  43. isVisibleToClients: true);
  44. if (!list.Contains(setting))
  45. {
  46. list.Add(setting);
  47. }
  48. }
  49. return list;
  50. }
  51. }