Merge remote-tracking branch 'oqtane/dev' into dev

This commit is contained in:
Leigh Pointer 2023-06-02 10:42:16 +02:00
commit 7eca15d50f
3 changed files with 14 additions and 9 deletions

View File

@ -15,7 +15,7 @@ namespace Oqtane.Infrastructure.EventSubscribers
public void EntityChanged(SyncEvent syncEvent) public void EntityChanged(SyncEvent syncEvent)
{ {
if (syncEvent.EntityName == "Site" && syncEvent.Action == SyncEventActions.Refresh) if (syncEvent.EntityName == EntityNames.Site && syncEvent.Action == SyncEventActions.Refresh)
{ {
_cache.Remove($"site:{syncEvent.TenantId}:{syncEvent.EntityId}"); _cache.Remove($"site:{syncEvent.TenantId}:{syncEvent.EntityId}");
} }

View File

@ -319,14 +319,14 @@ namespace Oqtane.Repository
{ {
pages = _pageRepository.GetPages(site.SiteId).ToList(); pages = _pageRepository.GetPages(site.SiteId).ToList();
} }
var page = pages.FirstOrDefault(item => item.Path == pageTemplate.Path); var page = pages.FirstOrDefault(item => item.Path.ToLower() == pageTemplate.Path.ToLower());
if (page == null) if (page == null)
{ {
page = new Page(); page = new Page();
page.SiteId = site.SiteId; page.SiteId = site.SiteId;
page.Path = pageTemplate.Path.ToLower(); page.Path = pageTemplate.Path.ToLower();
} }
page.Name = (string.IsNullOrEmpty(pageTemplate.Name)) ? page.Path : pageTemplate.Name; page.Name = (!string.IsNullOrEmpty(pageTemplate.Name)) ? pageTemplate.Name : page.Path;
page.Name = (page.Name.Contains("/")) ? page.Name.Substring(page.Name.LastIndexOf("/") + 1) : page.Name; page.Name = (page.Name.Contains("/")) ? page.Name.Substring(page.Name.LastIndexOf("/") + 1) : page.Name;
int? parentid = null; int? parentid = null;
if (!string.IsNullOrEmpty(pageTemplate.Parent)) if (!string.IsNullOrEmpty(pageTemplate.Parent))
@ -392,7 +392,7 @@ namespace Oqtane.Repository
var moduleDefinition = moduleDefinitions.Where(item => item.ModuleDefinitionName == pageTemplateModule.ModuleDefinitionName).FirstOrDefault(); var moduleDefinition = moduleDefinitions.Where(item => item.ModuleDefinitionName == pageTemplateModule.ModuleDefinitionName).FirstOrDefault();
if (moduleDefinition != null) if (moduleDefinition != null)
{ {
var pageModule = pageModules.FirstOrDefault(item => item.PageId == page.PageId && item.Module.ModuleDefinitionName == pageTemplateModule.ModuleDefinitionName && item.Title == pageTemplateModule.Title); var pageModule = pageModules.FirstOrDefault(item => item.PageId == page.PageId && item.Module.ModuleDefinitionName == pageTemplateModule.ModuleDefinitionName && item.Title.ToLower() == pageTemplateModule.Title.ToLower());
if (pageModule == null) if (pageModule == null)
{ {
pageModule = new PageModule(); pageModule = new PageModule();
@ -403,6 +403,7 @@ namespace Oqtane.Repository
} }
pageModule.Title = pageTemplateModule.Title; pageModule.Title = pageTemplateModule.Title;
pageModule.Pane = pageTemplateModule.Pane; pageModule.Pane = pageTemplateModule.Pane;
pageModule.Order = pageTemplateModule.Order;
pageModule.ContainerType = pageTemplateModule.ContainerType; pageModule.ContainerType = pageTemplateModule.ContainerType;
pageModule.IsDeleted = pageTemplateModule.IsDeleted; pageModule.IsDeleted = pageTemplateModule.IsDeleted;
pageModule.Module.PermissionList = pageTemplateModule.PermissionList; pageModule.Module.PermissionList = pageTemplateModule.PermissionList;
@ -416,18 +417,20 @@ namespace Oqtane.Repository
_pageModuleRepository.UpdatePageModule(pageModule); _pageModuleRepository.UpdatePageModule(pageModule);
if (alias != null) if (alias != null)
{ {
_logger.Log(LogLevel.Information, "Site Template", LogFunction.Update, "Page Mopdule Updated {PageModule}", pageModule); _logger.Log(LogLevel.Information, "Site Template", LogFunction.Update, "Page Module Updated {PageModule}", pageModule);
} }
} }
else else
{ {
pageModule.Module = _moduleRepository.AddModule(pageModule.Module); var module = _moduleRepository.AddModule(pageModule.Module);
pageModule.ModuleId = pageModule.Module.ModuleId; pageModule.ModuleId = module.ModuleId;
pageModule.Module = null; // remove tracking pageModule.Module = null; // remove tracking
_pageModuleRepository.AddPageModule(pageModule); _pageModuleRepository.AddPageModule(pageModule);
pageModule.Module = module;
pageModules.Add(pageModule);
if (alias != null) if (alias != null)
{ {
_logger.Log(LogLevel.Information, "Site Template", LogFunction.Create, "Page Mopdule Added {PageModule}", pageModule); _logger.Log(LogLevel.Information, "Site Template", LogFunction.Create, "Page Module Added {PageModule}", pageModule);
} }
} }

View File

@ -47,7 +47,6 @@ This project is open source, and therefore is a work in progress...
Backlog (TBD) Backlog (TBD)
- [ ] Azure Autoscale support (ie. web farm) - [ ] Azure Autoscale support (ie. web farm)
- [ ] Routable Modules (ie. declarative configuration)
- [ ] Folder Providers - [ ] Folder Providers
- [ ] Generative AI Integration - [ ] Generative AI Integration
@ -58,6 +57,9 @@ Backlog (TBD)
- [x] Migration to .NET 7 - [x] Migration to .NET 7
- [x] Improved JavaScript, CSS, and Meta support - [x] Improved JavaScript, CSS, and Meta support
- [x] Optimized Client Assembly Loading - [x] Optimized Client Assembly Loading
- [x] Routable Modules (ie. declarative configuration)
- [x] Site Template improvements
- [x] IEventSubscriber interface
[3.4.3](https://github.com/oqtane/oqtane.framework/releases/tag/v3.4.3) ( May 3, 2023 ) [3.4.3](https://github.com/oqtane/oqtane.framework/releases/tag/v3.4.3) ( May 3, 2023 )
- [x] Stabilization improvements - [x] Stabilization improvements