Browse Source

Add TimeZonePageContributor

pull/16861/head
liangshiwei 3 years ago
parent
commit
f016966681
  1. 1
      modules/setting-management/src/Volo.Abp.SettingManagement.Web/AbpSettingManagementWebModule.cs
  2. 15
      modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/EmailingPageContributor.cs
  3. 36
      modules/setting-management/src/Volo.Abp.SettingManagement.Web/Settings/TimeZonePageContributor.cs

1
modules/setting-management/src/Volo.Abp.SettingManagement.Web/AbpSettingManagementWebModule.cs

@ -45,6 +45,7 @@ public class AbpSettingManagementWebModule : AbpModule
Configure<SettingManagementPageOptions>(options =>
{
options.Contributors.Add(new EmailingPageContributor());
options.Contributors.Add(new TimeZonePageContributor());
});
Configure<AbpVirtualFileSystemOptions>(options =>

15
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<IClock>().SupportsMultipleTimezone)
{
context.Groups.Add(
new SettingPageGroup(
"Volo.Abp.TimeZone",
l["Menu:TimeZone"],
typeof(TimeZoneSettingGroupViewComponent)
)
);
}
return Task.CompletedTask;
}
}

36
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<IStringLocalizer<AbpSettingManagementResource>>();
if (context.ServiceProvider.GetRequiredService<IClock>().SupportsMultipleTimezone)
{
context.Groups.Add(
new SettingPageGroup(
"Volo.Abp.TimeZone",
l["Menu:TimeZone"],
typeof(TimeZoneSettingGroupViewComponent)
)
);
}
return Task.CompletedTask;
}
}
Loading…
Cancel
Save