From 7205246718c1a93bb875a5cfd0b549dc47b7abb8 Mon Sep 17 00:00:00 2001 From: Leigh Pointer Date: Wed, 3 Mar 2021 13:25:49 +0100 Subject: [PATCH 1/4] Added Delete all pages and modules --- .../Modules/Admin/RecycleBin/Index.razor | 72 +++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor b/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor index 2d81476a..c26f852b 100644 --- a/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor +++ b/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor @@ -31,6 +31,9 @@ @context.DeletedOn +
+ +
} @@ -59,6 +62,10 @@ @context.DeletedOn +
+ +
+ }
@@ -69,6 +76,22 @@ public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; + protected string IsDeleteAllPagesVisible + { + get + { + return _pages.Count == 0 ? "hidden" : "visible"; + } + } + + protected string IsDeleteAllModulesVisible + { + get { + return _modules.Count == 0 ? "hidden" : "visible" ; + } + } + + protected override async Task OnInitializedAsync() { try @@ -126,6 +149,28 @@ } } + private async Task DeleteAllPages() + { + try + { + foreach (Page page in _pages) + { + await PageService.DeletePageAsync(page.PageId); + await logger.LogInformation("Page Permanently Deleted {Page}", page); + } + + await logger.LogInformation("Pages Permanently Deleted"); + await Load(); + StateHasChanged(); + NavigationManager.NavigateTo(NavigateUrl()); + } + catch (Exception ex) + { + await logger.LogError(ex, "Error Permanently Deleting Pages {Error}", ex.Message); + AddModuleMessage(ex.Message, MessageType.Error); + } + } + private async Task RestoreModule(Module module) { try @@ -167,4 +212,31 @@ AddModuleMessage(Localizer["Error Permanently Deleting Module"], MessageType.Error); } } + + private async Task DeleteAllModules() + { + try + { + foreach (Module module in _modules) + { + await PageModuleService.DeletePageModuleAsync(module.PageModuleId); + // check if there are any remaining module instances in the site + _modules = await ModuleService.GetModulesAsync(PageState.Site.SiteId); + + if (!_modules.Exists(item => item.ModuleId == module.ModuleId)) + { + await ModuleService.DeleteModuleAsync(module.ModuleId); + } + } + + await logger.LogInformation("Modules Permanently Deleted"); + await Load(); + StateHasChanged(); + } + catch (Exception ex) + { + await logger.LogError(ex, "Error Permanently Deleting Modules {Error}", ex.Message); + AddModuleMessage(Localizer["Error Permanently Deleting Modules"], MessageType.Error); + } + } } From a03434ac413b10ac97080dba1dc8ecd6623c4b25 Mon Sep 17 00:00:00 2001 From: Leigh Pointer Date: Wed, 3 Mar 2021 16:39:32 +0100 Subject: [PATCH 2/4] recycle bin and log paging --- Oqtane.Client/Modules/Admin/Logs/Index.razor | 2 +- .../Modules/Admin/RecycleBin/Index.razor | 34 +++++++------------ 2 files changed, 13 insertions(+), 23 deletions(-) diff --git a/Oqtane.Client/Modules/Admin/Logs/Index.razor b/Oqtane.Client/Modules/Admin/Logs/Index.razor index 3ace61fd..6ccb8bb8 100644 --- a/Oqtane.Client/Modules/Admin/Logs/Index.razor +++ b/Oqtane.Client/Modules/Admin/Logs/Index.razor @@ -48,7 +48,7 @@ else @if (_logs.Any()) { - +
  @Localizer["Date"] diff --git a/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor b/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor index c26f852b..7c30c7a1 100644 --- a/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor +++ b/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor @@ -31,9 +31,12 @@ @context.DeletedOn -
- -
+ @if (_pages.Any()) + { +
+ +
+ } } @@ -62,9 +65,12 @@ @context.DeletedOn -
- -
+ @if (_modules.Any()) + { +
+ +
+ } }
@@ -76,22 +82,6 @@ public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; - protected string IsDeleteAllPagesVisible - { - get - { - return _pages.Count == 0 ? "hidden" : "visible"; - } - } - - protected string IsDeleteAllModulesVisible - { - get { - return _modules.Count == 0 ? "hidden" : "visible" ; - } - } - - protected override async Task OnInitializedAsync() { try From 0fd46d28b5769cae21a9f718bba0b1dc5ba20797 Mon Sep 17 00:00:00 2001 From: Leigh Pointer Date: Wed, 3 Mar 2021 16:55:13 +0100 Subject: [PATCH 3/4] Delete all modules and pages in recycle bin --- .../Modules/Admin/RecycleBin/Index.razor | 34 +++++++------------ 1 file changed, 12 insertions(+), 22 deletions(-) diff --git a/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor b/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor index c26f852b..7c30c7a1 100644 --- a/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor +++ b/Oqtane.Client/Modules/Admin/RecycleBin/Index.razor @@ -31,9 +31,12 @@ @context.DeletedOn -
- -
+ @if (_pages.Any()) + { +
+ +
+ } } @@ -62,9 +65,12 @@ @context.DeletedOn -
- -
+ @if (_modules.Any()) + { +
+ +
+ } }
@@ -76,22 +82,6 @@ public override SecurityAccessLevel SecurityAccessLevel => SecurityAccessLevel.Admin; - protected string IsDeleteAllPagesVisible - { - get - { - return _pages.Count == 0 ? "hidden" : "visible"; - } - } - - protected string IsDeleteAllModulesVisible - { - get { - return _modules.Count == 0 ? "hidden" : "visible" ; - } - } - - protected override async Task OnInitializedAsync() { try From 63fc1cd04291bf2ea468facf4736af329d0bb6f1 Mon Sep 17 00:00:00 2001 From: Leigh Pointer Date: Wed, 3 Mar 2021 17:15:00 +0100 Subject: [PATCH 4/4] Update Index.razor --- Oqtane.Client/Modules/Admin/Logs/Index.razor | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Oqtane.Client/Modules/Admin/Logs/Index.razor b/Oqtane.Client/Modules/Admin/Logs/Index.razor index 6ccb8bb8..3ace61fd 100644 --- a/Oqtane.Client/Modules/Admin/Logs/Index.razor +++ b/Oqtane.Client/Modules/Admin/Logs/Index.razor @@ -48,7 +48,7 @@ else @if (_logs.Any()) { - +
  @Localizer["Date"]