protected void cmdDeleteDefinition_Click(object sender, EventArgs e)
        {
            var objModuleDefinitions = new ModuleDefinitionController();
            objModuleDefinitions.DeleteModuleDefinition(ModuleDefinitionID);

            //Force Definitions list to refresh by rebinding DesktopModule
            ModuleDefinitionID = Null.NullInteger;
            _ModuleDefinition = null;
            _DesktopModule = null;

            //empty definition form's content
            definitionsEditor.Items.ForEach(i =>
                                                {
                                                    i.Value = null;
                                                });
            BindDesktopModule(true);
        }
        protected void cmdDeleteDefinition_Click(object sender, EventArgs e)
        {
            var objModuleDefinitions = new ModuleDefinitionController();
            objModuleDefinitions.DeleteModuleDefinition(ModuleDefinitionID);

            //Force Definitions list to refresh by rebinding DesktopModule
            ModuleDefinitionID = Null.NullInteger;
            _ModuleDefinition = null;
            _DesktopModule = null;
            BindDesktopModule(true);
        }
示例#3
0
        /// <summary>
        /// RemoveCoreModule removes a Core Module from the system
        /// </summary>
        /// <remarks>
        /// </remarks>
        ///	<param name="DesktopModuleName">The Friendly Name of the Module to Remove</param>
        ///	<param name="ParentTabName">The Name of the parent Tab/Page for this module</param>
        ///	<param name="TabName">The Name to tab that contains the Module</param>
        ///	<param name="TabRemove">A flag to determine whether to remove the Tab if it has no
        ///	other modules</param>
        private static void RemoveCoreModule(string DesktopModuleName, string ParentTabName, string TabName, bool TabRemove)
        {
            TabController objTabs = new TabController();
            ModuleController objModules = new ModuleController();
            int intIndex;
            int intModuleDefId = 0;
            int intDesktopModuleId;

            //Find and remove the Module from the Tab
            switch (ParentTabName)
            {
                case "Host":
                    //TODO - when we have a need to remove a Host Module
                    break;
                case "Admin":
                    PortalController objPortals = new PortalController();

                    ArrayList arrPortals = objPortals.GetPortals();                  

                    //Iterate through the Portals to remove the Module from the Tab
                    for (int intPortal = 0; intPortal < arrPortals.Count; intPortal++)
                    {
                        PortalInfo objPortal = (PortalInfo)(arrPortals[intPortal]);

                        int ParentId = objPortal.AdminTabId;
                        TabInfo objTab = objTabs.GetTabByName(TabName, objPortal.PortalID, ParentId);
                        int intCount = 0;

                        //Get the Modules on the Tab
                        foreach (KeyValuePair<int, ModuleInfo> kvp in objModules.GetTabModules(objTab.TabID))
                        {
                            ModuleInfo objModule = kvp.Value;
                            if (objModule.FriendlyName == DesktopModuleName)
                            {
                                //Delete the Module from the Modules list
                                objModules.DeleteModule(objModule.ModuleID);
                                intModuleDefId = objModule.ModuleDefID;
                            }
                            else
                            {
                                intCount += 1;
                            }
                        }

                        //If Tab has no modules optionally remove tab
                        if (intCount == 0 & TabRemove)
                        {
                            objTabs.DeleteTab(objTab.TabID, objTab.PortalID);
                        }
                    }
                    break;
            }

            //Delete all the Module Controls for this Definition
            ModuleControlController objModuleControls = new ModuleControlController();
            ArrayList arrModuleControls = objModuleControls.GetModuleControls(intModuleDefId);
            for (intIndex = 0; intIndex <= arrModuleControls.Count - 1; intIndex++)
            {
                ModuleControlInfo objModuleControl = (ModuleControlInfo)arrModuleControls[intIndex];
                objModuleControls.DeleteModuleControl(objModuleControl.ModuleControlID);
            }

            //Get the Module Definition
            ModuleDefinitionController objModuleDefinitions = new ModuleDefinitionController();
            ModuleDefinitionInfo objModuleDefinition;
            objModuleDefinition = objModuleDefinitions.GetModuleDefinition(intModuleDefId);
            intDesktopModuleId = objModuleDefinition.DesktopModuleID;

            //Delete the Module Definition
            objModuleDefinitions.DeleteModuleDefinition(intModuleDefId);

            //Delete the Desktop Module Control
            DesktopModuleController objDesktopModules = new DesktopModuleController();
            objDesktopModules.DeleteDesktopModule(intDesktopModuleId);
        }
		private static void RemoveLegacyModuleDefinitions(string moduleName, string currentModuleDefinitionName)
		{
		    var mdc = new ModuleDefinitionController();

            var desktopModule = DesktopModuleController.GetDesktopModuleByModuleName(moduleName, Null.NullInteger);
			if (desktopModule == null)
			{
				return;
			}

			var desktopModuleId = desktopModule.DesktopModuleID;
            var modDefs = ModuleDefinitionController.GetModuleDefinitionsByDesktopModuleID(desktopModuleId);

			var currentModDefId = 0;
			foreach (var modDefKeyPair in modDefs)
			{
                if (modDefKeyPair.Value.FriendlyName.Equals(currentModuleDefinitionName, StringComparison.InvariantCultureIgnoreCase))
				{
                    currentModDefId = modDefKeyPair.Value.ModuleDefID;
				}
			}

			foreach (var modDefKeyPair in modDefs)
			{
                var oldModDefId = modDefKeyPair.Value.ModuleDefID;
				if (oldModDefId != currentModDefId)
				{
					foreach (ModuleInfo mod in ModuleController.Instance.GetAllModules())
					{
						if (mod.ModuleDefID == oldModDefId)
						{
							mod.ModuleDefID = currentModDefId;
                            ModuleController.Instance.UpdateModule(mod);
						}
					}

					mdc.DeleteModuleDefinition(oldModDefId);
				}
			}

            modDefs = ModuleDefinitionController.GetModuleDefinitionsByDesktopModuleID(desktopModuleId);
			if (modDefs.Count == 0)
			{
				new DesktopModuleController().DeleteDesktopModule(desktopModuleId);
			}
		}
        /// <summary>
        /// cmdDeleteDefinition_Click runs when the Delete Definition Button is clicked
        /// </summary>
        /// <history>
        /// 	[cnurse]	9/28/2004	Updated to reflect design changes for Help, 508 support
        ///                       and localisation
        /// </history>
        protected void cmdDeleteDefinition_Click( object sender, EventArgs e )
        {
            ModuleDefinitionController objModuleDefinitions = new ModuleDefinitionController();

            objModuleDefinitions.DeleteModuleDefinition( int.Parse( cboDefinitions.SelectedItem.Value ) );

            LoadDefinitions();
        }