|
- using System;
- using System.Threading.Tasks;
- using Microsoft.Extensions.Configuration;
- using Volo.Abp.Account.Localization;
- using Volo.Abp.Authorization.Permissions;
- using Volo.Abp.UI.Navigation;
-
- namespace Himp.TaskScheduling.Blazor.Host.Client;
-
- public class TaskSchedulingHostMenuContributor : IMenuContributor
- {
- private readonly IConfiguration _configuration;
-
- public TaskSchedulingHostMenuContributor(IConfiguration configuration)
- {
- _configuration = configuration;
- }
-
- public async Task ConfigureMenuAsync(MenuConfigurationContext context)
- {
- if (context.Menu.Name == StandardMenus.User)
- {
- await ConfigureUserMenuAsync(context);
- }
- }
-
- private Task ConfigureUserMenuAsync(MenuConfigurationContext context)
- {
- var accountStringLocalizer = context.GetLocalizer<AccountResource>();
-
- var openIddictUrl = _configuration["AuthServer:Authority"] ?? "";
-
- context.Menu.AddItem(new ApplicationMenuItem(
- "Account.Manage",
- accountStringLocalizer["ManageYourProfile"],
- $"{openIddictUrl.EnsureEndsWith('/')}Account/Manage?returnUrl={_configuration["App:SelfUrl"]}",
- icon: "fa fa-cog",
- order: 1000,
- null,
- "_blank").RequireAuthenticated());
-
- return Task.CompletedTask;
- }
- }
|