예제 #1
0
 public static List<ListItem> GetModuleList(string ModuleName)
 {
     List<ListItem> lst = new List<ListItem>();
     PortalSettings portalSettings = PortalController.GetCurrentPortalSettings();
     List<TabInfo> objTabs = TabController.GetPortalTabs(portalSettings.PortalId, -1, true, true);
     var objTabController = new TabController();
     var objDesktopModuleController = new DesktopModuleController();
     var objDesktopModuleInfo = objDesktopModuleController.GetDesktopModuleByModuleName(ModuleName);
     if (objDesktopModuleInfo == null)
     {
         objDesktopModuleInfo = objDesktopModuleController.GetDesktopModuleByName(ModuleName);
         if (objDesktopModuleInfo == null)
         {
             return lst;
         }
     }
     foreach (TabInfo objTab in objTabs.Where(tab => !tab.IsDeleted))
     {
         ModuleController objModules = new ModuleController();
         foreach (KeyValuePair<int, ModuleInfo> pair in objModules.GetTabModules(objTab.TabID))
         {
             ModuleInfo objModule = pair.Value;
             if (objModule.IsDeleted)
             {
                 continue;
             }
             if (objModule.DesktopModuleID != objDesktopModuleInfo.DesktopModuleID)
             {
                 continue;
             }
             string strPath = objTab.TabName;
             TabInfo objTabSelected = objTab;
             while (objTabSelected.ParentId != Null.NullInteger)
             {
                 objTabSelected = objTabController.GetTab(objTabSelected.ParentId, objTab.PortalID, false);
                 if (objTabSelected == null)
                 {
                     break;
                 }
                 strPath = string.Format("{0} -> {1}", objTabSelected.TabName, strPath);
             }
             var objListItem = new ListItem
             {
                 Value = objModule.ModuleID.ToString(),
                 Text = string.Format("{0} -> {1}", strPath, objModule.ModuleTitle)
             };
             lst.Add(objListItem);
         }
     }
     return lst;
 }
        /// <summary>
        /// Fills the module list.
        /// </summary>
        private void FillModuleList()
        {
            PortalSettings portalSettings = PortalController.GetCurrentPortalSettings();

            List<TabInfo> objTabs = TabController.GetPortalTabs(portalSettings.PortalId, -1, true, true);

            var objTabController = new TabController();

            var objDesktopModuleController = new DesktopModuleController();
            var objDesktopModuleInfo = objDesktopModuleController.GetDesktopModuleByModuleName("DnnForge - NewsArticles");

            if (objDesktopModuleInfo == null)
            {
                objDesktopModuleInfo = objDesktopModuleController.GetDesktopModuleByName("DnnForge - NewsArticles");

                if (objDesktopModuleInfo == null)
                {
                    return;
                }
            }

            foreach (TabInfo objTab in objTabs.Where(tab => !tab.IsDeleted))
            {
                ModuleController objModules = new ModuleController();

                foreach (KeyValuePair<int, ModuleInfo> pair in objModules.GetTabModules(objTab.TabID))
                {
                    ModuleInfo objModule = pair.Value;

                    if (objModule.IsDeleted)
                    {
                        continue;
                    }

                    if (objModule.DesktopModuleID != objDesktopModuleInfo.DesktopModuleID)
                    {
                        continue;
                    }

                    string strPath = objTab.TabName;
                    TabInfo objTabSelected = objTab;

                    while (objTabSelected.ParentId != Null.NullInteger)
                    {
                        objTabSelected = objTabController.GetTab(objTabSelected.ParentId, objTab.PortalID, false);
                        if (objTabSelected == null)
                        {
                            break;
                        }

                        strPath = string.Format("{0} -> {1}", objTabSelected.TabName, strPath);
                    }

                    var objListItem = new ListItem
                    {
                        Value = string.Format("{0}-{1}", objModule.TabID, objModule.ModuleID),
                        Text = string.Format("Page: {0} -> Module Instance: {1}", strPath, objModule.ModuleTitle)
                    };

                    ModuleListDropDown.Items.Add(objListItem);
                }
            }
        }
예제 #3
0
        /// <summary>
        /// GetDesktopModuleByName is a Utility function that retrieves the Desktop Module
        /// defeined by the name provided.
        /// </summary>
        /// <remarks>
        /// </remarks>
        /// <param name="name">The Name of the Module</param>
        /// <returns>The Desktop Module</returns>
        public static DesktopModuleInfo GetDesktopModuleByName(string name)
        {
            DesktopModuleController objDesktopModules = new DesktopModuleController();

            //First attempt to retrieve the module based on the Module Name
            DesktopModuleInfo objDesktopModule = objDesktopModules.GetDesktopModuleByModuleName(name);

            if (objDesktopModule == null)
            {
                //Next attempt to retrieve the module based on the Friendly Name
                objDesktopModule = objDesktopModules.GetDesktopModuleByFriendlyName(name);
            }

            return objDesktopModule;
        }
예제 #4
0
        protected override DesktopModuleInfo GetDesktopModule(PaFolder Folder)
        {
            DesktopModuleController objDesktopModules = new DesktopModuleController();
            DesktopModuleInfo objDesktopModule = objDesktopModules.GetDesktopModuleByModuleName(Folder.ModuleName);

            return objDesktopModule;
        }
        private static void GenerateAdminTab(int PortalId)
        {
            var tabID = TabController.GetTabByTabPath(PortalId, @"//Admin//OpenUrlRewriter", Null.NullString);
            if (tabID == Null.NullInteger)
            {
                var adminTabID = TabController.GetTabByTabPath(PortalId, @"//Admin", Null.NullString);

                /* dont work on dnn 7 -  generate new section "SEO Features" in admin menu

                var tabName = "SEO Features";
                var tabPath = Globals.GenerateTabPath(adminTabID, tabName);
                tabID = TabController.GetTabByTabPath(PortalId, tabPath, Null.NullString);
                if (tabID == Null.NullInteger)
                {
                    //Create a new page
                    var newParentTab = new TabInfo();
                    newParentTab.TabName = tabName;
                    newParentTab.ParentId = adminTabID;
                    newParentTab.PortalID = PortalId;
                    newParentTab.IsVisible = true;
                    newParentTab.DisableLink = true;
                    newParentTab.TabID = new TabController().AddTab(newParentTab);
                    tabID = newParentTab.TabID;
                }
                 */

                // create new page "Url Rules Cache"
                int parentTabID = adminTabID;
                var tabName = "Open Url Rewriter";
                var tabPath = Globals.GenerateTabPath(parentTabID, tabName);
                tabID = TabController.GetTabByTabPath(PortalId, tabPath, Null.NullString);
                if (tabID == Null.NullInteger)
                {
                    //Create a new page
                    var newTab = new TabInfo();
                    newTab.TabName = tabName;
                    newTab.ParentId = parentTabID;
                    newTab.PortalID = PortalId;
                    newTab.IsVisible = true;
            #if DNN71
                    newTab.IconFile = "~/Icons/Sigma/AdvancedUrlMngmt_16x16.png";
                    newTab.IconFileLarge = "~/Icons/Sigma/AdvancedUrlMngmt_32x32.png";
            #else
                    newTab.IconFile = "~/Images/icon_search_16px.gif";
                    newTab.IconFileLarge = "~/Images/icon_search_32px.gif";
            #endif
                    newTab.TabID = new TabController().AddTab(newTab, false);
                    tabID = newTab.TabID;

                }
            }
            // create new module "OpenUrlRewriter"
            var moduleCtl = new ModuleController();
            if (moduleCtl.GetTabModules(tabID).Count == 0)
            {
                var dmc = new DesktopModuleController();
                var dm = dmc.GetDesktopModuleByModuleName("OpenUrlRewriter");
                var mdc = new ModuleDefinitionController();
                var md = mdc.GetModuleDefinitionByName(dm.DesktopModuleID, "OpenUrlRewriter");

                var objModule = new ModuleInfo();
                //objModule.Initialize(PortalId);
                objModule.PortalID = PortalId;
                objModule.TabID = tabID;
                objModule.ModuleOrder = Null.NullInteger;
                objModule.ModuleTitle = "Open Url Rewriter";
                objModule.PaneName = Globals.glbDefaultPane;
                objModule.ModuleDefID = md.ModuleDefID;
                objModule.InheritViewPermissions = true;
                objModule.AllTabs = false;
            #if DNN71
                objModule.IconFile = "~/Icons/Sigma/AdvancedUrlMngmt_16x16.png";
            #else
                objModule.IconFile = "~/Images/icon_search_32px.gif";
            #endif
                moduleCtl.AddModule(objModule);
            }
        }