Merge pull request #3260 from sbwalker/dev
fix issue with module order in panes caused by transition from Admin to Default pane naming
This commit is contained in:
commit
d28516b6b1
@ -10,6 +10,8 @@ using Oqtane.Repository;
|
|||||||
using Oqtane.Security;
|
using Oqtane.Security;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using Microsoft.AspNetCore.Mvc.RazorPages;
|
using Microsoft.AspNetCore.Mvc.RazorPages;
|
||||||
|
using Microsoft.Identity.Client.Extensibility;
|
||||||
|
using System;
|
||||||
|
|
||||||
namespace Oqtane.Controllers
|
namespace Oqtane.Controllers
|
||||||
{
|
{
|
||||||
@ -133,14 +135,22 @@ namespace Oqtane.Controllers
|
|||||||
var page = _pages.GetPage(pageid);
|
var page = _pages.GetPage(pageid);
|
||||||
if (page != null && page.SiteId == _alias.SiteId && _userPermissions.IsAuthorized(User, page.SiteId, EntityNames.Page, pageid, PermissionNames.Edit))
|
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;
|
int order = 1;
|
||||||
List<PageModule> pagemodules = _pageModules.GetPageModules(page.SiteId)
|
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)
|
foreach (PageModule pagemodule in pagemodules)
|
||||||
{
|
{
|
||||||
if (pagemodule.Order != order)
|
if (pagemodule.Order != order || pagemodule.Pane != pane)
|
||||||
{
|
{
|
||||||
pagemodule.Order = order;
|
pagemodule.Order = order;
|
||||||
|
pagemodule.Pane = pane;
|
||||||
_pageModules.UpdatePageModule(pagemodule);
|
_pageModules.UpdatePageModule(pagemodule);
|
||||||
_syncManager.AddSyncEvent(_alias.TenantId, EntityNames.PageModule, pagemodule.PageModuleId, SyncEventActions.Update);
|
_syncManager.AddSyncEvent(_alias.TenantId, EntityNames.PageModule, pagemodule.PageModuleId, SyncEventActions.Update);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user