From c68a8d3f182481b4c13c4770834e06881c0da826 Mon Sep 17 00:00:00 2001 From: Arvind Ganesh Date: Sat, 22 Feb 2025 16:27:51 +0530 Subject: [PATCH] SaveAndClose: Separated save from save & continue button in Content Type & Admin menu --- .../Controllers/NodeController.cs | 12 ++++++++++-- .../OrchardCore.AdminMenu/Views/Node/Edit.cshtml | 10 +++++++++- .../Controllers/AdminController.cs | 11 +++++++++-- .../OrchardCore.ContentTypes/Views/Admin/Edit.cshtml | 10 +++++++++- 4 files changed, 37 insertions(+), 6 deletions(-) diff --git a/src/OrchardCore.Modules/OrchardCore.AdminMenu/Controllers/NodeController.cs b/src/OrchardCore.Modules/OrchardCore.AdminMenu/Controllers/NodeController.cs index 7f85195ae12..7e60d526ee7 100644 --- a/src/OrchardCore.Modules/OrchardCore.AdminMenu/Controllers/NodeController.cs +++ b/src/OrchardCore.Modules/OrchardCore.AdminMenu/Controllers/NodeController.cs @@ -193,7 +193,7 @@ public async Task Edit(string id, string treeNodeId) } [HttpPost] - public async Task Edit(AdminNodeEditViewModel model) + public async Task Edit(AdminNodeEditViewModel model, string submit) { if (!await _authorizationService.AuthorizeAsync(User, AdminMenuPermissions.ManageAdminMenu)) { @@ -225,7 +225,15 @@ public async Task Edit(AdminNodeEditViewModel model) await _adminMenuService.SaveAsync(adminMenu); await _notifier.SuccessAsync(H["Admin node updated successfully."]); - return RedirectToAction(nameof(List), new { id = model.AdminMenuId }); + if (String.Equals(submit, "saveAndContinue", StringComparison.Ordinal)) + { + model.Editor = editor; + return View(model); + } + else + { + return RedirectToAction(nameof(List), new { id = model.AdminMenuId }); + } } await _notifier.ErrorAsync(H["The admin node has validation errors."]); diff --git a/src/OrchardCore.Modules/OrchardCore.AdminMenu/Views/Node/Edit.cshtml b/src/OrchardCore.Modules/OrchardCore.AdminMenu/Views/Node/Edit.cshtml index 1932169d601..daa505d5f66 100644 --- a/src/OrchardCore.Modules/OrchardCore.AdminMenu/Views/Node/Edit.cshtml +++ b/src/OrchardCore.Modules/OrchardCore.AdminMenu/Views/Node/Edit.cshtml @@ -23,7 +23,15 @@
- +
+ + + +
@if (contentSettings.IsSystemDefined) {