Browse Source

CmsKit - Implement CmsUserFeature dependent checks

pull/8082/head
enisn 6 years ago
parent
commit
457c2b6c99
  1. 10
      modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Users/CmsUserSynchronizer.cs
  2. 18
      modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/CmsKitDbContextModelCreatingExtensions.cs

10
modules/cms-kit/src/Volo.CmsKit.Domain/Volo/CmsKit/Users/CmsUserSynchronizer.cs

@ -1,8 +1,11 @@
using System.Threading.Tasks; using System.Linq;
using System.Threading.Tasks;
using Volo.Abp.DependencyInjection; using Volo.Abp.DependencyInjection;
using Volo.Abp.Domain.Entities.Events.Distributed; using Volo.Abp.Domain.Entities.Events.Distributed;
using Volo.Abp.EventBus.Distributed; using Volo.Abp.EventBus.Distributed;
using Volo.Abp.GlobalFeatures;
using Volo.Abp.Users; using Volo.Abp.Users;
using Volo.CmsKit.GlobalFeatures;
namespace Volo.CmsKit.Users namespace Volo.CmsKit.Users
{ {
@ -24,6 +27,11 @@ namespace Volo.CmsKit.Users
public virtual async Task HandleEventAsync(EntityUpdatedEto<UserEto> eventData) public virtual async Task HandleEventAsync(EntityUpdatedEto<UserEto> eventData)
{ {
if (!GlobalFeatureManager.Instance.IsEnabled<CmsUserFeature>())
{
return;
}
var user = await UserRepository.FindAsync(eventData.Entity.Id); var user = await UserRepository.FindAsync(eventData.Entity.Id);
if (user == null) if (user == null)
{ {

18
modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo/CmsKit/EntityFrameworkCore/CmsKitDbContextModelCreatingExtensions.cs

@ -1,19 +1,18 @@
using System; using Microsoft.EntityFrameworkCore;
using System.Linq; using System;
using Microsoft.EntityFrameworkCore;
using Volo.Abp; using Volo.Abp;
using Volo.Abp.EntityFrameworkCore.Modeling; using Volo.Abp.EntityFrameworkCore.Modeling;
using Volo.Abp.GlobalFeatures; using Volo.Abp.GlobalFeatures;
using Volo.CmsKit.Comments;
using Volo.CmsKit.Reactions;
using Volo.CmsKit.Users;
using Volo.Abp.Users.EntityFrameworkCore; using Volo.Abp.Users.EntityFrameworkCore;
using Volo.CmsKit.Blogs;
using Volo.CmsKit.Comments;
using Volo.CmsKit.GlobalFeatures; using Volo.CmsKit.GlobalFeatures;
using Volo.CmsKit.MediaDescriptors;
using Volo.CmsKit.Pages; using Volo.CmsKit.Pages;
using Volo.CmsKit.Ratings; using Volo.CmsKit.Ratings;
using Volo.CmsKit.Reactions;
using Volo.CmsKit.Tags; using Volo.CmsKit.Tags;
using Volo.CmsKit.Blogs; using Volo.CmsKit.Users;
using Volo.CmsKit.MediaDescriptors;
namespace Volo.CmsKit.EntityFrameworkCore namespace Volo.CmsKit.EntityFrameworkCore
{ {
@ -32,8 +31,7 @@ namespace Volo.CmsKit.EntityFrameworkCore
optionsAction?.Invoke(options); optionsAction?.Invoke(options);
//TODO: What if only CMSKit Pro features are enabled? This is kinda workaround for now if (!GlobalFeatureManager.Instance.IsEnabled<CmsUserFeature>())
if (GlobalFeatureManager.Instance.Modules.CmsKit().GetFeatures().Any(f => f.IsEnabled))
{ {
builder.Entity<CmsUser>(b => builder.Entity<CmsUser>(b =>
{ {

Loading…
Cancel
Save