add new global replace service for bulk updating content

This commit is contained in:
sbwalker
2026-02-18 13:59:25 -05:00
parent 48a70c8be3
commit 13a58ed099
12 changed files with 599 additions and 8 deletions

View File

@@ -93,6 +93,9 @@ namespace Oqtane.Infrastructure
case "10.0.4":
Upgrade_10_0_4(tenant, scope);
break;
case "10.1.0":
Upgrade_10_1_0(tenant, scope);
break;
}
}
}
@@ -602,6 +605,45 @@ namespace Oqtane.Infrastructure
RemoveAssemblies(tenant, assemblies, "10.0.4");
}
private void Upgrade_10_1_0(Tenant tenant, IServiceScope scope)
{
var pageTemplates = new List<PageTemplate>
{
new PageTemplate
{
Update = false,
Name = "Global Replace",
Parent = "Admin",
Order = 23,
Path = "admin/replace",
Icon = Icons.LoopSquare,
IsNavigation = false,
IsPersonalizable = false,
PermissionList = new List<Permission>
{
new Permission(PermissionNames.View, RoleNames.Admin, true),
new Permission(PermissionNames.Edit, RoleNames.Admin, true)
},
PageTemplateModules = new List<PageTemplateModule>
{
new PageTemplateModule
{
ModuleDefinitionName = typeof(Oqtane.Modules.Admin.GlobalReplace.Index).ToModuleDefinitionName(), Title = "Global Replace", Pane = PaneNames.Default,
PermissionList = new List<Permission>
{
new Permission(PermissionNames.View, RoleNames.Admin, true),
new Permission(PermissionNames.Edit, RoleNames.Admin, true)
},
Content = ""
}
}
}
};
AddPagesToSites(scope, tenant, pageTemplates);
}
private void AddPagesToSites(IServiceScope scope, Tenant tenant, List<PageTemplate> pageTemplates)
{
var tenants = scope.ServiceProvider.GetRequiredService<ITenantManager>();