Browse Source

Merge pull request #24253 from abpframework/10.0-cmskit-menu-fix

Add feature checks to PageChangedHandler
pull/24262/head
Gizem Mutu Kurt 2 months ago
committed by GitHub
parent
commit
97461bb926
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 17
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Menus/PageChangedHandler.cs

17
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Menus/PageChangedHandler.cs

@ -4,6 +4,10 @@ using System.Threading.Tasks;
using Volo.Abp.DependencyInjection; using Volo.Abp.DependencyInjection;
using Volo.Abp.Domain.Entities.Events; using Volo.Abp.Domain.Entities.Events;
using Volo.Abp.EventBus; using Volo.Abp.EventBus;
using Volo.Abp.Features;
using Volo.Abp.GlobalFeatures;
using Volo.CmsKit.Features;
using Volo.CmsKit.GlobalFeatures;
using Volo.CmsKit.Pages; using Volo.CmsKit.Pages;
namespace Volo.CmsKit.Menus; namespace Volo.CmsKit.Menus;
@ -12,19 +16,32 @@ public class PageChangedHandler :
ILocalEventHandler<EntityUpdatedEventData<Page>>, ILocalEventHandler<EntityUpdatedEventData<Page>>,
ITransientDependency ITransientDependency
{ {
protected IFeatureChecker FeatureChecker { get; set; }
protected IMenuItemRepository MenuRepository { get; } protected IMenuItemRepository MenuRepository { get; }
protected MenuItemManager MenuManager { get; } protected MenuItemManager MenuManager { get; }
public PageChangedHandler( public PageChangedHandler(
IFeatureChecker featureChecker,
IMenuItemRepository menuRepository, IMenuItemRepository menuRepository,
MenuItemManager menuManager) MenuItemManager menuManager)
{ {
FeatureChecker = featureChecker;
MenuRepository = menuRepository; MenuRepository = menuRepository;
MenuManager = menuManager; MenuManager = menuManager;
} }
public async Task HandleEventAsync(EntityUpdatedEventData<Page> eventData) public async Task HandleEventAsync(EntityUpdatedEventData<Page> eventData)
{ {
if(!GlobalFeatureManager.Instance.IsEnabled<MenuFeature>())
{
return;
}
if(!await FeatureChecker.IsEnabledAsync(CmsKitFeatures.MenuEnable))
{
return;
}
// TODO: Write a repository query. // TODO: Write a repository query.
var allMenuItems = await MenuRepository.GetListAsync(); var allMenuItems = await MenuRepository.GetListAsync();

Loading…
Cancel
Save