FAQ首页 > 安装使用 > Discuz!NT > 查看文章
收起边栏
大字 小字 收藏 复制URL










3.1
积分用户组成员,后台编辑后无故变成管理员的解决方法
2010-10-12┆25,985 Views┆4
信息来源:http://nt.discuz.net/showtopic-129630.html

本来是一个显示问题,由于用户积分没有自动更新导致显示错误。(但是一旦提交了用户编辑则会变成真的管理员组。)
有需要的朋友可以按照下面的方法修改,或者直接下载附件覆盖

第一处
查找代码:

                try
                {
                    groupid.SelectedValue = userInfo.Groupid.ToString();
                }
                catch
                {
                    groupid.SelectedValue = UserCredits.GetCreditsUserGroupId(userInfo.Credits).Groupid.ToString();
                }

修改为:

                if(groupid.Items.FindByValue(userInfo.Groupid.ToString()) != null)
                {
                    groupid.SelectedValue = userInfo.Groupid.ToString();
                }
                else
                {
                    groupid.SelectedValue = UserCredits.GetCreditsUserGroupId(userInfo.Credits).Groupid.ToString();
                }

第二处
查找代码

            foreach (UserGroupInfo userGroupInfo in UserGroups.GetUserGroupList())
            {
                //if (userGroupInfo.System == 0 && userInfo.Groupid != userGroupInfo.Groupid || userGroupInfo.Groupid == 7)
                //    continue;

                if ((userGroupInfo.System == 0 && userGroupInfo.Radminid == 0) || userGroupInfo.Groupid == 7)
                    continue;
                groupid.Items.Add(new ListItem(userGroupInfo.Grouptitle, userGroupInfo.Groupid.ToString()));
                extgroupids.Items.Add(new ListItem(userGroupInfo.Grouptitle, userGroupInfo.Groupid.ToString()));
            }
            UserGroupInfo tmpUserGroupInfo = UserCredits.GetCreditsUserGroupId(userInfo.Credits);
            groupid.Items.Add(new ListItem(UserGroups.GetUserGroupInfo(tmpUserGroupInfo.Groupid).Grouptitle, tmpUserGroupInfo.Groupid.ToString()));

修改为

             UserGroupInfo tmpUserGroupInfo = UserCredits.GetCreditsUserGroupId(userInfo.Credits);
            groupid.Items.Add(new ListItem(UserGroups.GetUserGroupInfo(tmpUserGroupInfo.Groupid).Grouptitle, tmpUserGroupInfo.Groupid.ToString()));
            foreach (UserGroupInfo userGroupInfo in UserGroups.GetUserGroupList())
            {
                //if (userGroupInfo.System == 0 && userInfo.Groupid != userGroupInfo.Groupid || userGroupInfo.Groupid == 7)
                //    continue;

                if ((userGroupInfo.System == 0 && userGroupInfo.Radminid == 0) || userGroupInfo.Groupid == 7)
                    continue;
                groupid.Items.Add(new ListItem(userGroupInfo.Grouptitle, userGroupInfo.Groupid.ToString()));
                extgroupids.Items.Add(new ListItem(userGroupInfo.Grouptitle, userGroupInfo.Groupid.ToString()));
            }

Discuz.Web.Admin.dll

Discuz.Web.Admin.dll.zip(157 KB)

4

满意

不满意

本篇文章用到的Tags : 成员 管理员 后台 积分 用户

没找到您想要的答案吗?建议您到我们的讨论区发帖寻求大家和 Comsenz 工作人员的帮助。