Merge pull request #6112 from sbwalker/dev
fix #6111 - regression issue caused by #6106
This commit is contained in:
@@ -264,7 +264,8 @@ namespace Oqtane.Controllers
|
|||||||
_userPermissions.IsAuthorized(User, module.SiteId, EntityNames.Folder, folderid, PermissionNames.Edit) && !string.IsNullOrEmpty(filename))
|
_userPermissions.IsAuthorized(User, module.SiteId, EntityNames.Folder, folderid, PermissionNames.Edit) && !string.IsNullOrEmpty(filename))
|
||||||
{
|
{
|
||||||
// get content
|
// get content
|
||||||
var content = _modules.ExportModule(moduleid);
|
module.IPortableContext = "Export Module";
|
||||||
|
var content = _modules.ExportModule(module);
|
||||||
|
|
||||||
// get folder
|
// get folder
|
||||||
var folder = _folders.GetFolder(folderid, false);
|
var folder = _folders.GetFolder(folderid, false);
|
||||||
@@ -317,7 +318,8 @@ namespace Oqtane.Controllers
|
|||||||
var module = _modules.GetModule(moduleid);
|
var module = _modules.GetModule(moduleid);
|
||||||
if (ModelState.IsValid && module != null && module.SiteId == _alias.SiteId && _userPermissions.IsAuthorized(User, module.SiteId, EntityNames.Page, pageid, PermissionNames.Edit))
|
if (ModelState.IsValid && module != null && module.SiteId == _alias.SiteId && _userPermissions.IsAuthorized(User, module.SiteId, EntityNames.Page, pageid, PermissionNames.Edit))
|
||||||
{
|
{
|
||||||
success = _modules.ImportModule(moduleid, content);
|
module.IPortableContext = "Import Module";
|
||||||
|
success = _modules.ImportModule(module, content);
|
||||||
if (success)
|
if (success)
|
||||||
{
|
{
|
||||||
_logger.Log(LogLevel.Information, this, LogFunction.Update, "Module Content Imported {ModuleId}", moduleid);
|
_logger.Log(LogLevel.Information, this, LogFunction.Update, "Module Content Imported {ModuleId}", moduleid);
|
||||||
|
|||||||
@@ -238,10 +238,13 @@ namespace Oqtane.Controllers
|
|||||||
};
|
};
|
||||||
module = _modules.AddModule(module);
|
module = _modules.AddModule(module);
|
||||||
|
|
||||||
string content = _modules.ExportModule(pm.ModuleId);
|
// deep copy module content (includes settings)
|
||||||
|
pm.Module.IPortableContext = "Copy Page";
|
||||||
|
string content = _modules.ExportModule(pm.Module);
|
||||||
if (content != "")
|
if (content != "")
|
||||||
{
|
{
|
||||||
_modules.ImportModule(module.ModuleId, content);
|
module.IPortableContext = "Copy Page";
|
||||||
|
_modules.ImportModule(module, content);
|
||||||
}
|
}
|
||||||
|
|
||||||
PageModule pagemodule = new PageModule();
|
PageModule pagemodule = new PageModule();
|
||||||
|
|||||||
@@ -132,7 +132,6 @@ namespace Oqtane.Repository
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
module.IPortableContext = "Export Module";
|
|
||||||
module.Settings = settings.ToDictionary(x => x.SettingName, x => x.SettingValue);
|
module.Settings = settings.ToDictionary(x => x.SettingName, x => x.SettingValue);
|
||||||
var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype);
|
var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype);
|
||||||
modulecontent.Content = ((IPortable)moduleobject).ExportModule(module);
|
modulecontent.Content = ((IPortable)moduleobject).ExportModule(module);
|
||||||
@@ -173,13 +172,24 @@ namespace Oqtane.Repository
|
|||||||
ModuleDefinition moduledefinition = moduledefinitions.Where(item => item.ModuleDefinitionName == module.ModuleDefinitionName).FirstOrDefault();
|
ModuleDefinition moduledefinition = moduledefinitions.Where(item => item.ModuleDefinitionName == module.ModuleDefinitionName).FirstOrDefault();
|
||||||
if (moduledefinition != null)
|
if (moduledefinition != null)
|
||||||
{
|
{
|
||||||
ModuleContent modulecontent = JsonSerializer.Deserialize<ModuleContent>(content.Replace("\n", ""));
|
var modulecontent = new ModuleContent();
|
||||||
|
if (content.StartsWith("{") && content.EndsWith("}"))
|
||||||
|
{
|
||||||
|
// content was exported as a serialized ModuleContent object
|
||||||
|
modulecontent = JsonSerializer.Deserialize<ModuleContent>(content.Replace("\n", ""));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// raw content
|
||||||
|
modulecontent.ModuleDefinitionName = moduledefinition.ModuleDefinitionName;
|
||||||
|
modulecontent.Version = moduledefinition.Version;
|
||||||
|
modulecontent.Content = content;
|
||||||
|
}
|
||||||
if (modulecontent.ModuleDefinitionName == moduledefinition.ModuleDefinitionName)
|
if (modulecontent.ModuleDefinitionName == moduledefinition.ModuleDefinitionName)
|
||||||
{
|
{
|
||||||
var settings = _settings.GetSettings(EntityNames.Module, module.ModuleId);
|
|
||||||
|
|
||||||
if (modulecontent.Settings != null)
|
if (modulecontent.Settings != null)
|
||||||
{
|
{
|
||||||
|
var settings = _settings.GetSettings(EntityNames.Module, module.ModuleId);
|
||||||
foreach (var kvp in modulecontent.Settings)
|
foreach (var kvp in modulecontent.Settings)
|
||||||
{
|
{
|
||||||
var setting = settings.FirstOrDefault(item => item.SettingName == kvp.Key);
|
var setting = settings.FirstOrDefault(item => item.SettingName == kvp.Key);
|
||||||
@@ -206,7 +216,6 @@ namespace Oqtane.Repository
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
module.IPortableContext = "Import Module";
|
|
||||||
module.Settings = _settings.GetSettings(EntityNames.Module, module.ModuleId).ToDictionary(x => x.SettingName, x => x.SettingValue);
|
module.Settings = _settings.GetSettings(EntityNames.Module, module.ModuleId).ToDictionary(x => x.SettingName, x => x.SettingValue);
|
||||||
var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype);
|
var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype);
|
||||||
((IPortable)moduleobject).ImportModule(module, modulecontent.Content, modulecontent.Version);
|
((IPortable)moduleobject).ImportModule(module, modulecontent.Content, modulecontent.Version);
|
||||||
|
|||||||
Reference in New Issue
Block a user