示例#1
0
        private void InitPageInfo()
        {
            IRoleManage irm = GetInterface.GetIRoleManage();

            MR_PageInfo pinfo = irm.GetNode(this.NodeId);

            if (pinfo.PID != this.NodeId || pinfo.PID <= 0)
            {
                return;
            }

            this.NodeName = pinfo.PName;
            this.NodeURL  = pinfo.PUrl;

            IList <MR_PageInfo> pageinfos = irm.GetHidePage(this.NodeId);

            this.dl_InChild.DataSource = pageinfos;
            this.dl_InChild.DataBind();
            this.NowInListId = new List <int>();
            if (pageinfos != null)
            {
                foreach (MR_PageInfo apage in pageinfos)
                {
                    this.NowInListId.Add(apage.PID);
                }
            }
            IList <MR_PageInfo> waitpageinfos = irm.GetListToList(-1, false);

            this.dl_MenuList.DataSource = waitpageinfos;
            this.dl_MenuList.DataBind();
        }
示例#2
0
        private void LoadChilds()
        {
            MR_Admin adminInfo = AdminPageStatic.GetLoginUserInfo();
            int      aid       = adminInfo.AID;
            int      gid       = adminInfo.GID;

            IRoleManage irm = GetInterface.GetIRoleManage();

            this.MenuTitle = irm.GetNode(this.PageId).PName;
            if (gid > 0)
            {
                this.Childs = SiteRuleCheck.GetAdminPages(aid, gid, PageId, true);
            }
            else if (gid == -1)
            {
                this.Childs = irm.GetList(PageId, false, true);
            }
            else
            {
                this.Childs = new List <MR_PageInfo>();
            }
            if (this.Childs == null)
            {
                this.Childs = new List <MR_PageInfo>();
            }
            rep_Nav.DataSource = this.Childs;
            rep_Nav.DataBind();
        }
示例#3
0
        /// <summary>
        /// 添加菜单项到当前选中的对象中
        /// </summary>
        /// <param name="pid"></param>
        /// <param name="defautExp"></param>
        private void AddPageRight(int pid, string defautExp)
        {
            int    rootid   = this.ddl_Root.SelectedValue.GetInt(0);
            string idlist   = this.ddl_For.SelectedValue;
            bool   isidlist = !idlist.IsNumber(false);

            IRightsSetting irs = GetInterface.GetIRightsSetting(this.NowSettingType);
            IRoleManage    irm = GetInterface.GetIRoleManage();

            //如果权限没有设置,手动设为000000
            if (string.IsNullOrEmpty(defautExp))
            {
                defautExp = "0000000";
            }

            //将这个权限赋给对象
            irs.AddRole(pid, idlist.ToIntList(','), defautExp, false);

            if (isidlist)  //如果对象是一组ID列表,需要将当前的表单缓存起来
            {
                if (this.NowAddToIdList.Count(t => t.PID == pid) == 0)
                {
                    MR_PageInfo info = irm.GetNode(pid);
                    info.BtnRightExp = defautExp;
                    this.NowAddToIdList.Add(info);
                }
                else
                {
                    MR_PageInfo info = this.NowAddToIdList.First(t => t.PID == pid);
                    info.BtnRightExp = defautExp;
                }
            }

            BindChildRight();

            SiteRuleCheck.FlushPageAndRightCache();
        }