/// <summary>
        /// 保存选择的权限
        /// </summary>
        private void SavePageBtnRule()
        {
            string idlist = this.ddl_For.SelectedValue;
            Dictionary <int, string> roles = new Dictionary <int, string>();

            foreach (GridViewRow dgitem in this.gvInRole.Rows)
            {
                if (dgitem.RowType == DataControlRowType.DataRow)
                {
                    int           pid     = this.gvInRole.DataKeys[dgitem.RowIndex].Value.GetInt(0);
                    StringBuilder rolestr = new StringBuilder();
                    rolestr.Append(GetBtnRightsFromGridViewRow(dgitem, "r_1"));
                    rolestr.Append(GetBtnRightsFromGridViewRow(dgitem, "r_2"));
                    rolestr.Append(GetBtnRightsFromGridViewRow(dgitem, "r_3"));
                    rolestr.Append(GetBtnRightsFromGridViewRow(dgitem, "r_4"));
                    rolestr.Append(GetBtnRightsFromGridViewRow(dgitem, "r_5"));
                    rolestr.Append(GetBtnRightsFromGridViewRow(dgitem, "r_6"));
                    rolestr.Append(GetBtnRightsFromGridViewRow(dgitem, "r_7"));
                    roles.Add(pid, rolestr.ToString());
                }
            }

            IRightsSetting irs = GetInterface.GetIRightsSetting(this.NowSettingType);

            irs.UpdateBtnExp(idlist.ToIntList(','), roles);

            SiteRuleCheck.FlushPageAndRightCache();

            ReloadRoles();
        }
Exemple #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();
        }
Exemple #3
0
        /// <summary>
        /// 点击添加新隐藏页按钮
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void lb_save_Click(object sender, EventArgs e)
        {
            string      pname    = this.tb_add_pname.Text.Trim();
            string      purl     = this.tb_add_url.Text.Trim();
            int         parentid = -1;
            IRoleManage irm      = GetInterface.GetIRoleManage();

            irm.AddNode(pname, purl, parentid, 0);
            InitPageInfo();

            SiteRuleCheck.FlushPageAndRightCache();
        }
        /// <summary>
        /// 移除对象的某个权限
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void gvInRole_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            int            pageid = this.gvInRole.DataKeys[e.RowIndex].Value.GetInt(0);
            string         idlist = this.ddl_For.SelectedValue;
            IRightsSetting irs    = GetInterface.GetIRightsSetting(this.NowSettingType);

            irs.RemoveRole(idlist.ToIntList(','), pageid);

            SiteRuleCheck.FlushPageAndRightCache();

            ReloadRoles();
        }
Exemple #5
0
        protected void dl_InChild_ItemCommand(object source, DataListCommandEventArgs e)
        {
            string cmdName = e.CommandName;

            if (cmdName == "Remove")
            {
                int         childId = this.dl_InChild.DataKeys[e.Item.ItemIndex].GetInt(0);
                IPageParent ipp     = GetInterface.GetIPageParent();
                ipp.RemoveChild(this.NodeId, childId);
                InitPageInfo();

                SiteRuleCheck.FlushPageAndRightCache();
            }
        }
Exemple #6
0
        protected void lb_save_Click(object sender, EventArgs e)
        {
            IGroupManage gmobj = GetInterface.GetIGroupManage();
            string       gname = this.tb_GroupName.Text.Trim();

            if (string.IsNullOrEmpty(gname))
            {
                this.Alert(AdminCollect.ERR_GROUPNAME_NULL);
                return;
            }
            gmobj.AddUpdate(gname, 0);
            DvBind();
            SiteRuleCheck.FlushPageAndRightCache();
        }
Exemple #7
0
        /// <summary>
        /// 保存修改
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void gvList_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            IAdminManage iam = GetInterface.GetIAdminManage();
            GridViewRow  gvr = this.gvList.Rows[e.RowIndex];

            int    oldGid   = ((LinkButton)gvr.FindControl("btnupdate_Update")).CommandArgument.ToString().GetInt(0);
            string nickName = ((TextBox)gvr.FindControl("tb_NickName")).Text.Trim();
            int    gid      = ((DropDownList)gvr.FindControl("ddl_GroupList")).SelectedValue.GetInt(0);
            string email    = ((TextBox)gvr.FindControl("tb_Email")).Text.Trim();
            int    AID      = this.gvList.DataKeys[e.RowIndex].Value.GetInt(0);

            if (nickName.Length == 0 || nickName.Length > 10)
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_NICKNAME_ERR);
                return;
            }
            if (!email.IsEmail())
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_EMAIL_ERR);
                return;
            }
            if (!iam.UpdateBaseInfo(nickName, email, AID))
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_SAVE_ERR);
                return;
            }


            if (gid == 0)
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_GROUP_ERR);
                return;
            }
            int arg = ((DropDownList)gvr.FindControl("ddl_rolearg")).SelectedValue.GetInt(0);

            if (!(arg == 0 && gid == oldGid))
            {
                if (!iam.UpdateGroup(gid, AID, (CYJH_OrderSystem.Admin.Base.Contract.Enums.EUpdateGroupArg)arg))
                {
                    this.Alert(AdminCollect.EDITOR_INFO_ERR_SAVE_GROUP_ERR);
                }
            }
            SiteRuleCheck.FlushPageAndRightCache();
            this.gvList.EditIndex = -1;
            DgBind();
        }
        protected void dl_MenuList_ItemCommand(object source, DataListCommandEventArgs e)
        {
            string cmdName = e.CommandName;
            int    pid     = dl_MenuList.DataKeys[e.Item.ItemIndex].GetInt(0);

            if (pid == 0)
            {
                return;
            }

            if (cmdName == "Insert")   //将一个选项添加到当前选中的用户或用户组中
            {
                AddPageRight(pid, e.CommandArgument.ToString());

                SiteRuleCheck.FlushPageAndRightCache();
            }
        }
Exemple #9
0
        protected void gvList_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            int          AID = this.gvList.DataKeys[e.RowIndex].Value.GetInt(0);
            IAdminManage iam = GetInterface.GetIAdminManage();

            if (iam.Delete(AdminPageStatic.GetLoginUserInfo().AID, AID))
            {
                this.gvList.EditIndex = -1;
                DgBind();
            }
            else
            {
                this.Alert(AdminCollect.DELETE_ADMIN_ERR);
                DgBind();
            }
            SiteRuleCheck.FlushPageAndRightCache();
        }
Exemple #10
0
        /// <summary>
        /// 添加新管理员时,点击保存按钮
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void lb_save_Click(object sender, EventArgs e)
        {
            string aname     = this.tb_LoginName.Text.Trim();
            string anickname = this.tb_ANickName.Text.Trim();
            string pwd1      = this.tb_LoginPwd1.Text.Trim();
            string pwd2      = this.tb_LoginPwd2.Text.Trim();
            string email     = this.tb_Email.Text.Trim();
            int    gid       = this.ddl_GroupList.SelectedValue.GetInt(0);

            if (gid == 0)
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_GROUP_ERR);
                return;
            }

            if (!aname.IsUserName())
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_USERNAME_ERR);
                return;
            }

            if (anickname.Length == 0 || anickname.Length > 10)
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_NICKNAME_ERR);
                return;
            }

            if (pwd1 != pwd2)
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_PWD_NOT_THE_SAME);
                return;
            }

            if (!email.IsEmail())
            {
                this.Alert(AdminCollect.EDITOR_INFO_ERR_EMAIL_ERR);
                return;
            }

            IAdminManage iamobj = GetInterface.GetIAdminManage();

            int aid = iamobj.Add(aname, pwd1, anickname, email, gid);

            SiteRuleCheck.FlushPageAndRightCache();
            DgBind();
        }
Exemple #11
0
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void gvList_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            IGroupManage igm    = GetInterface.GetIGroupManage();
            int          gid    = this.gvList.DataKeys[e.RowIndex].Value.GetInt(0);
            bool         result = igm.DeleteGroup(gid);

            this.gvList.EditIndex = -1;
            DvBind();
            if (result)
            {
                this.Alert(AdminCollect.DELETE_SUCCESSFUL);
            }
            else
            {
                this.Alert(AdminCollect.DELETE_FAILED);
            }
            SiteRuleCheck.FlushPageAndRightCache();
        }
Exemple #12
0
        /// <summary>
        /// 保存修改
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void gvList_RowUpdating(object sender, GridViewUpdateEventArgs e)
        {
            TextBox tb      = (TextBox)this.gvList.Rows[e.RowIndex].FindControl("tb_Gname_Editor");
            string  newName = tb.Text.Trim();
            int     gid     = this.gvList.DataKeys[e.RowIndex].Value.GetInt(0);

            if (string.IsNullOrEmpty(newName))
            {
                this.Alert(AdminCollect.ERR_GROUPNAME_NULL);
                return;
            }
            IGroupManage igmobj = GetInterface.GetIGroupManage();

            igmobj.AddUpdate(newName, gid);
            this.gvList.EditIndex = -1;
            DvBind();
            SiteRuleCheck.FlushPageAndRightCache();
        }
Exemple #13
0
        private void LoadMenus()
        {
            MR_Admin adminobj = AdminPageStatic.GetLoginUserInfo();
            int      adminid  = adminobj.AID;
            int      groupid  = adminobj.GID;

            IList <MR_PageInfo> info = new List <MR_PageInfo>();

            if (groupid > 0)
            {
                info = SiteRuleCheck.GetAdminPages(adminid, groupid, 0, false);
            }
            else if (groupid == -1)
            {
                IRoleManage irm = GetInterface.GetIRoleManage();
                info = irm.GetListToList(0, false);
            }
            else
            {
                Session["ErrInfo"] = "找不到用户组!";
                AdminPageStatic.RedirectToLoginPage(false);
                return;
            }
            StringBuilder sb = new StringBuilder();

            sb.Append(" [");
            string span = "";

            if (info.Count > 0)
            {
                OnLoadId = info[0].PID;
            }
            foreach (MR_PageInfo tmp in info)
            {
                sb.Append(span);
                sb.Append("{");
                sb.AppendFormat(" 'Text': '{0}', 'Id': '{1}', 'URL': '{2}'", tmp.PName, tmp.PID, tmp.PUrl);
                sb.Append("}");
                span = ",";
            }
            sb.Append(" ]");
            this.Menus = sb.ToString();
        }
        protected void gvInRole_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            string cmdName = e.CommandName;

            switch (cmdName)
            {
            case "ChangeRoot":

                SiteRuleCheck.FlushPageAndRightCache();

                ListItem li = this.ddl_Root.Items.FindByValue(e.CommandArgument.ToString());
                if (li != null && li != this.ddl_Root.SelectedItem)
                {
                    this.ddl_Root.SelectedValue = li.Value;
                    ReloadRoles();
                }
                break;

            default:
                break;
            }
        }
        /// <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();
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            int selectedGID = ddl_GroupList.SelectedValue.GetInt(0, false);

            if (selectedGID <= 0)
            {
                this.Alert("必须选择一个预设组,否则将无法登录!");
                return;
            }

            foreach (GridViewRow dvr in adminList.Rows)
            {
                CheckBox cb            = (CheckBox)dvr.FindControl("cb_AName");
                Label    lab_ANickName = (Label)dvr.FindControl("lab_ANickName");
                Label    lab_Email     = (Label)dvr.FindControl("lab_Email");
                if (cb.Checked)
                {
                    iamobj.Add(cb.Text, "", lab_ANickName.Text, lab_Email.Text, selectedGID);
                }
            }
            this.Alert("添加成功!!");
            SiteRuleCheck.FlushPageAndRightCache();
            BindData();
        }
Exemple #17
0
 protected void Application_AuthenticateRequest(object sender, EventArgs e)
 {
     //后台页面访问权限验证,没通过自动跳到配置的页面
     SiteRuleCheck.CurrPageRoleCheck();
 }