Skip to content

Commit

Permalink
Merge pull request #3260 from sbwalker/dev
Browse files Browse the repository at this point in the history
fix issue with module order in panes caused by transition from Admin to Default pane naming
  • Loading branch information
sbwalker authored Sep 18, 2023
2 parents 5ed1284 + 5797bf5 commit d28516b
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions Oqtane.Server/Controllers/PageModuleController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@
using Oqtane.Security;
using System.Net;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Identity.Client.Extensibility;
using System;

namespace Oqtane.Controllers
{
Expand Down Expand Up @@ -133,14 +135,22 @@ public void Put(int pageid, string pane)
var page = _pages.GetPage(pageid);
if (page != null && page.SiteId == _alias.SiteId && _userPermissions.IsAuthorized(User, page.SiteId, EntityNames.Page, pageid, PermissionNames.Edit))
{
var panes = pane;
if (pane == PaneNames.Default || pane == PaneNames.Admin)
{
// treat default and admin panes as a single pane
panes = PaneNames.Default + "," + PaneNames.Admin;
pane = PaneNames.Default;
}
int order = 1;
List<PageModule> pagemodules = _pageModules.GetPageModules(page.SiteId)
.Where(item => item.PageId == pageid && item.Pane == pane).OrderBy(item => item.Order).ToList();
.Where(item => item.PageId == pageid && panes.Split(',').Contains(item.Pane)).OrderBy(item => item.Order).ToList();
foreach (PageModule pagemodule in pagemodules)
{
if (pagemodule.Order != order)
if (pagemodule.Order != order || pagemodule.Pane != pane)
{
pagemodule.Order = order;
pagemodule.Pane = pane;
_pageModules.UpdatePageModule(pagemodule);
_syncManager.AddSyncEvent(_alias.TenantId, EntityNames.PageModule, pagemodule.PageModuleId, SyncEventActions.Update);
}
Expand Down

0 comments on commit d28516b

Please sign in to comment.