/// <summary> /// 添加新的模块 /// </summary> public Int32 AddNewModule(TabInfo CurrentTab) { //找到HTML模块的编号 int desktopModuleId = 0; int ModuleId = 0; DesktopModuleInfo deskModule = DesktopModuleController.GetDesktopModuleByModuleName("DNNGo.ThemePlugin", BSkin.PortalSettings.PortalId); if (deskModule != null && deskModule.DesktopModuleID > 0) { desktopModuleId = deskModule.DesktopModuleID; var list = TabModulesController.Instance.GetTabModules(new TabInfo() { TabID = CurrentTab.TabID }).Cast <ModuleInfo>().ToList(); if (list != null && list.Count > 0) { ModuleInfo mInfo = list.Find(r => BSkin.ModuleProperty(r, "ModuleName") == "DNNGo.ThemePlugin"); if (!(mInfo != null && mInfo.ModuleID > 0)) { ModuleId = AddNewModule("DNNGo ThemePlugin", desktopModuleId, CurrentTab, "ContentPane", -1, ViewPermissionType.View, ""); } else { ModuleId = mInfo.ModuleID; } } else { ModuleId = AddNewModule("DNNGo ThemePlugin", desktopModuleId, CurrentTab, "ContentPane", -1, ViewPermissionType.View, ""); } } return(ModuleId); }
/// <summary> /// 初始化的方法 /// </summary> public void Init() { if (!ThemePlugin_Init) { Int32 x_ModuleID = 0; TabInfo parentTab = BSkin.objTabs.GetTabByName("Admin", BSkin.PortalSettings.PortalId); if (parentTab != null && parentTab.TabID > 0) { TabInfo dnnTab = BSkin.objTabs.GetTabByName("ThemePlugin", BSkin.PortalSettings.PortalId, parentTab.TabID); if (!(dnnTab != null && dnnTab.TabID > 0)) { dnnTab = new TabInfo(); dnnTab.PortalID = BSkin.PortalSettings.PortalId; dnnTab.TabName = "ThemePlugin"; dnnTab.Title = "ThemePlugin"; dnnTab.IsVisible = true; dnnTab.DisableLink = false; dnnTab.IsDeleted = false; if (parentTab != null && parentTab.TabID > 0) { dnnTab.PortalID = parentTab.PortalID; dnnTab.ParentId = parentTab.TabID; dnnTab.Level = parentTab.Level + 1; dnnTab.TabPermissions.Clear(); dnnTab.TabPermissions.AddRange(parentTab.TabPermissions);//增加权限 } else { dnnTab.ParentId = Null.NullInteger; dnnTab.Level = 0; } dnnTab.TabPath = DotNetNuke.Common.Globals.GenerateTabPath(dnnTab.ParentId, dnnTab.TabName); dnnTab.TabID = BSkin.objTabs.AddTab(dnnTab); if (dnnTab.TabID > 0) { x_ModuleID = AddNewModule(dnnTab); } } if (!(ThemePlugin_Init_ModuleID > 0 && ThemePlugin_Init_TabID > 0)) { if (!(x_ModuleID > 0)) { x_ModuleID = AddNewModule(dnnTab); } BSkin.UpdateSetting("Init_ThemePlugin_TabID", dnnTab.TabID.ToString()); BSkin.UpdateSetting("Init_ThemePlugin_ModuleID", x_ModuleID.ToString()); } BSkin.UpdateSetting("Init_ThemePlugin", "true"); } } }