From f016966681ce342cee3cd96c62e56a4294d35d1f Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Thu, 22 Jun 2023 17:30:44 +0800 Subject: [PATCH] Add TimeZonePageContributor --- .../AbpSettingManagementWebModule.cs | 1 + .../Settings/EmailingPageContributor.cs | 15 -------- .../Settings/TimeZonePageContributor.cs | 36 +++++++++++++++++++ 3 files changed, 37 insertions(+), 15 deletions(-) create mode 100644 modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/TimeZonePageContributor.cs diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/AbpSettingManagementWebModule.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/AbpSettingManagementWebModule.cs index b544d4a7bf..b5d3df17ad 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/AbpSettingManagementWebModule.cs +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/AbpSettingManagementWebModule.cs @@ -45,6 +45,7 @@ public class AbpSettingManagementWebModule : AbpModule Configure(options => { options.Contributors.Add(new EmailingPageContributor()); + options.Contributors.Add(new TimeZonePageContributor()); }); Configure(options => diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/EmailingPageContributor.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/EmailingPageContributor.cs index 5d7e5eb967..5096404a11 100644 --- a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/EmailingPageContributor.cs +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/EmailingPageContributor.cs @@ -2,12 +2,9 @@ using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Localization; -using Microsoft.Extensions.Options; using Volo.Abp.SettingManagement.Localization; using Volo.Abp.SettingManagement.Web.Pages.SettingManagement; using Volo.Abp.SettingManagement.Web.Pages.SettingManagement.Components.EmailSettingGroup; -using Volo.Abp.SettingManagement.Web.Pages.SettingManagement.Components.TimeZoneSettingGroup; -using Volo.Abp.Timing; namespace Volo.Abp.SettingManagement.Web.Settings; @@ -29,18 +26,6 @@ public class EmailingPageContributor : SettingPageContributorBase typeof(EmailSettingGroupViewComponent) ) ); - - if (context.ServiceProvider.GetRequiredService().SupportsMultipleTimezone) - { - context.Groups.Add( - new SettingPageGroup( - "Volo.Abp.TimeZone", - l["Menu:TimeZone"], - typeof(TimeZoneSettingGroupViewComponent) - ) - ); - } - return Task.CompletedTask; } } diff --git a/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/TimeZonePageContributor.cs b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/TimeZonePageContributor.cs new file mode 100644 index 0000000000..a7a7674b08 --- /dev/null +++ b/modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/TimeZonePageContributor.cs @@ -0,0 +1,36 @@ +using System.Threading.Tasks; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Localization; +using Volo.Abp.SettingManagement.Localization; +using Volo.Abp.SettingManagement.Web.Pages.SettingManagement; +using Volo.Abp.SettingManagement.Web.Pages.SettingManagement.Components.EmailSettingGroup; +using Volo.Abp.SettingManagement.Web.Pages.SettingManagement.Components.TimeZoneSettingGroup; +using Volo.Abp.Timing; + +namespace Volo.Abp.SettingManagement.Web.Settings; + +public class TimeZonePageContributor : SettingPageContributorBase +{ + public TimeZonePageContributor() + { + RequiredFeatures(SettingManagementFeatures.EnableTimeZone); + } + + public override Task ConfigureAsync(SettingPageCreationContext context) + { + var l = context.ServiceProvider.GetRequiredService>(); + + if (context.ServiceProvider.GetRequiredService().SupportsMultipleTimezone) + { + context.Groups.Add( + new SettingPageGroup( + "Volo.Abp.TimeZone", + l["Menu:TimeZone"], + typeof(TimeZoneSettingGroupViewComponent) + ) + ); + } + + return Task.CompletedTask; + } +} \ No newline at end of file