From 4ac827b9e872833df24aabdc80683ac634cf67c9 Mon Sep 17 00:00:00 2001 From: sbwalker Date: Tue, 30 Apr 2024 16:41:24 -0400 Subject: [PATCH] fix #4206 - validate folder name for duplicates --- Oqtane.Client/Modules/Admin/Files/Edit.razor | 11 +++++++++-- Oqtane.Client/Resources/Modules/Admin/Files/Edit.resx | 3 +++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Oqtane.Client/Modules/Admin/Files/Edit.razor b/Oqtane.Client/Modules/Admin/Files/Edit.razor index 05990fe4..e026b7b5 100644 --- a/Oqtane.Client/Modules/Admin/Files/Edit.razor +++ b/Oqtane.Client/Modules/Admin/Files/Edit.razor @@ -170,6 +170,7 @@ try { Folder folder; + if (_folderId != -1) { folder = await FolderService.GetFolderAsync(_folderId); @@ -179,8 +180,6 @@ folder = new Folder(); } - folder.SiteId = PageState.Site.SiteId; - if (_parentId == -1) { folder.ParentId = null; @@ -189,7 +188,15 @@ { folder.ParentId = _parentId; } + + // check for duplicate folder names + if (_folders.Any(item => item.ParentId == folder.ParentId && item.Name == _name && item.FolderId != _folderId)) + { + AddModuleMessage(Localizer["Message.Folder.Duplicate"], MessageType.Warning); + return; + } + folder.SiteId = PageState.Site.SiteId; folder.Name = _name; folder.Type = _type; folder.ImageSizes = _imagesizes; diff --git a/Oqtane.Client/Resources/Modules/Admin/Files/Edit.resx b/Oqtane.Client/Resources/Modules/Admin/Files/Edit.resx index cd3d71bb..a8d788c6 100644 --- a/Oqtane.Client/Resources/Modules/Admin/Files/Edit.resx +++ b/Oqtane.Client/Resources/Modules/Admin/Files/Edit.resx @@ -195,4 +195,7 @@ Folder Management + + Folder Name Specified Already Exists In Parent + \ No newline at end of file