예제 #1
0
        public ConsoleResultModel Run()
        {
            if (PageId.HasValue)
            {
                // getting a specific module instance
                List <ModuleInstanceModel> lst = new List <ModuleInstanceModel>();

                var mi = ModuleController.Instance.GetModule((int)ModuleId, (int)PageId, true);
                if (mi != null)
                {
                    lst.Add(ModuleInstanceModel.FromDnnModuleInfo(mi));
                }
                return(new ConsoleResultModel(string.Empty)
                {
                    data = lst
                });
            }
            else
            {
                List <ModuleInfoModel> lst = new List <ModuleInfoModel>();
                ArrayList results          = ModuleController.Instance.GetAllTabsModulesByModuleID((int)ModuleId);
                if (results != null && results.Count > 0)
                {
                    lst.Add(ModuleInfoModel.FromDnnModuleInfo((ModuleInfo)results[0]));
                }
                else
                {
                    return(new ConsoleResultModel($"No module found with ID '{ModuleId}'"));
                }
                return(new ConsoleResultModel(string.Empty)
                {
                    data = lst
                });
            }
        }
예제 #2
0
        public static ModuleInstanceModel FromDnnModuleInfo(DotNetNuke.Entities.Modules.ModuleInfo dnnModule)
        {
            var mim = new ModuleInstanceModel
            {
                ModuleId     = dnnModule.ModuleID,
                Title        = dnnModule.ModuleTitle,
                Pane         = dnnModule.PaneName,
                FriendlyName = dnnModule.DesktopModule.FriendlyName,
                ModuleName   = dnnModule.DesktopModule.ModuleName,
                TabModuleId  = dnnModule.TabModuleID,
                ModuleDefId  = dnnModule.ModuleDefID,
                IsDeleted    = dnnModule.IsDeleted,
                TabId        = dnnModule.TabID,
                __ModuleId   = $"get-module {dnnModule.ModuleID}",
                __ModuleName = $"list-modules '{dnnModule.ModuleID}'"
            };

            return(mim);
        }
예제 #3
0
        public override ConsoleResultModel Run()
        {
            try
            {
                var desktopModule = DesktopModuleController.GetDesktopModuleByModuleName(ModuleName, PortalId);
                if (desktopModule == null)
                {
                    return(new ConsoleErrorResultModel(string.Format(LocalizeString("Prompt_DesktopModuleNotFound"), ModuleName)));
                }

                KeyValuePair <HttpStatusCode, string> message;
                var addedModules = ModulesControllerLibrary.Instance.AddNewModule(
                    PortalSettings,
                    ModuleTitle,
                    desktopModule.DesktopModuleID,
                    PageId,
                    Pane,
                    0,
                    0,
                    null,
                    out message
                    );
                if (addedModules == null)
                {
                    return(new ConsoleErrorResultModel(message.Value));
                }
                if (addedModules.Count == 0)
                {
                    return(new ConsoleErrorResultModel(LocalizeString("Prompt_NoModulesAdded")));
                }
                var modules = addedModules.Select(newModule => ModuleInstanceModel.FromDnnModuleInfo(ModuleController.Instance.GetTabModule(newModule.TabModuleID))).ToList();

                return(new ConsoleResultModel(string.Format(LocalizeString("Prompt_ModuleAdded"), modules.Count, modules.Count == 1 ? string.Empty : "s"))
                {
                    Data = modules, Records = modules.Count
                });
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
                return(new ConsoleErrorResultModel(LocalizeString("Prompt_AddModuleError")));
            }
        }
        private List <ModuleInstanceModel> GetDeletedModules(int portalId, bool isDeleted, string nameFilter = null, string titleFilter = null)
        {
            var lst = ModuleController.Instance.GetAllModules();
            var qry = from ModuleInfo m in lst
                      where m.IsDeleted == isDeleted && m.PortalID == portalId
                      select m;

            List <ModuleInstanceModel> lstMim = new List <ModuleInstanceModel>();

            string searchName = null;

            if (!string.IsNullOrEmpty(nameFilter))
            {
                searchName = nameFilter.Replace("*", ".*");
            }
            string searchTitle = null;

            if (!string.IsNullOrEmpty(titleFilter))
            {
                searchTitle = titleFilter.Replace("*", ".*");
            }

            foreach (ModuleInfo modInfo in qry)
            {
                bool bMatches = true;
                if (!string.IsNullOrEmpty(searchName))
                {
                    bMatches = bMatches & Regex.IsMatch(modInfo.DesktopModule.ModuleName, searchName);
                }
                if (!string.IsNullOrEmpty(searchTitle))
                {
                    bMatches = bMatches & Regex.IsMatch(modInfo.ModuleTitle, searchTitle);
                }
                if (bMatches)
                {
                    lstMim.Add(ModuleInstanceModel.FromDnnModuleInfo(modInfo));
                }
            }

            return(lstMim);
        }
 public ConsoleResultModel Run()
 {
     // get the desktop module id from the module name
     try
     {
         var desktopModule = DotNetNuke.Entities.Modules.DesktopModuleController.GetDesktopModuleByModuleName(ModuleName, PortalId);
         if (desktopModule == null)
         {
             return(new ConsoleErrorResultModel(string.Format("Unable to find a desktop module with the name '{0}' for this portal", ModuleName)));
         }
         try
         {
             var addedModules = AddNewModule(Title, desktopModule.DesktopModuleID, Pane, 0, 0, null);
             if (addedModules.Count == 0)
             {
                 return(new ConsoleResultModel("No modules were added"));
             }
             List <ModuleInstanceModel> lst = new List <ModuleInstanceModel>();
             foreach (ModuleInfo newModule in addedModules)
             {
                 lst.Add(ModuleInstanceModel.FromDnnModuleInfo(ModuleController.Instance.GetTabModule(newModule.TabModuleID)));
             }
             return(new ConsoleResultModel(string.Format("Successfully added {0} new module{1}", lst.Count, (lst.Count == 1 ? string.Empty : "s")))
             {
                 data = lst
             });
         }
         catch (Exception ex)
         {
             Exceptions.LogException(ex);
             return(new ConsoleErrorResultModel("An error occurred while attempting to add the module. Please see the DNN Event Viewer for details."));
         }
     }
     catch (Exception ex)
     {
         Exceptions.LogException(ex);
         return(new ConsoleErrorResultModel("An error occurred while attempting to add the module. Please see the DNN Event Viewer for details."));
     }
 }