diff --git a/Oqtane.Server/Components/App.razor b/Oqtane.Server/Components/App.razor index ff1ad466..13d4f08f 100644 --- a/Oqtane.Server/Components/App.razor +++ b/Oqtane.Server/Components/App.razor @@ -648,10 +648,10 @@ } // site level resources for modules in site - var modules = site.Modules.GroupBy(item => item.ModuleDefinition.ModuleDefinitionName).Select(group => group.First()).ToList(); + var modules = site.Modules.GroupBy(item => item.ModuleDefinition?.ModuleDefinitionName).Select(group => group.First()).ToList(); foreach (var module in modules) { - if (module.ModuleDefinition.Resources != null) + if (module.ModuleDefinition?.Resources != null) { resources = AddResources(resources, module.ModuleDefinition.Resources.Where(item => item.Level == ResourceLevel.Site).ToList(), ResourceLevel.Module, alias, "Modules", Utilities.GetTypeName(module.ModuleDefinition.ModuleDefinitionName)); } diff --git a/Oqtane.Server/Controllers/ModuleDefinitionController.cs b/Oqtane.Server/Controllers/ModuleDefinitionController.cs index 78436ff2..291f183c 100644 --- a/Oqtane.Server/Controllers/ModuleDefinitionController.cs +++ b/Oqtane.Server/Controllers/ModuleDefinitionController.cs @@ -15,7 +15,6 @@ using System; using Microsoft.Extensions.DependencyInjection; using System.Text.Json; using System.Net; -using Oqtane.Modules; using Oqtane.Infrastructure.Interfaces; namespace Oqtane.Controllers @@ -24,9 +23,6 @@ namespace Oqtane.Controllers public class ModuleDefinitionController : Controller { private readonly IModuleDefinitionRepository _moduleDefinitions; - private readonly IModuleRepository _modules; - private readonly IPageModuleRepository _pagemodules; - private readonly IPermissionRepository _permissions; private readonly ITenantRepository _tenants; private readonly ISqlRepository _sql; private readonly IUserPermissions _userPermissions; @@ -38,12 +34,9 @@ namespace Oqtane.Controllers private readonly ILogManager _logger; private readonly Alias _alias; - public ModuleDefinitionController(IModuleDefinitionRepository moduleDefinitions, IModuleRepository module, IPageModuleRepository pageModule, IPermissionRepository permission, ITenantRepository tenants, ISqlRepository sql, IUserPermissions userPermissions, IInstallationManager installationManager, IWebHostEnvironment environment, IServiceProvider serviceProvider, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger) + public ModuleDefinitionController(IModuleDefinitionRepository moduleDefinitions, ITenantRepository tenants, ISqlRepository sql, IUserPermissions userPermissions, IInstallationManager installationManager, IWebHostEnvironment environment, IServiceProvider serviceProvider, ITenantManager tenantManager, ISyncManager syncManager, ILogManager logger) { _moduleDefinitions = moduleDefinitions; - _modules = module; - _pagemodules = pageModule; - _permissions = permission; _tenants = tenants; _sql = sql; _userPermissions = userPermissions; @@ -252,26 +245,6 @@ namespace Oqtane.Controllers _logger.Log(LogLevel.Information, this, LogFunction.Delete, "Module Static Resources Folder Removed For {ModuleDefinitionName}", moduledefinition.ModuleDefinitionName); } - // remove PageModule and Module - List modulesToRemove = _modules.GetModules(moduledefinition.SiteId).Where(m => m.ModuleDefinitionName == moduledefinition.ModuleDefinitionName).ToList(); - foreach (Models.Module moduleToRemove in modulesToRemove) - { - // Get the PageModule items associated with the Module item to be removed - List pageModulesToRemove = _pagemodules.GetPageModules(moduledefinition.SiteId).Where(pm => pm.ModuleId == moduleToRemove.ModuleId).ToList(); - - foreach(PageModule pageModule in pageModulesToRemove) - { - // Remove the PageModule item - _pagemodules.DeletePageModule(pageModule.PageModuleId); - } - - // Remove Permissions - _permissions.DeletePermissions(moduledefinition.SiteId, EntityNames.Module, moduleToRemove.ModuleId); - - // Remove the Module item - _modules.DeleteModule(moduleToRemove.ModuleId); - } - // remove module definition _moduleDefinitions.DeleteModuleDefinition(id); _syncManager.AddSyncEvent(_alias, EntityNames.ModuleDefinition, moduledefinition.ModuleDefinitionId, SyncEventActions.Delete);