public Module UpdateModule(Module module) { _db.Entry(module).State = EntityState.Modified; _db.SaveChanges(); _permissions.UpdatePermissions(module.SiteId, "Module", module.ModuleId, module.Permissions); return(module); }
public Module AddModule(Module module) { _db.Module.Add(module); _db.SaveChanges(); _permissions.UpdatePermissions(module.SiteId, "Module", module.ModuleId, module.Permissions); return(module); }
public void DeleteModule(int moduleId) { Module module = _db.Module.Find(moduleId); _permissions.DeletePermissions(module.SiteId, "Module", moduleId); _db.Module.Remove(module); _db.SaveChanges(); }
public void DeleteModule(int moduleId) { Module module = _db.Module.Find(moduleId); _permissions.DeletePermissions(module.SiteId, EntityNames.Module, moduleId); _settings.DeleteSettings(EntityNames.Module, moduleId); _db.Module.Remove(module); _db.SaveChanges(); }
public Module GetModule(int moduleId) { Module module = _db.Module.Find(moduleId); if (module != null) { List <Permission> permissions = _permissions.GetPermissions("Module", module.ModuleId).ToList(); module.Permissions = _permissions.EncodePermissions(permissions); } return(module); }
public string ExportModule(Oqtane.Models.Module module) { string content = ""; List <Blog> blogs = _blogs.GetBlogs(module.ModuleId).ToList(); if (blogs != null) { content = JsonSerializer.Serialize(blogs); } return(content); }
public Module GetModule(int moduleId) { Module module = _db.Module.Find(moduleId); if (module != null) { module.Permissions = _permissions.GetPermissionString("Module", module.ModuleId); } return(module); }
public string ExportModule(int moduleId) { string content = ""; try { Module module = GetModule(moduleId); if (module != null) { List <ModuleDefinition> moduledefinitions = _moduleDefinitions.GetModuleDefinitions(module.SiteId).ToList(); ModuleDefinition moduledefinition = moduledefinitions.FirstOrDefault(item => item.ModuleDefinitionName == module.ModuleDefinitionName); if (moduledefinition != null) { ModuleContent modulecontent = new ModuleContent(); modulecontent.ModuleDefinitionName = moduledefinition.ModuleDefinitionName; modulecontent.Version = moduledefinition.Version; modulecontent.Content = ""; if (moduledefinition.ServerManagerType != "") { Type moduletype = Type.GetType(moduledefinition.ServerManagerType); if (moduletype != null && moduletype.GetInterface("IPortable") != null) { try { var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype); modulecontent.Content = ((IPortable)moduleobject).ExportModule(module); } catch { // error in IPortable implementation } } } content = JsonSerializer.Serialize(modulecontent); } } } catch { // error occurred during export } return(content); }
public string ExportModule(int moduleId) { string content = ""; try { Module module = GetModule(moduleId); if (module != null) { List <ModuleDefinition> moduledefinitions = _moduleDefinitions.GetModuleDefinitions(module.SiteId).ToList(); ModuleDefinition moduledefinition = moduledefinitions.Where(item => item.ModuleDefinitionName == module.ModuleDefinitionName).FirstOrDefault(); if (moduledefinition != null) { ModuleContent modulecontent = new ModuleContent(); modulecontent.ModuleDefinitionName = moduledefinition.ModuleDefinitionName; modulecontent.Version = moduledefinition.Version; modulecontent.Content = ""; if (moduledefinition.ServerAssemblyName != "") { Assembly assembly = AppDomain.CurrentDomain.GetAssemblies() .Where(item => item.FullName.StartsWith(moduledefinition.ServerAssemblyName)).FirstOrDefault(); if (assembly != null) { Type moduletype = assembly.GetTypes() .Where(item => item.Namespace != null) .Where(item => item.Namespace.StartsWith(moduledefinition.ModuleDefinitionName.Substring(0, moduledefinition.ModuleDefinitionName.IndexOf(",")))) .Where(item => item.GetInterfaces().Contains(typeof(IPortable))).FirstOrDefault(); if (moduletype != null) { var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype); modulecontent.Content = ((IPortable)moduleobject).ExportModule(module); } } } content = JsonSerializer.Serialize(modulecontent); } } } catch { // error occurred during export } return(content); }
public bool ImportModule(int moduleId, string content) { bool success = false; try { Module module = GetModule(moduleId); if (module != null) { List <ModuleDefinition> moduledefinitions = _moduleDefinitions.GetModuleDefinitions(module.SiteId).ToList(); ModuleDefinition moduledefinition = moduledefinitions.Where(item => item.ModuleDefinitionName == module.ModuleDefinitionName).FirstOrDefault(); if (moduledefinition != null) { ModuleContent modulecontent = JsonSerializer.Deserialize <ModuleContent>(content.Replace("\n", "")); if (modulecontent.ModuleDefinitionName == moduledefinition.ModuleDefinitionName) { if (moduledefinition.ServerManagerType != "") { Type moduletype = Type.GetType(moduledefinition.ServerManagerType); if (moduletype != null && moduletype.GetInterface("IPortable") != null) { try { var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype); ((IPortable)moduleobject).ImportModule(module, modulecontent.Content, modulecontent.Version); success = true; } catch { // error in IPortable implementation } } } } } } } catch (Exception ex) { // error occurred during import string error = ex.Message; } return(success); }
public void ImportModule(Oqtane.Models.Module module, string content, string version) { List <Blog> blogs = null; if (!string.IsNullOrEmpty(content)) { blogs = JsonSerializer.Deserialize <List <Blog> >(content); } if (blogs != null) { foreach (Blog blog in blogs) { Blog _blog = new Blog(); _blog.ModuleId = module.ModuleId; _blog.Title = blog.Title; _blog.Content = blog.Content; _blogs.AddBlog(_blog); } } }
public void CreatePages(Site site, List <PageTemplate> pageTemplates) { List <ModuleDefinition> moduledefinitions = _moduleDefinitionRepository.GetModuleDefinitions(site.SiteId).ToList(); foreach (PageTemplate pagetemplate in pageTemplates) { int?parentid = null; if (pagetemplate.Parent != "") { List <Page> pages = _pageRepository.GetPages(site.SiteId).ToList(); Page parent = pages.Where(item => item.Name == pagetemplate.Parent).FirstOrDefault(); parentid = parent.PageId; } Page page = new Page { SiteId = site.SiteId, ParentId = parentid, Name = pagetemplate.Name, Title = "", Path = pagetemplate.Path, Order = 1, Url = "", IsNavigation = pagetemplate.IsNavigation, ThemeType = "", LayoutType = "", DefaultContainerType = "", Icon = pagetemplate.Icon, Permissions = pagetemplate.PagePermissions, IsPersonalizable = pagetemplate.IsPersonalizable, UserId = null }; page = _pageRepository.AddPage(page); foreach (PageTemplateModule pagetemplatemodule in pagetemplate.PageTemplateModules) { if (pagetemplatemodule.ModuleDefinitionName != "") { ModuleDefinition moduledefinition = moduledefinitions.Where(item => item.ModuleDefinitionName == pagetemplatemodule.ModuleDefinitionName).FirstOrDefault(); if (moduledefinition != null) { Module module = new Module { SiteId = site.SiteId, ModuleDefinitionName = pagetemplatemodule.ModuleDefinitionName, AllPages = false, Permissions = pagetemplatemodule.ModulePermissions, }; module = _moduleRepository.AddModule(module); if (pagetemplatemodule.Content != "" && moduledefinition.ServerManagerType != "") { Type moduletype = Type.GetType(moduledefinition.ServerManagerType); if (moduletype != null && moduletype.GetInterface("IPortable") != null) { try { var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype); ((IPortable)moduleobject).ImportModule(module, pagetemplatemodule.Content, moduledefinition.Version); } catch { // error in IPortable implementation } } } PageModule pagemodule = new PageModule { PageId = page.PageId, ModuleId = module.ModuleId, Title = pagetemplatemodule.Title, Pane = pagetemplatemodule.Pane, Order = 1, ContainerType = "" }; _pageModuleRepository.AddPageModule(pagemodule); } } } } }
private void CreatePages(Site site, List <PageTemplate> pageTemplates) { List <ModuleDefinition> moduledefinitions = _moduleDefinitionRepository.GetModuleDefinitions(site.SiteId).ToList(); foreach (PageTemplate pagetemplate in pageTemplates) { int?parentid = null; if (pagetemplate.Parent != "") { List <Page> pages = _pageRepository.GetPages(site.SiteId).ToList(); Page parent = pages.Where(item => item.Name == pagetemplate.Parent).FirstOrDefault(); parentid = parent.PageId; } Page page = new Page { SiteId = site.SiteId, ParentId = parentid, Name = pagetemplate.Name, Path = pagetemplate.Path, Order = 1, IsNavigation = pagetemplate.IsNavigation, EditMode = pagetemplate.EditMode, ThemeType = "", LayoutType = "", Icon = pagetemplate.Icon, Permissions = pagetemplate.PagePermissions, IsPersonalizable = pagetemplate.IsPersonalizable, UserId = null }; page = _pageRepository.AddPage(page); foreach (PageTemplateModule pagetemplatemodule in pagetemplate.PageTemplateModules) { if (pagetemplatemodule.ModuleDefinitionName != "") { ModuleDefinition moduledefinition = moduledefinitions.Where(item => item.ModuleDefinitionName == pagetemplatemodule.ModuleDefinitionName).FirstOrDefault(); if (moduledefinition != null) { Module module = new Module { SiteId = site.SiteId, ModuleDefinitionName = pagetemplatemodule.ModuleDefinitionName, Permissions = pagetemplatemodule.ModulePermissions, }; module = _moduleRepository.AddModule(module); if (pagetemplatemodule.Content != "" && moduledefinition.ServerAssemblyName != "") { Assembly assembly = AppDomain.CurrentDomain.GetAssemblies() .Where(item => item.FullName.StartsWith(moduledefinition.ServerAssemblyName)).FirstOrDefault(); if (assembly != null) { Type moduletype = assembly.GetTypes() .Where(item => item.Namespace != null) .Where(item => item.Namespace.StartsWith(moduledefinition.ModuleDefinitionName.Substring(0, moduledefinition.ModuleDefinitionName.IndexOf(",")))) .Where(item => item.GetInterfaces().Contains(typeof(IPortable))).FirstOrDefault(); if (moduletype != null) { var moduleobject = ActivatorUtilities.CreateInstance(_serviceProvider, moduletype); ((IPortable)moduleobject).ImportModule(module, pagetemplatemodule.Content, moduledefinition.Version); } } } PageModule pagemodule = new PageModule { PageId = page.PageId, ModuleId = module.ModuleId, Title = pagetemplatemodule.Title, Pane = pagetemplatemodule.Pane, Order = 1, ContainerType = "" }; _pageModuleRepository.AddPageModule(pagemodule); } } } } }