Exemplo n.º 1
0
        private void Tree_DataBind()
        {
            List <string> list = new List <string>();

            foreach (RadTreeNode node in Tree.GetAllNodes())
            {
                if (node.Expanded)
                {
                    list.Add(node.Value);
                }
            }

            ConfigurationDataSet.ActionDataTable table = ActionProvider.GetActionsTree() as ConfigurationDataSet.ActionDataTable;
            table.DefaultView.Sort = string.Format(CultureInfo.InvariantCulture, "{0},{1},{2}", table.ParentActionIdColumn.ColumnName, table.OrderNumberColumn.ColumnName, table.NameColumn.ColumnName);

            Tree.DataSource = table;
            Tree.DataBind();

            foreach (RadTreeNode node in Tree.GetAllNodes())
            {
                if (list.Contains(node.Value))
                {
                    node.Expanded = true;
                }
            }
        }
Exemplo n.º 2
0
        internal static DataTable GetAlternativeParentActionsTree(Guid actionId)
        {
            ConfigurationDataSet.ActionDataTable table = GetActionsTree() as ConfigurationDataSet.ActionDataTable;

            ArrayList list = new ArrayList();

            FillActionIdList(ConfigurationDataSet.Current.Action.FindByActionId(actionId), ref list);

            foreach (ConfigurationDataSet.ActionRow row in table.Rows)
            {
                if (!((row.ActionId == GlobalNavigationLinksActionId) ||
                      (row.ActionId == ConfigurationGlobalNavigationLinkActionId) ||
                      (row.ActionId == PagesAndControlsActionId) ||
                      (row.ActionId == MyAccountGlobalNavigationLinkActionId) ||
                      (row.ActionId == UsersPageActionId)))
                {
                    if (list.Contains(row.ActionId) ||
                        row.BuiltIn ||
                        (((ActionType)row.ActionTypeId != ActionType.Page) && ((ActionType)row.ActionTypeId != ActionType.GlobalNavigationLink)))
                    {
                        row.Delete();
                    }
                }
            }

            table.AcceptChanges();

            return(table);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Loads the collection from configuration data set.
        /// </summary>
        private static void LoadFromConfigurationDataSet()
        {
            ActionCollection globalNavigationLinks = new ActionCollection();
            ActionCollection pagesAndControls      = new ActionCollection();

            ConfigurationDataSet.ActionDataTable table = ConfigurationDataSet.Current.Action;
            ConfigurationDataSet.ActionRow[]     rows  = (ConfigurationDataSet.ActionRow[])table.Select(string.Concat(table.ParentActionIdColumn.ColumnName, " IS NULL"));

            ReadFromConfigurationDataSet(null, rows, new List <ActionType>()
            {
                ActionType.Page, ActionType.Control
            }, pagesAndControls);
            ReadFromConfigurationDataSet(null, rows, new List <ActionType>()
            {
                ActionType.GlobalNavigationLink
            }, globalNavigationLinks);

            s_PagesAndControls      = pagesAndControls;
            s_GlobalNavigationLinks = globalNavigationLinks;
        }
Exemplo n.º 4
0
        /// <summary>
        /// Returns the actions table.
        /// </summary>
        /// <returns>The actions table.</returns>
        internal static DataTable GetActionsTree()
        {
            ConfigurationDataSet.ActionDataTable table = ConfigurationDataSet.Current.Action.Copy() as ConfigurationDataSet.ActionDataTable;

            foreach (ConfigurationDataSet.ActionRow row in table.Select(string.Concat(table.ParentActionIdColumn.ColumnName, " = '", ConfigurationPageActionId.ToString(), "'")))
            {
                row.ParentActionId = ConfigurationGlobalNavigationLinkActionId;
            }

            foreach (ConfigurationDataSet.ActionRow row in table.Select(string.Concat(table.ParentActionIdColumn.ColumnName, " = '", MyAccountPageActionId.ToString(), "'")))
            {
                row.ParentActionId = MyAccountGlobalNavigationLinkActionId;
            }

            ConfigurationDataSet.ActionRow actionRow = table.FindByActionId(ConfigurationPageActionId);
            if (actionRow != null)
            {
                actionRow.Delete();
            }

            actionRow = table.FindByActionId(MyAccountPageActionId);
            if (actionRow != null)
            {
                actionRow.Delete();
            }

            actionRow = table.FindByActionId(LoginGlobalNavigationLinkActionId);
            if (actionRow != null)
            {
                actionRow.Delete();
            }

            actionRow = table.FindByActionId(LoginAsUserGlobalNavigationLinkActionId);
            if (actionRow != null)
            {
                actionRow.Delete();
            }

            table.AcceptChanges();

            ArrayList setupActionIdList = new ArrayList();

            foreach (ConfigurationDataSet.ActionRow row in table)
            {
                if (IsSetupPage(row))
                {
                    setupActionIdList.Add(row.ActionId);
                }
            }

            foreach (Guid actionId in setupActionIdList)
            {
                actionRow = table.FindByActionId(actionId);
                if (actionRow != null)
                {
                    actionRow.Delete();
                }
            }

            table.AcceptChanges();

            return(table);
        }