diff --git a/Oqtane.Server/Controllers/ModuleController.cs b/Oqtane.Server/Controllers/ModuleController.cs index 4c70228b..fc3b4d64 100644 --- a/Oqtane.Server/Controllers/ModuleController.cs +++ b/Oqtane.Server/Controllers/ModuleController.cs @@ -264,8 +264,7 @@ namespace Oqtane.Controllers _userPermissions.IsAuthorized(User, module.SiteId, EntityNames.Folder, folderid, PermissionNames.Edit) && !string.IsNullOrEmpty(filename)) { // get content - module.IPortableContext = "Export Module"; - var content = _modules.ExportModule(module); + var content = _modules.ExportModule(module, "Export Module"); // get folder var folder = _folders.GetFolder(folderid, false); @@ -318,8 +317,7 @@ namespace Oqtane.Controllers var module = _modules.GetModule(moduleid); if (ModelState.IsValid && module != null && module.SiteId == _alias.SiteId && _userPermissions.IsAuthorized(User, module.SiteId, EntityNames.Page, pageid, PermissionNames.Edit)) { - module.IPortableContext = "Import Module"; - success = _modules.ImportModule(module, content); + success = _modules.ImportModule(module, content, "Import Module"); if (success) { _logger.Log(LogLevel.Information, this, LogFunction.Update, "Module Content Imported {ModuleId}", moduleid); diff --git a/Oqtane.Server/Controllers/PageController.cs b/Oqtane.Server/Controllers/PageController.cs index a9110da9..33a3ed0b 100644 --- a/Oqtane.Server/Controllers/PageController.cs +++ b/Oqtane.Server/Controllers/PageController.cs @@ -239,12 +239,10 @@ namespace Oqtane.Controllers module = _modules.AddModule(module); // deep copy module content (includes settings) - pm.Module.IPortableContext = "Copy Page"; - string content = _modules.ExportModule(pm.Module); + string content = _modules.ExportModule(pm.Module, "Copy Page"); if (content != "") { - module.IPortableContext = "Copy Page"; - _modules.ImportModule(module, content); + _modules.ImportModule(module, content, "Copy Page"); } PageModule pagemodule = new PageModule(); @@ -562,12 +560,10 @@ namespace Oqtane.Controllers module = _modules.AddModule(module); // deep copy module content (includes settings) - pm.Module.IPortableContext = "Copy Page"; - string content = _modules.ExportModule(pm.Module); + string content = _modules.ExportModule(pm.Module, "Copy Page"); if (content != "") { - module.IPortableContext = "Copy Page"; - _modules.ImportModule(module, content); + _modules.ImportModule(module, content, "Copy Page"); } } else diff --git a/Oqtane.Server/Infrastructure/SiteTasks/GlobalReplaceTask.cs b/Oqtane.Server/Infrastructure/SiteTasks/GlobalReplaceTask.cs index bb0d8c76..c99ce10a 100644 --- a/Oqtane.Server/Infrastructure/SiteTasks/GlobalReplaceTask.cs +++ b/Oqtane.Server/Infrastructure/SiteTasks/GlobalReplaceTask.cs @@ -149,12 +149,11 @@ namespace Oqtane.Infrastructure // module content if (globalReplace.Content) { - pageModule.Module.IPortableContext = "Global Replace"; - var content = moduleRepository.ExportModule(pageModule.Module); + var content = moduleRepository.ExportModule(pageModule.Module, "Global Replace"); if (!string.IsNullOrEmpty(content) && content.Contains(WebUtility.HtmlEncode(find), comparisonType)) { content = content.Replace(WebUtility.HtmlEncode(find), WebUtility.HtmlEncode(replace), comparisonType); - moduleRepository.ImportModule(pageModule.Module, content); + moduleRepository.ImportModule(pageModule.Module, content, "Global Replace"); log += $"Module Content Updated: {pageModule.Title} Page: /{page.Path}
"; } } diff --git a/Oqtane.Server/Repository/ModuleRepository.cs b/Oqtane.Server/Repository/ModuleRepository.cs index fa77d4d7..9a1549f5 100644 --- a/Oqtane.Server/Repository/ModuleRepository.cs +++ b/Oqtane.Server/Repository/ModuleRepository.cs @@ -20,9 +20,9 @@ namespace Oqtane.Repository Module GetModule(int moduleId, bool tracking); void DeleteModule(int moduleId); string ExportModule(int moduleId); - string ExportModule(Module module); + string ExportModule(Module module, string IPortableContext); bool ImportModule(int moduleId, string content); - bool ImportModule(Module module, string content); + bool ImportModule(Module module, string content, string IPortableContext); } public class ModuleRepository : IModuleRepository @@ -103,10 +103,10 @@ namespace Oqtane.Repository public string ExportModule(int moduleId) { Module module = GetModule(moduleId); - return ExportModule(module); + return ExportModule(module, "Export Module"); } - public string ExportModule(Module module) + public string ExportModule(Module module, string IPortableContext) { string content = ""; try @@ -132,6 +132,7 @@ namespace Oqtane.Repository { try { + module.IPortableContext = IPortableContext; module.Settings = settings.ToDictionary(x => x.SettingName, x => x.SettingValue); var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype); modulecontent.Content = ((IPortable)moduleobject).ExportModule(module); @@ -158,10 +159,10 @@ namespace Oqtane.Repository public bool ImportModule(int moduleId, string content) { Module module = GetModule(moduleId); - return ImportModule(module, content); + return ImportModule(module, content, "Import Module"); } - public bool ImportModule(Module module, string content) + public bool ImportModule(Module module, string content, string IPortableContext) { bool success = false; try @@ -216,6 +217,7 @@ namespace Oqtane.Repository { try { + module.IPortableContext = IPortableContext; module.Settings = _settings.GetSettings(EntityNames.Module, module.ModuleId).ToDictionary(x => x.SettingName, x => x.SettingValue); var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype); ((IPortable)moduleobject).ImportModule(module, modulecontent.Content, modulecontent.Version); diff --git a/Oqtane.Server/Repository/SiteRepository.cs b/Oqtane.Server/Repository/SiteRepository.cs index 17bc5115..8828724c 100644 --- a/Oqtane.Server/Repository/SiteRepository.cs +++ b/Oqtane.Server/Repository/SiteRepository.cs @@ -535,8 +535,7 @@ namespace Oqtane.Repository if (!string.IsNullOrEmpty(pageTemplateModule.Content)) { var module = _moduleRepository.GetModule(pageModule.ModuleId); - module.IPortableContext = "Site Template"; - if (!_moduleRepository.ImportModule(module, pageTemplateModule.Content)) + if (!_moduleRepository.ImportModule(module, pageTemplateModule.Content, "Site Template")) { if (alias != null) {