// this upgrade is for anything prior to 03.01.02 which is the re-branding release // that removes all references to Gooddogs Repository Module. public static string CustomUpgradeGRM3toDRM3() { string m_message = ""; try { PortalSettings _portalSettings = (PortalSettings)HttpContext.Current.Items["PortalSettings"]; DesktopModuleController _desktopModuleController = new DesktopModuleController(); if ((DesktopModuleController.GetDesktopModuleByModuleName("Gooddogs Repository", Null.NullInteger) == null)) { return("Gooddogs Repository Not installed - no upgrade required"); } ModuleDefinitionController _moduleDefinitionControler = new ModuleDefinitionController(); int OldRepositoryDefId = ModuleDefinitionController.GetModuleDefinitionByDefinitionName("Gooddogs Repository", DesktopModuleController.GetDesktopModuleByModuleName("Gooddogs Repository", Null.NullInteger).DesktopModuleID).ModuleDefID; int OldDashboardDefId = ModuleDefinitionController.GetModuleDefinitionByDefinitionName("Gooddogs Dashboard", DesktopModuleController.GetDesktopModuleByModuleName("Gooddogs Dashboard", Null.NullInteger).DesktopModuleID).ModuleDefID; int NewRepositoryDefId = ModuleDefinitionController.GetModuleDefinitionByDefinitionName("Repository", DesktopModuleController.GetDesktopModuleByModuleName("Repository", Null.NullInteger).DesktopModuleID).ModuleDefID; int NewDashboardDefId = ModuleDefinitionController.GetModuleDefinitionByDefinitionName("Repository Dashboard", DesktopModuleController.GetDesktopModuleByModuleName("Repository Dashboard", Null.NullInteger).DesktopModuleID).ModuleDefID; RepositoryController m_repositoryController = new RepositoryController(); ModuleInfo _moduleInfo = null; ModuleController _moduleController = new ModuleController(); // replace all Gooddogs Repository controls with the new Repository controls ArrayList _allModules = _moduleController.GetAllModules(); foreach (ModuleInfo mi in _allModules) { if (mi.ModuleDefID == OldRepositoryDefId) { m_repositoryController.ChangeRepositoryModuleDefId(mi.ModuleID, mi.ModuleDefID, NewRepositoryDefId); } if (mi.ModuleDefID == OldDashboardDefId) { m_repositoryController.ChangeRepositoryModuleDefId(mi.ModuleID, mi.ModuleDefID, NewDashboardDefId); } } // we're all done .. so now we can remove the old Gooddogs Repository and Gooddogs Dashboard modules m_repositoryController.DeleteRepositoryModuleDefId(OldRepositoryDefId); m_repositoryController.DeleteRepositoryModuleDefId(OldDashboardDefId); } catch (Exception ex) { m_message += "EXCEPTION: " + ex.Message + " - " + ex.StackTrace.ToString(); } m_message += "All Modules upgraded from GRM3 to DRM3"; return(m_message); }
/// <summary>Gets the module definition identifier.</summary> /// <param name="moduleName">Name of the module.</param> /// <param name="moduleDefinitionName">Name of the module definition.</param> /// <returns>The Module Id for the HTML Editor Management module</returns> private int GetModuleDefinitionID(string moduleName, string moduleDefinitionName) { // get desktop module DesktopModuleInfo desktopModule = DesktopModuleController.GetDesktopModuleByModuleName(moduleName, Null.NullInteger); if (desktopModule == null) { return(-1); } // get module definition ModuleDefinitionInfo moduleDefinition = ModuleDefinitionController.GetModuleDefinitionByDefinitionName( moduleDefinitionName, desktopModule.DesktopModuleID); if (moduleDefinition == null) { return(-1); } return(moduleDefinition.ModuleDefID); }
internal static int SaveDesktopModule(DesktopModuleInfo desktopModule, bool saveChildren, bool clearCache, bool saveTerms) { var desktopModuleID = desktopModule.DesktopModuleID; if (desktopModuleID == Null.NullInteger) { CreateContentItem(desktopModule); desktopModuleID = DataProvider.AddDesktopModule(desktopModule.PackageID, desktopModule.ModuleName, desktopModule.FolderName, desktopModule.FriendlyName, desktopModule.Description, desktopModule.Version, desktopModule.IsPremium, desktopModule.IsAdmin, desktopModule.BusinessControllerClass, desktopModule.SupportedFeatures, (int)desktopModule.Shareable, desktopModule.CompatibleVersions, desktopModule.Dependencies, desktopModule.Permissions, desktopModule.ContentItemId, UserController.Instance.GetCurrentUserInfo().UserID, desktopModule.AdminPage, desktopModule.HostPage); EventLogController.Instance.AddLog(desktopModule, PortalController.Instance.GetCurrentPortalSettings(), UserController.Instance.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.DESKTOPMODULE_CREATED); } else { //Update ContentItem If neccessary if (desktopModule.ContentItemId == Null.NullInteger) { CreateContentItem(desktopModule); } DataProvider.UpdateDesktopModule(desktopModule.DesktopModuleID, desktopModule.PackageID, desktopModule.ModuleName, desktopModule.FolderName, desktopModule.FriendlyName, desktopModule.Description, desktopModule.Version, desktopModule.IsPremium, desktopModule.IsAdmin, desktopModule.BusinessControllerClass, desktopModule.SupportedFeatures, (int)desktopModule.Shareable, desktopModule.CompatibleVersions, desktopModule.Dependencies, desktopModule.Permissions, desktopModule.ContentItemId, UserController.Instance.GetCurrentUserInfo().UserID, desktopModule.AdminPage, desktopModule.HostPage); //Update Tags if (saveTerms) { var termController = Util.GetTermController(); termController.RemoveTermsFromContent(desktopModule); foreach (var term in desktopModule.Terms) { termController.AddTermToContent(term, desktopModule); } } EventLogController.Instance.AddLog(desktopModule, PortalController.Instance.GetCurrentPortalSettings(), UserController.Instance.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.DESKTOPMODULE_UPDATED); } if (saveChildren) { foreach (var definition in desktopModule.ModuleDefinitions.Values) { definition.DesktopModuleID = desktopModuleID; var moduleDefinition = ModuleDefinitionController.GetModuleDefinitionByDefinitionName(definition.DefinitionName, desktopModuleID); if (moduleDefinition != null) { definition.ModuleDefID = moduleDefinition.ModuleDefID; } ModuleDefinitionController.SaveModuleDefinition(definition, true, clearCache); } } if (clearCache) { DataCache.ClearHostCache(true); } return(desktopModuleID); }