mojoportal学习笔记(显示所有菜单)

根据单位需要,要把所有菜单显示,包括无权浏览内容的菜单。

更改
siteMenu.aspx.cs中

 1  protected void pageMenu_MenuItemDataBound(object sender, MenuEventArgs e)
 2        {
 3            Menu menu = (Menu)sender;
 4            mojoSiteMapNode mapNode = (mojoSiteMapNode)e.Item.DataItem;
 5            if (mapNode.MenuImage.Length > 0)
 6            {
 7                e.Item.ImageUrl = mapNode.MenuImage;
 8            }

 9
10            // added this 2007-09-07
11            // to solve treeview expand issue when page name is the same
12            // as Page Name was used for value if not set explicitly
13            e.Item.Value = mapNode.Settings.PageGuid.ToString();
14
15            bool remove = false;
16
17            if (!(
18                    (isAdmin)
19                    || (
20                        (isContentAdmin) 
21                        && (mapNode.Roles != null)
22                        && (!(mapNode.Roles.Count == 1
23                        && (mapNode.Roles[0].ToString() == "Admins")
24                           )
25                        )
26                    || ((isContentAdmin) && (mapNode.Roles == null))
27                    || (
28                        (mapNode.Roles != null)
29                        &&(WebUser.IsInRoles(mapNode.Roles))
30                        )
31                ))
32            {
33                remove = true;
34            }

35
36            if (!mapNode.Settings.IncludeInMenu) remove = true;
37
38            if (remove)
39            {
40                if (e.Item.Depth == 0)
41                {
42                    menu.Items.Remove(e.Item);
43
44                }

45                else
46                {
47                    MenuItem parent = e.Item.Parent;
48                    if (parent != null)
49                    {
50                        parent.ChildItems.Remove(e.Item);
51                    }

52                }

53            }

54
55        }

为:
 1    protected void pageMenu_MenuItemDataBound(object sender, MenuEventArgs e)
 2        {
 3            Menu menu = (Menu)sender;
 4            mojoSiteMapNode mapNode = (mojoSiteMapNode)e.Item.DataItem;
 5            if (mapNode.MenuImage.Length > 0)
 6            {
 7                e.Item.ImageUrl = mapNode.MenuImage;
 8            }

 9
10            // added this 2007-09-07
11            // to solve treeview expand issue when page name is the same
12            // as Page Name was used for value if not set explicitly
13            e.Item.Value = mapNode.Settings.PageGuid.ToString();
14
15            bool remove = false;
16
17            //if (!(
18            //        (isAdmin)
19            //        || (
20            //            (isContentAdmin) 
21            //            && (mapNode.Roles != null)
22            //            && (!(mapNode.Roles.Count == 1) 
23            //            && (mapNode.Roles[0].ToString() == "Admins")
24            //               )
25            //            )
26            //        || ((isContentAdmin) && (mapNode.Roles == null))
27            //        || (
28            //            (mapNode.Roles != null)
29            //            &&(WebUser.IsInRoles(mapNode.Roles))
30            //            )
31            //    ))
32            //{
33            //    remove = true;
34            //}
35
36            if (!mapNode.Settings.IncludeInMenu) remove = true;
37
38            if (remove)
39            {
40                if (e.Item.Depth == 0)
41                {
42                    menu.Items.Remove(e.Item);
43
44                }

45                else
46                {
47                    MenuItem parent = e.Item.Parent;
48                    if (parent != null)
49                    {
50                        parent.ChildItems.Remove(e.Item);
51                    }

52                }

53            }

54
55        }

56

posted on 2008-03-27 17:00  蓝蓝的天2016  阅读(328)  评论(0)    收藏  举报