Merge pull request #122 from fileman/FixPageDelete
Fix and Improve DeletePage
This commit is contained in:
commit
c2bd4f1775
|
@ -64,7 +64,7 @@ namespace Oqtane.Repository
|
||||||
public void DeleteModule(int ModuleId)
|
public void DeleteModule(int ModuleId)
|
||||||
{
|
{
|
||||||
Module Module = db.Module.Find(ModuleId);
|
Module Module = db.Module.Find(ModuleId);
|
||||||
Permissions.UpdatePermissions(Module.SiteId, "Module", ModuleId, "");
|
Permissions.DeletePermissions(Module.SiteId, "Module", ModuleId);
|
||||||
db.Module.Remove(Module);
|
db.Module.Remove(Module);
|
||||||
db.SaveChanges();
|
db.SaveChanges();
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,11 +9,15 @@ namespace Oqtane.Repository
|
||||||
{
|
{
|
||||||
private TenantDBContext db;
|
private TenantDBContext db;
|
||||||
private readonly IPermissionRepository Permissions;
|
private readonly IPermissionRepository Permissions;
|
||||||
|
private readonly IPageModuleRepository PageModules;
|
||||||
|
private readonly IModuleRepository ModuleRepository;
|
||||||
|
|
||||||
public PageRepository(TenantDBContext context, IPermissionRepository Permissions)
|
public PageRepository(TenantDBContext context, IPermissionRepository Permissions, IPageModuleRepository PageModules, IModuleRepository ModuleRepository)
|
||||||
{
|
{
|
||||||
db = context;
|
db = context;
|
||||||
this.Permissions = Permissions;
|
this.Permissions = Permissions;
|
||||||
|
this.PageModules = PageModules;
|
||||||
|
this.ModuleRepository = ModuleRepository;
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEnumerable<Page> GetPages()
|
public IEnumerable<Page> GetPages()
|
||||||
|
@ -62,7 +66,12 @@ namespace Oqtane.Repository
|
||||||
public void DeletePage(int PageId)
|
public void DeletePage(int PageId)
|
||||||
{
|
{
|
||||||
Page Page = db.Page.Find(PageId);
|
Page Page = db.Page.Find(PageId);
|
||||||
Permissions.UpdatePermissions(Page.SiteId, "Page", PageId, "");
|
Permissions.DeletePermissions(Page.SiteId, "Page", PageId);
|
||||||
|
IEnumerable<PageModule> pageModules = db.PageModule.Where(item => item.PageId == PageId).ToList();
|
||||||
|
foreach (var pageModule in pageModules)
|
||||||
|
{
|
||||||
|
PageModules.DeletePageModule(pageModule.PageModuleId);
|
||||||
|
}
|
||||||
db.Page.Remove(Page);
|
db.Page.Remove(Page);
|
||||||
db.SaveChanges();
|
db.SaveChanges();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user