From 3cd724975001847ba7c669644c32abba1f154d1e Mon Sep 17 00:00:00 2001 From: Leigh Date: Wed, 8 Sep 2021 08:08:24 +0200 Subject: [PATCH] Page create - Recycle Bin Check After Delete Page, Cant create page of same name #1645 issue. Added check and message if the page is in the recycle bin. --- Oqtane.Client/Modules/Admin/Pages/Add.razor | 11 +++++++++++ Oqtane.Client/Resources/Modules/Admin/Pages/Add.resx | 3 +++ 2 files changed, 14 insertions(+) diff --git a/Oqtane.Client/Modules/Admin/Pages/Add.razor b/Oqtane.Client/Modules/Admin/Pages/Add.razor index 45c0794d..806ef585 100644 --- a/Oqtane.Client/Modules/Admin/Pages/Add.razor +++ b/Oqtane.Client/Modules/Admin/Pages/Add.razor @@ -322,6 +322,12 @@ } } + if(!PagePathIsDeleted(page.Path, page.SiteId, _pageList)) + { + AddModuleMessage(string.Format(Localizer["Message.Page.Deleted"], _path), MessageType.Warning); + return; + } + if (!PagePathIsUnique(page.Path, page.SiteId, _pageList)) { AddModuleMessage(string.Format(Localizer["Message.Page.Exists"], _path), MessageType.Warning); @@ -412,4 +418,9 @@ { return !existingPages.Any(page => page.SiteId == siteId && page.Path == pagePath); } + + private static bool PagePathIsDeleted(string pagePath, int siteId, List existingPages) + { + return !existingPages.Any(page => page.SiteId == siteId && page.Path == pagePath && page.IsDeleted == true); + } } diff --git a/Oqtane.Client/Resources/Modules/Admin/Pages/Add.resx b/Oqtane.Client/Resources/Modules/Admin/Pages/Add.resx index 51d01dc9..5f2f31e5 100644 --- a/Oqtane.Client/Resources/Modules/Admin/Pages/Add.resx +++ b/Oqtane.Client/Resources/Modules/Admin/Pages/Add.resx @@ -228,4 +228,7 @@ Appearance + + A page with path {0} already exists for the selected parent page in the Recycle Bin. Either recover the page or remove from the Recycle Bin and create it again. + \ No newline at end of file