Merge pull request #133 from fileman/PageModuleDeletable

Page module deletable
This commit is contained in:
Shaun Walker 2019-10-17 09:16:06 -04:00 committed by GitHub
commit d6e35a4ecf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 19 additions and 8 deletions

View File

@ -67,7 +67,7 @@
public void HideProgressIndicator() public void HideProgressIndicator()
{ {
progressindicator = true; progressindicator = false;
StateHasChanged(); StateHasChanged();
} }
} }

View File

@ -117,7 +117,7 @@
} }
else else
{ {
foreach (Module module in PageState.Modules.Where(item => item.Pane.ToLower() == Name.ToLower()).OrderBy(x => x.Order).ToArray()) foreach (Module module in PageState.Modules.Where(item => item.Pane.ToLower() == Name.ToLower() && !item.IsDeleted).OrderBy(x => x.Order).ToArray())
{ {
// check if user is authorized to view module // check if user is authorized to view module
if (UserSecurity.IsAuthorized(PageState.User, "View", module.Permissions)) if (UserSecurity.IsAuthorized(PageState.User, "View", module.Permissions))

View File

@ -103,7 +103,8 @@
url = EditUrl(pagemodule.ModuleId, "Export"); url = EditUrl(pagemodule.ModuleId, "Export");
break; break;
case "delete": case "delete":
await PageModuleService.DeletePageModuleAsync(pagemodule.PageModuleId); pagemodule.IsDeleted = true;
await PageModuleService.UpdatePageModuleAsync(pagemodule);
await PageModuleService.UpdatePageModuleOrderAsync(pagemodule.PageId, pagemodule.Pane); await PageModuleService.UpdatePageModuleOrderAsync(pagemodule.PageId, pagemodule.Pane);
break; break;
default: // move to pane default: // move to pane

View File

@ -47,6 +47,7 @@ namespace Oqtane.Controllers
module.CreatedOn = pagemodule.Module.CreatedOn; module.CreatedOn = pagemodule.Module.CreatedOn;
module.ModifiedBy = pagemodule.Module.ModifiedBy; module.ModifiedBy = pagemodule.Module.ModifiedBy;
module.ModifiedOn = pagemodule.Module.ModifiedOn; module.ModifiedOn = pagemodule.Module.ModifiedOn;
module.IsDeleted = pagemodule.IsDeleted;
module.PageModuleId = pagemodule.PageModuleId; module.PageModuleId = pagemodule.PageModuleId;
module.ModuleId = pagemodule.ModuleId; module.ModuleId = pagemodule.ModuleId;

View File

@ -18,7 +18,7 @@ CREATE TABLE [dbo].[Site](
[ModifiedOn] [datetime] NOT NULL, [ModifiedOn] [datetime] NOT NULL,
[DeletedBy] [nvarchar](256) NULL, [DeletedBy] [nvarchar](256) NULL,
[DeletedOn] [datetime] NULL, [DeletedOn] [datetime] NULL,
[IsDeleted][bit] NOT NULL [IsDeleted][bit] NOT NULL,
CONSTRAINT [PK_Site] PRIMARY KEY CLUSTERED CONSTRAINT [PK_Site] PRIMARY KEY CLUSTERED
( (
[SiteId] ASC [SiteId] ASC
@ -44,7 +44,7 @@ CREATE TABLE [dbo].[Page](
[ModifiedOn] [datetime] NOT NULL, [ModifiedOn] [datetime] NOT NULL,
[DeletedBy] [nvarchar](256) NULL, [DeletedBy] [nvarchar](256) NULL,
[DeletedOn] [datetime] NULL, [DeletedOn] [datetime] NULL,
[IsDeleted][bit] NOT NULL [IsDeleted][bit] NOT NULL,
CONSTRAINT [PK_Page] PRIMARY KEY CLUSTERED CONSTRAINT [PK_Page] PRIMARY KEY CLUSTERED
( (
[PageId] ASC [PageId] ASC
@ -79,6 +79,9 @@ CREATE TABLE [dbo].[PageModule](
[CreatedOn] [datetime] NOT NULL, [CreatedOn] [datetime] NOT NULL,
[ModifiedBy] [nvarchar](256) NOT NULL, [ModifiedBy] [nvarchar](256) NOT NULL,
[ModifiedOn] [datetime] NOT NULL, [ModifiedOn] [datetime] NOT NULL,
[DeletedBy] [nvarchar](256) NULL,
[DeletedOn] [datetime] NULL,
[IsDeleted][bit] NOT NULL,
CONSTRAINT [PK_PageModule] PRIMARY KEY CLUSTERED CONSTRAINT [PK_PageModule] PRIMARY KEY CLUSTERED
( (
[PageModuleId] ASC [PageModuleId] ASC
@ -97,7 +100,7 @@ CREATE TABLE [dbo].[User](
[ModifiedOn] [datetime] NOT NULL, [ModifiedOn] [datetime] NOT NULL,
[DeletedBy] [nvarchar](256) NULL, [DeletedBy] [nvarchar](256) NULL,
[DeletedOn] [datetime] NULL, [DeletedOn] [datetime] NULL,
[IsDeleted][bit] NOT NULL [IsDeleted][bit] NOT NULL,
CONSTRAINT [PK_User] PRIMARY KEY CLUSTERED CONSTRAINT [PK_User] PRIMARY KEY CLUSTERED
( (
[UserId] ASC [UserId] ASC

View File

@ -16,6 +16,9 @@ namespace Oqtane.Models
public string ModifiedBy { get; set; } public string ModifiedBy { get; set; }
public DateTime ModifiedOn { get; set; } public DateTime ModifiedOn { get; set; }
[NotMapped]
public bool IsDeleted { get; set; }
[NotMapped] [NotMapped]
public string Permissions { get; set; } public string Permissions { get; set; }

View File

@ -2,7 +2,7 @@
namespace Oqtane.Models namespace Oqtane.Models
{ {
public class PageModule : IAuditable public class PageModule : IAuditable, IDeletable
{ {
public int PageModuleId { get; set; } public int PageModuleId { get; set; }
public int PageId { get; set; } public int PageId { get; set; }
@ -16,6 +16,9 @@ namespace Oqtane.Models
public DateTime CreatedOn { get; set; } public DateTime CreatedOn { get; set; }
public string ModifiedBy { get; set; } public string ModifiedBy { get; set; }
public DateTime ModifiedOn { get; set; } public DateTime ModifiedOn { get; set; }
public string DeletedBy { get; set; }
public DateTime? DeletedOn { get; set; }
public bool IsDeleted { get; set; }
public Module Module { get; set; } public Module Module { get; set; }