Example #1
0
        /// <summary>
        /// Builds a list of all tabs
        /// </summary>
        private void BuildTabs()
        {
            var tabs = CaisisConfiguration.GetModuleConfigList().Where(m => m.IsTab);

            //XmlDocument xmlDoc = XmlUtil.GetModulesConfigXml();
            //XmlNodeList listOfTabs = xmlDoc.SelectNodes("modules/module[@isTab='true']");
            TabsRptr.DataSource = tabs;
            TabsRptr.DataBind();
        }
Example #2
0
        /// <summary>
        /// Builds a list of all tabs
        /// </summary>
        private void BuildModules()
        {
            var tabs = from tab in CaisisConfiguration.GetModuleConfigList()
                       where tab.IsTab
                       select tab.Name;

            ModulesRptr.DataSource = tabs;
            ModulesRptr.DataBind();

            ModulesCount.Text = tabs.Count().ToString();
        }
Example #3
0
        /// <summary>
        /// Builds a list of all tabs
        /// </summary>
        private void BuildTabs()
        {
            var tabs = from tab in CaisisConfiguration.GetModuleConfigList()
                       where tab.IsTab
                       select tab.Name.ToUpper();

            //XmlDocument xmlDoc = XmlUtil.GetModulesConfigXml();
            //XmlNodeList listOfTabs = xmlDoc.SelectNodes("modules/module[@isTab='true']");
            TabsRptr.DataSource = tabs;
            TabsRptr.DataBind();
        }
Example #4
0
        /// <summary>
        /// Builds a list of all modules/tabs
        /// </summary>
        private void BuildModulesTabs()
        {
            var tabs = from tab in CaisisConfiguration.GetModuleConfigList()
                       where tab.IsTab
                       select tab.Name;

            ModulesRptr.DataSource = tabs;
            ModulesRptr.DataBind();

            // set labels
            ListMainLabel.Text  = "Modules / Tabs";
            ListCountLabel.Text = tabs.Count().ToString();
            ListLabel.Text      = "Modules in Caisis";

            // set list visibility
            ModulesRptr.Visible      = true;
            ModuleGroupsRptr.Visible = false;
        }
Example #5
0
        /// <summary>
        /// Builds a list of permissions
        /// </summary>
        private void BuildModulePermissions()
        {
            // get a list of modules
            var allModules = CaisisConfiguration.GetModuleConfigList();
            var modules    = from m in allModules
                             //where m.Permissions.Count() > 0
                             orderby m.Name ascending
                             select new
            {
                ModuleName  = m.Name,
                Name        = m.Name,
                Permissions = m.Permissions
            };
            // handle sub section permissions
            var subSections = from module in allModules
                              where module.ModuleSections.Count() > 0
                              select from section in module.ModuleSections
                              select new
            {
                ModuleName  = module.Name,
                Name        = section.SectionName,
                Permissions = section.Permissions
            };
            var allSubSections = subSections.SelectMany(a => a);

            modules = modules.Concat(allSubSections);

            var globalPermissions = allModules.SelectMany(m => m.GlobalPermissions).Distinct().ToDictionary(k => k.Key, v => v.Value);

            var global = (from g in globalPermissions
                          select new
            {
                ModuleName = "Global",
                Name = "Global",
                Permissions = globalPermissions as IDictionary <string, string>
            }).Distinct();
            var fullList = global.Concat(modules);
            //var flatModules = from module in fullList
            //                  orderby (module.Name == "Global" ? 0 : 1) ascending, module.ModuleName ascending, module.Name ascending
            //                  select from permission in module.Permissions
            //                         let isFirst = module.Permissions.First().Key == permission.Key
            //                         let mp = new
            //                         {
            //                             IsFirst = isFirst,
            //                             Module = module.Name,
            //                             ModuleName = module.ModuleName,
            //                             Permission = permission.Key,
            //                             PermissionDescription = permission.Value,
            //                             PermissionId = permissionsList.ContainsKey(permission.Key) ? permissionsList[permission.Key].ToString() : string.Empty
            //                         }
            //                         orderby (mp.IsFirst ? 0 : 1) ascending, mp.Permission ascending
            //                         select mp;


            var flatModules = from module in fullList
                              group module by module.ModuleName into g
                              where g.Count() > 0
                              select new
            {
                ModuleName        = g.Key,
                ModulePermissions = g.SelectMany(m => m.Permissions)
            };

            ModulePermissionsRptr.DataSource = flatModules;
            ModulePermissionsRptr.DataBind();
        }