From af35fb79fedb91e83872fdf8fce84ed6adeb90d3 Mon Sep 17 00:00:00 2001 From: sbwalker Date: Mon, 10 Jun 2024 14:55:06 -0400 Subject: [PATCH] refactored to move AdminSiteTemplate out of SiteRepository --- .../SiteTemplates/AdminSiteTemplate.cs | 745 ++++++++++++++++++ Oqtane.Server/Repository/SiteRepository.cs | 735 +---------------- .../Repository/SiteTemplateRepository.cs | 20 +- Oqtane.Shared/Shared/Constants.cs | 1 + 4 files changed, 768 insertions(+), 733 deletions(-) create mode 100644 Oqtane.Server/Infrastructure/SiteTemplates/AdminSiteTemplate.cs diff --git a/Oqtane.Server/Infrastructure/SiteTemplates/AdminSiteTemplate.cs b/Oqtane.Server/Infrastructure/SiteTemplates/AdminSiteTemplate.cs new file mode 100644 index 00000000..c70962ad --- /dev/null +++ b/Oqtane.Server/Infrastructure/SiteTemplates/AdminSiteTemplate.cs @@ -0,0 +1,745 @@ +using Oqtane.Models; +using Oqtane.Infrastructure; +using System.Collections.Generic; +using Oqtane.Shared; +using Oqtane.Documentation; + +namespace Oqtane.SiteTemplates +{ + [PrivateApi("Mark Site-Template classes as private, since it's not very useful in the public docs")] + public class AdminSiteTemplate : ISiteTemplate + { + public string Name + { + get { return "Admin Site Template"; } + } + + public List CreateSite(Site site) + { + var pageTemplates = new List(); + var seed = 1000; // order + + // user pages + pageTemplates.Add(new PageTemplate + { + Name = "Login", + Parent = "", + Path = "login", + Order = seed + 1, + Icon = Icons.LockLocked, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Login.Index).ToModuleDefinitionName(), Title = "User Login", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + + pageTemplates.Add(new PageTemplate + { + Name = "Register", + Parent = "", + Path = "register", + Order = seed + 3, + Icon = Icons.Person, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Register.Index).ToModuleDefinitionName(), Title = "User Registration", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + + pageTemplates.Add(new PageTemplate + { + Name = "Reset", + Parent = "", + Path = "reset", + Order = seed + 5, + Icon = Icons.Person, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Reset.Index).ToModuleDefinitionName(), Title = "Password Reset", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + + pageTemplates.Add(new PageTemplate + { + Name = "Profile", + Parent = "", + Path = "profile", + Order = seed + 7, + Icon = Icons.Person, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Registered, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.UserProfile.Index).ToModuleDefinitionName(), Title = "User Profile", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Registered, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + + pageTemplates.Add(new PageTemplate + { + Name = "Search", + Parent = "", + Path = "search", + Order = seed + 9, + Icon = "oi oi-magnifying-glass", + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List { + new PageTemplateModule { ModuleDefinitionName = "Oqtane.Modules.Admin.SearchResults, Oqtane.Client", Title = "Search", Pane = PaneNames.Default, + PermissionList = new List { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + } + } + } + }); + + pageTemplates.Add(new PageTemplate + { + Name = "Not Found", + Parent = "", + Path = "404", + Order = seed + 11, + Icon = Icons.X, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule { ModuleDefinitionName = "Oqtane.Modules.HtmlText, Oqtane.Client", Title = "Not Found", Pane = PaneNames.Default, + PermissionList = new List { + new Permission(PermissionNames.View, RoleNames.Everyone, true), + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "

The page you requested does not exist or you do not have sufficient rights to view it.

" + } + } + }); + + // admin pages + pageTemplates.Add(new PageTemplate + { + Name = "Admin", + Parent = "", + Path = "admin", + Order = seed + 51, + Icon = "", + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Dashboard.Index).ToModuleDefinitionName(), Title = "Admin Dashboard", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Site Settings", + Parent = "Admin", + Order = 1, + Path = "admin/site", + Icon = Icons.Home, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Site.Index).ToModuleDefinitionName(), Title = "Site Settings", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Page Management", + Parent = "Admin", + Order = 3, + Path = "admin/pages", + Icon = Icons.Layers, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.View, RoleNames.Registered, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Pages.Index).ToModuleDefinitionName(), Title = "Page Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "User Management", + Parent = "Admin", + Order = 5, + Path = "admin/users", + Icon = Icons.People, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Users.Index).ToModuleDefinitionName(), Title = "User Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Profile Management", + Parent = "Admin", + Order = 7, + Path = "admin/profiles", + Icon = Icons.Person, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Profiles.Index).ToModuleDefinitionName(), Title = "Profile Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Role Management", + Parent = "Admin", + Order = 9, + Path = "admin/roles", + Icon = Icons.LockLocked, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Roles.Index).ToModuleDefinitionName(), Title = "Role Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "File Management", + Parent = "Admin", + Order = 11, + Path = "admin/files", + Icon = Icons.File, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Files.Index).ToModuleDefinitionName(), Title = "File Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Recycle Bin", + Parent = "Admin", + Order = 13, + Path = "admin/recyclebin", + Icon = Icons.Trash, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.RecycleBin.Index).ToModuleDefinitionName(), Title = "Recycle Bin", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Url Mappings", + Parent = "Admin", + Order = 15, + Path = "admin/urlmappings", + Icon = Icons.LinkBroken, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.UrlMappings.Index).ToModuleDefinitionName(), Title = "Url Mappings", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + + pageTemplates.Add(new PageTemplate + { + Name = "Visitor Management", + Parent = "Admin", + Order = 17, + Path = "admin/visitors", + Icon = Icons.Eye, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Visitors.Index).ToModuleDefinitionName(), Title = "Visitor Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + + // host pages + pageTemplates.Add(new PageTemplate + { + Name = "Event Log", + Parent = "Admin", + Order = 19, + Path = "admin/log", + Icon = Icons.MagnifyingGlass, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Logs.Index).ToModuleDefinitionName(), Title = "Event Log", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Site Management", + Parent = "Admin", + Order = 21, + Path = "admin/sites", + Icon = Icons.Globe, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Sites.Index).ToModuleDefinitionName(), Title = "Site Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Module Management", + Parent = "Admin", + Order = 23, + Path = "admin/modules", + Icon = Icons.Browser, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.ModuleDefinitions.Index).ToModuleDefinitionName(), Title = "Module Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Theme Management", + Parent = "Admin", + Order = 25, + Path = "admin/themes", + Icon = Icons.Brush, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Themes.Index).ToModuleDefinitionName(), Title = "Theme Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Language Management", + Parent = "Admin", + Order = 27, + Path = "admin/languages", + Icon = Icons.Text, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true), + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Languages.Index).ToModuleDefinitionName(), Title = "Language Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true), + new Permission(PermissionNames.View, RoleNames.Admin, true), + new Permission(PermissionNames.Edit, RoleNames.Admin, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Scheduled Jobs", + Parent = "Admin", + Order = 29, + Path = "admin/jobs", + Icon = Icons.Timer, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Jobs.Index).ToModuleDefinitionName(), Title = "Scheduled Jobs", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "Sql Management", + Parent = "Admin", + Order = 31, + Path = "admin/sql", + Icon = Icons.Spreadsheet, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Sql.Index).ToModuleDefinitionName(), Title = "Sql Management", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "System Info", + Parent = "Admin", + Order = 33, + Path = "admin/system", + Icon = Icons.MedicalCross, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.SystemInfo.Index).ToModuleDefinitionName(), Title = "System Info", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + pageTemplates.Add(new PageTemplate + { + Name = "System Update", + Parent = "Admin", + Order = 35, + Path = "admin/update", + Icon = Icons.Aperture, + IsNavigation = false, + IsPersonalizable = false, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + PageTemplateModules = new List + { + new PageTemplateModule + { + ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Upgrade.Index).ToModuleDefinitionName(), Title = "System Update", Pane = PaneNames.Default, + PermissionList = new List + { + new Permission(PermissionNames.View, RoleNames.Host, true), + new Permission(PermissionNames.Edit, RoleNames.Host, true) + }, + Content = "" + } + } + }); + + return pageTemplates; + } + } +} diff --git a/Oqtane.Server/Repository/SiteRepository.cs b/Oqtane.Server/Repository/SiteRepository.cs index cc8afd58..37eba499 100644 --- a/Oqtane.Server/Repository/SiteRepository.cs +++ b/Oqtane.Server/Repository/SiteRepository.cs @@ -329,7 +329,13 @@ namespace Oqtane.Repository } }); - // process site template first + // admin site template + var siteTemplateType = Type.GetType(Constants.AdminSiteTemplate); + var siteTemplateObject = ActivatorUtilities.CreateInstance(_serviceProvider, siteTemplateType); + List adminPageTemplates = ((ISiteTemplate)siteTemplateObject).CreateSite(site); + CreatePages(site, adminPageTemplates, null); + + // process site template if (string.IsNullOrEmpty(site.SiteTemplateType)) { var section = _config.GetSection("Installation:SiteTemplate"); @@ -349,19 +355,16 @@ namespace Oqtane.Repository } } - Type siteTemplateType = Type.GetType(site.SiteTemplateType); + siteTemplateType = Type.GetType(site.SiteTemplateType); if (siteTemplateType != null) { - var siteTemplateObject = ActivatorUtilities.CreateInstance(_serviceProvider, siteTemplateType); + siteTemplateObject = ActivatorUtilities.CreateInstance(_serviceProvider, siteTemplateType); List pageTemplates = ((ISiteTemplate) siteTemplateObject).CreateSite(site); if (pageTemplates != null && pageTemplates.Count > 0) { CreatePages(site, pageTemplates, null); } } - - // create admin pages - CreatePages(site, CreateAdminPages(), null); } public void CreatePages(Site site, List pageTemplates, Alias alias) @@ -572,725 +575,5 @@ namespace Oqtane.Repository } } } - - private List CreateAdminPages(List pageTemplates = null) - { - if (pageTemplates == null) pageTemplates = new List(); - - // user pages - pageTemplates.Add(new PageTemplate - { - Name = "Login", - Parent = "", - Path = "login", - Icon = Icons.LockLocked, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Login.Index).ToModuleDefinitionName(), Title = "User Login", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - - pageTemplates.Add(new PageTemplate - { - Name = "Register", - Parent = "", - Path = "register", - Icon = Icons.Person, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Register.Index).ToModuleDefinitionName(), Title = "User Registration", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - - pageTemplates.Add(new PageTemplate - { - Name = "Reset", - Parent = "", - Path = "reset", - Icon = Icons.Person, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Reset.Index).ToModuleDefinitionName(), Title = "Password Reset", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - - pageTemplates.Add(new PageTemplate - { - Name = "Profile", - Parent = "", - Path = "profile", - Icon = Icons.Person, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Registered, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.UserProfile.Index).ToModuleDefinitionName(), Title = "User Profile", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Registered, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - - pageTemplates.Add(new PageTemplate - { - Name = "Search", - Parent = "", - Path = "search", - Icon = "oi oi-magnifying-glass", - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List { - new PageTemplateModule { ModuleDefinitionName = "Oqtane.Modules.Admin.SearchResults, Oqtane.Client", Title = "Search", Pane = PaneNames.Default, - PermissionList = new List { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - } - } - } - }); - - pageTemplates.Add(new PageTemplate - { - Name = "Not Found", - Parent = "", - Path = "404", - Icon = Icons.X, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule { ModuleDefinitionName = "Oqtane.Modules.HtmlText, Oqtane.Client", Title = "Not Found", Pane = PaneNames.Default, - PermissionList = new List { - new Permission(PermissionNames.View, RoleNames.Everyone, true), - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "

The page you requested does not exist or you do not have sufficient rights to view it.

" - } - } - }); - - // admin pages - pageTemplates.Add(new PageTemplate - { - Name = "Admin", - Parent = "", - Path = "admin", - Icon = "", - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Dashboard.Index).ToModuleDefinitionName(), Title = "Admin Dashboard", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Site Settings", - Parent = "Admin", - Order = 1, - Path = "admin/site", - Icon = Icons.Home, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Site.Index).ToModuleDefinitionName(), Title = "Site Settings", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Page Management", - Parent = "Admin", - Order = 3, - Path = "admin/pages", - Icon = Icons.Layers, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.View, RoleNames.Registered, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Pages.Index).ToModuleDefinitionName(), Title = "Page Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "User Management", - Parent = "Admin", - Order = 5, - Path = "admin/users", - Icon = Icons.People, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Users.Index).ToModuleDefinitionName(), Title = "User Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Profile Management", - Parent = "Admin", - Order = 7, - Path = "admin/profiles", - Icon = Icons.Person, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Profiles.Index).ToModuleDefinitionName(), Title = "Profile Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Role Management", - Parent = "Admin", - Order = 9, - Path = "admin/roles", - Icon = Icons.LockLocked, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Roles.Index).ToModuleDefinitionName(), Title = "Role Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "File Management", - Parent = "Admin", - Order = 11, - Path = "admin/files", - Icon = Icons.File, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Files.Index).ToModuleDefinitionName(), Title = "File Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Recycle Bin", - Parent = "Admin", - Order = 13, - Path = "admin/recyclebin", - Icon = Icons.Trash, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.RecycleBin.Index).ToModuleDefinitionName(), Title = "Recycle Bin", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Url Mappings", - Parent = "Admin", - Order = 15, - Path = "admin/urlmappings", - Icon = Icons.LinkBroken, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.UrlMappings.Index).ToModuleDefinitionName(), Title = "Url Mappings", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - - pageTemplates.Add(new PageTemplate - { - Name = "Visitor Management", - Parent = "Admin", - Order = 17, - Path = "admin/visitors", - Icon = Icons.Eye, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Visitors.Index).ToModuleDefinitionName(), Title = "Visitor Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - - // host pages - pageTemplates.Add(new PageTemplate - { - Name = "Event Log", - Parent = "Admin", - Order = 19, - Path = "admin/log", - Icon = Icons.MagnifyingGlass, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Logs.Index).ToModuleDefinitionName(), Title = "Event Log", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Site Management", - Parent = "Admin", - Order = 21, - Path = "admin/sites", - Icon = Icons.Globe, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Sites.Index).ToModuleDefinitionName(), Title = "Site Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Module Management", - Parent = "Admin", - Order = 23, - Path = "admin/modules", - Icon = Icons.Browser, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.ModuleDefinitions.Index).ToModuleDefinitionName(), Title = "Module Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Theme Management", - Parent = "Admin", - Order = 25, - Path = "admin/themes", - Icon = Icons.Brush, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Themes.Index).ToModuleDefinitionName(), Title = "Theme Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Language Management", - Parent = "Admin", - Order = 27, - Path = "admin/languages", - Icon = Icons.Text, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true), - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Languages.Index).ToModuleDefinitionName(), Title = "Language Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true), - new Permission(PermissionNames.View, RoleNames.Admin, true), - new Permission(PermissionNames.Edit, RoleNames.Admin, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Scheduled Jobs", - Parent = "Admin", - Order = 29, - Path = "admin/jobs", - Icon = Icons.Timer, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Jobs.Index).ToModuleDefinitionName(), Title = "Scheduled Jobs", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "Sql Management", - Parent = "Admin", - Order = 31, - Path = "admin/sql", - Icon = Icons.Spreadsheet, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Sql.Index).ToModuleDefinitionName(), Title = "Sql Management", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "System Info", - Parent = "Admin", - Order = 33, - Path = "admin/system", - Icon = Icons.MedicalCross, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.SystemInfo.Index).ToModuleDefinitionName(), Title = "System Info", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - pageTemplates.Add(new PageTemplate - { - Name = "System Update", - Parent = "Admin", - Order = 35, - Path = "admin/update", - Icon = Icons.Aperture, - IsNavigation = false, - IsPersonalizable = false, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - PageTemplateModules = new List - { - new PageTemplateModule - { - ModuleDefinitionName = typeof(Oqtane.Modules.Admin.Upgrade.Index).ToModuleDefinitionName(), Title = "System Update", Pane = PaneNames.Default, - PermissionList = new List - { - new Permission(PermissionNames.View, RoleNames.Host, true), - new Permission(PermissionNames.Edit, RoleNames.Host, true) - }, - Content = "" - } - } - }); - - return pageTemplates; - } } } diff --git a/Oqtane.Server/Repository/SiteTemplateRepository.cs b/Oqtane.Server/Repository/SiteTemplateRepository.cs index 04540e72..db16600c 100644 --- a/Oqtane.Server/Repository/SiteTemplateRepository.cs +++ b/Oqtane.Server/Repository/SiteTemplateRepository.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Reflection; @@ -35,17 +35,23 @@ namespace Oqtane.Repository private List LoadSiteTemplatesFromAssembly(List siteTemplates, Assembly assembly) { - SiteTemplate siteTemplate; Type[] siteTemplateTypes = assembly.GetTypes().Where(item => item.GetInterfaces().Contains(typeof(ISiteTemplate))).ToArray(); foreach (Type siteTemplateType in siteTemplateTypes) { var siteTemplateObject = ActivatorUtilities.CreateInstance(_serviceProvider, siteTemplateType); - siteTemplate = new SiteTemplate + if (siteTemplateObject != null) { - Name = (string)siteTemplateType.GetProperty("Name")?.GetValue(siteTemplateObject), - TypeName = Utilities.GetFullTypeName(siteTemplateType.AssemblyQualifiedName) - }; - siteTemplates.Add(siteTemplate); + var typename = Utilities.GetFullTypeName(siteTemplateType.AssemblyQualifiedName); + var name = (string)siteTemplateType.GetProperty("Name")?.GetValue(siteTemplateObject); + if (typename != Constants.AdminSiteTemplate && !string.IsNullOrEmpty(name)) + { + siteTemplates.Add(new SiteTemplate + { + Name = name, + TypeName = typename + }); + } + } } return siteTemplates; } diff --git a/Oqtane.Shared/Shared/Constants.cs b/Oqtane.Shared/Shared/Constants.cs index 979f0872..5664a8ed 100644 --- a/Oqtane.Shared/Shared/Constants.cs +++ b/Oqtane.Shared/Shared/Constants.cs @@ -33,6 +33,7 @@ namespace Oqtane.Shared public const string PageManagementModule = "Oqtane.Modules.Admin.Pages, Oqtane.Client"; public const string ErrorModule = "Oqtane.Modules.Admin.Error.{Action}, Oqtane.Client"; + public const string AdminSiteTemplate = "Oqtane.SiteTemplates.AdminSiteTemplate, Oqtane.Server"; public const string DefaultSiteTemplate = "Oqtane.SiteTemplates.DefaultSiteTemplate, Oqtane.Server"; public static readonly string[] DefaultHostModuleTypes = new[] { "Upgrade", "Themes", "SystemInfo", "Sql", "Sites", "ModuleDefinitions", "Logs", "Jobs", "ModuleCreator" };