fix issues when importing SiteTemplates

This commit is contained in:
sbwalker 2024-05-24 22:51:34 -04:00
parent e30037c4d1
commit dfe530a764
2 changed files with 37 additions and 19 deletions

View File

@ -328,7 +328,7 @@
var visitorCookieName = Constants.VisitorCookiePrefix + SiteId.ToString();
var visitorCookieValue = Context.Request.Cookies[visitorCookieName];
DateTime expiry = DateTime.MinValue;
if (visitorCookieValue.Contains("|"))
if (visitorCookieValue != null && visitorCookieValue.Contains("|"))
{
var values = visitorCookieValue.Split('|');
int.TryParse(values[0], out _visitorId);

View File

@ -165,22 +165,23 @@ namespace Oqtane.Repository
if (!serverstate.IsInitialized)
{
var site = GetSite(alias.SiteId);
// initialize theme Assemblies
site.Themes = _themeRepository.GetThemes().ToList();
// initialize module Assemblies
var moduleDefinitions = _moduleDefinitionRepository.GetModuleDefinitions(alias.SiteId);
// execute migrations
var version = ProcessSiteMigrations(alias, site);
version = ProcessPageTemplates(alias, site, moduleDefinitions, version);
if (site.Version != version)
if (site != null)
{
site.Version = version;
UpdateSite(site);
}
// initialize theme Assemblies
site.Themes = _themeRepository.GetThemes().ToList();
// initialize module Assemblies
var moduleDefinitions = _moduleDefinitionRepository.GetModuleDefinitions(alias.SiteId);
// execute migrations
var version = ProcessSiteMigrations(alias, site);
version = ProcessPageTemplates(alias, site, moduleDefinitions, version);
if (site.Version != version)
{
site.Version = version;
UpdateSite(site);
}
}
serverstate.IsInitialized = true;
}
}
@ -411,7 +412,7 @@ namespace Oqtane.Repository
}
else
{
parent = pages.FirstOrDefault(item => item.Path.ToLower() == pageTemplate.Parent.ToLower());
parent = pages.FirstOrDefault(item => item.Path.ToLower() == ((pageTemplate.Parent == "/") ? "" : pageTemplate.Parent.ToLower()));
}
page.ParentId = (parent != null) ? parent.PageId : null;
page.Path = page.Path.ToLower();
@ -487,7 +488,21 @@ namespace Oqtane.Repository
pageModule.Order = (pageTemplateModule.Order == 0) ? 1 : pageTemplateModule.Order;
pageModule.ContainerType = pageTemplateModule.ContainerType;
pageModule.IsDeleted = pageTemplateModule.IsDeleted;
pageModule.Module.PermissionList = pageTemplateModule.PermissionList;
pageModule.Module.PermissionList = new List<Permission>();
foreach (var permission in pageTemplateModule.PermissionList)
{
pageModule.Module.PermissionList.Add(new Permission
{
SiteId = permission.SiteId,
EntityName = permission.EntityName,
EntityId = permission.EntityId,
PermissionName = permission.PermissionName,
RoleName = permission.RoleName,
UserId = permission.UserId,
IsAuthorized = permission.IsAuthorized
});
}
//pageModule.Module.PermissionList = pageTemplateModule.PermissionList;
pageModule.Module.AllPages = false;
pageModule.Module.IsDeleted = false;
try
@ -539,8 +554,11 @@ namespace Oqtane.Repository
try
{
var module = _moduleRepository.GetModule(pageModule.ModuleId);
var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype);
((IPortable)moduleobject).ImportModule(module, pageTemplateModule.Content, moduleDefinition.Version);
if (module != null)
{
var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype);
((IPortable)moduleobject).ImportModule(module, pageTemplateModule.Content, moduleDefinition.Version);
}
}
catch (Exception ex)
{