Пример #1
0
        private void UpdateUserGroupInf_Click(object sender, EventArgs e)
        {
            #region 更新管理组信息

            if (this.CheckCookie())
            {
                __usergroupinfo            = AdminUserGroups.AdminGetUserGroupInfo(DNTRequest.GetInt("groupid", -1));
                __usergroupinfo.System     = 0;
                __usergroupinfo.Type       = 0;
                __usergroupinfo.Readaccess = Convert.ToInt32(readaccess.Text);

                if (radminid.SelectedValue == "0") //当未选取任何管理模板时
                {
                    AdminGroups.DeleteAdminGroupInfo((short)__usergroupinfo.Groupid);
                    __usergroupinfo.Radminid = 0;
                }
                else //当选取相应的管理模板时
                {
                    int selectradminid = Convert.ToInt32(radminid.SelectedValue);
                    ///对于当前用户组中,有管理权限的,则设置管理权限
                    if (selectradminid > 0 && selectradminid <= 3)
                    {
                        __admingroupinfo          = new AdminGroupInfo();
                        __admingroupinfo.Admingid = (short)__usergroupinfo.Groupid;

                        //插入相应的管理组
                        __admingroupinfo.Alloweditpost     = BoolToByte(admingroupright.Items[0].Selected);
                        __admingroupinfo.Alloweditpoll     = BoolToByte(admingroupright.Items[1].Selected);
                        __admingroupinfo.Allowstickthread  = (byte)Convert.ToInt16(allowstickthread.SelectedValue);
                        __admingroupinfo.Allowmodpost      = 0;
                        __admingroupinfo.Allowdelpost      = BoolToByte(admingroupright.Items[2].Selected);
                        __admingroupinfo.Allowmassprune    = BoolToByte(admingroupright.Items[3].Selected);
                        __admingroupinfo.Allowrefund       = 0;
                        __admingroupinfo.Allowcensorword   = 0;;
                        __admingroupinfo.Allowviewip       = BoolToByte(admingroupright.Items[4].Selected);
                        __admingroupinfo.Allowbanip        = 0;
                        __admingroupinfo.Allowedituser     = BoolToByte(admingroupright.Items[5].Selected);
                        __admingroupinfo.Allowmoduser      = 0;
                        __admingroupinfo.Allowbanuser      = 0;
                        __admingroupinfo.Allowpostannounce = 0;
                        __admingroupinfo.Allowviewlog      = BoolToByte(admingroupright.Items[6].Selected);
                        __admingroupinfo.Disablepostctrl   = BoolToByte(admingroupright.Items[7].Selected);
                        __admingroupinfo.Allowviewrealname = BoolToByte(admingroupright.Items[8].Selected);
                        __admingroupinfo.Allowbanuser      = BoolToByte(admingroupright.Items[9].Selected);
                        __admingroupinfo.Allowbanip        = BoolToByte(admingroupright.Items[10].Selected);

                        //当已有记录时
                        if (DatabaseProvider.GetInstance().GetAdmingid(__usergroupinfo.Groupid).Rows.Count > 0)
                        {
                            //更新相应的管理组
                            AdminGroups.SetAdminGroupInfo(__admingroupinfo);
                        }
                        else
                        { //建立相应的用户组
                            AdminGroups.CreateAdminGroupInfo(__admingroupinfo);
                        }
                        __usergroupinfo.Radminid = selectradminid;
                    }
                    else
                    {
                        __usergroupinfo.Radminid = 0;
                    }
                }

                DatabaseProvider.GetInstance().ChangeUserAdminidByGroupid(__usergroupinfo.Radminid, __usergroupinfo.Groupid);

                __usergroupinfo.Grouptitle       = groupTitle.Text;
                __usergroupinfo.Creditshigher    = Convert.ToInt32(creditshigher.Text);
                __usergroupinfo.Creditslower     = Convert.ToInt32(creditslower.Text);
                __usergroupinfo.Stars            = Convert.ToInt32(stars.Text);
                __usergroupinfo.Color            = color.Text;
                __usergroupinfo.Groupavatar      = groupavatar.Text;
                __usergroupinfo.Maxprice         = Convert.ToInt32(maxprice.Text);
                __usergroupinfo.Maxpmnum         = Convert.ToInt32(maxpmnum.Text);
                __usergroupinfo.Maxsigsize       = Convert.ToInt32(maxsigsize.Text);
                __usergroupinfo.Maxattachsize    = Convert.ToInt32(maxattachsize.Text);
                __usergroupinfo.Maxsizeperday    = Convert.ToInt32(maxsizeperday.Text);
                __usergroupinfo.Attachextensions = attachextensions.GetSelectString(",");

                usergrouppowersetting.GetSetting(ref __usergroupinfo);


                if (AdminUserGroups.UpdateUserGroupInfo(__usergroupinfo))
                {
                    #region 是否允许接收举报信息和管理图片评论
                    GeneralConfigInfo configinfo = GeneralConfigs.Deserialize(Server.MapPath("../../config/general.config"));
                    //是否允许接收举报信息
                    int groupid = __usergroupinfo.Groupid;
                    if (admingroupright.Items[11].Selected)
                    {
                        if (("," + configinfo.Reportusergroup + ",").IndexOf("," + groupid + ",") == -1)
                        {
                            if (configinfo.Reportusergroup == "")
                            {
                                configinfo.Reportusergroup = groupid.ToString();
                            }
                            else
                            {
                                configinfo.Reportusergroup += "," + groupid.ToString();
                            }
                        }
                    }
                    else
                    {
                        string tempstr = "";
                        foreach (string report in configinfo.Reportusergroup.Split(','))
                        {
                            if (report != groupid.ToString())
                            {
                                if (tempstr == "")
                                {
                                    tempstr = report;
                                }
                                else
                                {
                                    tempstr += "," + report;
                                }
                            }
                        }
                        configinfo.Reportusergroup = tempstr;
                    }

                    GeneralConfigs.Serialiaze(configinfo, AppDomain.CurrentDomain.BaseDirectory + "config/general.config");
                    #endregion
                    Discuz.Cache.DNTCache.GetCacheService().RemoveObject("/Forum/UserGroupList");
                    Discuz.Cache.DNTCache.GetCacheService().RemoveObject("/Forum/AdminGroupList");

                    AdminVistLogs.InsertLog(this.userid, this.username, this.usergroupid, this.grouptitle, this.ip, "后台更新管理组", "组名:" + groupTitle.Text);
                    base.RegisterStartupScript("PAGE", "window.location.href='global_adminusergroupgrid.aspx';");
                }
                else
                {
                    base.RegisterStartupScript("", "<script>alert('操作失败');window.location.href='global_adminusergroupgrid.aspx';</script>");
                }
            }

            #endregion
        }
Пример #2
0
        private void UpdateUserGroupInf_Click(object sender, EventArgs e)
        {
            #region 更新系统管理组信息

            if (this.CheckCookie())
            {
                __usergroupinfo            = AdminUserGroups.AdminGetUserGroupInfo(DNTRequest.GetInt("groupid", -1));
                __usergroupinfo.System     = 0;
                __usergroupinfo.Type       = 0;
                __usergroupinfo.Readaccess = Convert.ToInt32(readaccess.Text);

                //__usergroupinfo.Allowvisit = BoolToInt(usergroupright.Items[0].Selected);
                //__usergroupinfo.Allowpost = BoolToInt(usergroupright.Items[1].Selected);
                //__usergroupinfo.Allowreply = BoolToInt(usergroupright.Items[2].Selected);
                //__usergroupinfo.Allowpostpoll = BoolToInt(usergroupright.Items[3].Selected);
                //__usergroupinfo.Allowdirectpost = 1; //BoolToInt(usergroupright.Items[4].Selected);
                //__usergroupinfo.Allowgetattach = BoolToInt(usergroupright.Items[4].Selected);
                //__usergroupinfo.Allowpostattach = BoolToInt(usergroupright.Items[5].Selected);
                //__usergroupinfo.Allowvote = BoolToInt(usergroupright.Items[6].Selected);
                //__usergroupinfo.Allowsetreadperm = BoolToInt(usergroupright.Items[7].Selected);
                //__usergroupinfo.Allowsetattachperm = BoolToInt(usergroupright.Items[8].Selected);

                //if (__usergroupinfo.Groupid != 7)
                //{
                //    __usergroupinfo.Allowhidecode = BoolToInt(usergroupright.Items[9].Selected);
                //    __usergroupinfo.Allowcusbbcode = BoolToInt(usergroupright.Items[10].Selected);
                //    __usergroupinfo.Allowsigbbcode = BoolToInt(usergroupright.Items[11].Selected);
                //    __usergroupinfo.Allowsigimgcode = BoolToInt(usergroupright.Items[12].Selected);
                //    __usergroupinfo.Allowviewpro = BoolToInt(usergroupright.Items[13].Selected);
                //    __usergroupinfo.Disableperiodctrl = BoolToInt(usergroupright.Items[14].Selected);
                //}
                //else
                //{
                //    __usergroupinfo.Allowhidecode = 0;
                //    __usergroupinfo.Allowcusbbcode = BoolToInt(usergroupright.Items[9].Selected);
                //    __usergroupinfo.Allowsigbbcode = BoolToInt(usergroupright.Items[10].Selected);
                //    __usergroupinfo.Allowsigimgcode = BoolToInt(usergroupright.Items[11].Selected);
                //    __usergroupinfo.Allowviewpro = BoolToInt(usergroupright.Items[12].Selected);
                //    __usergroupinfo.Disableperiodctrl = BoolToInt(usergroupright.Items[13].Selected);
                //}
                //__usergroupinfo.Allowsearch = Convert.ToInt32(allowsearch.SelectedValue);


                __usergroupinfo.Allowviewstats   = 0;
                __usergroupinfo.Allownickname    = 0;
                __usergroupinfo.Allowhtml        = 0;
                __usergroupinfo.Allowcstatus     = 0;
                __usergroupinfo.Allowuseblog     = 0;
                __usergroupinfo.Allowinvisible   = 0;
                __usergroupinfo.Allowtransfer    = 0;
                __usergroupinfo.Allowmultigroups = 0;
                __usergroupinfo.Reasonpm         = 0;

                //__usergroupinfo.Allowavatar = Convert.ToInt16(allowavatar.SelectedValue);

                if (radminid.SelectedValue == "0") //当未选取任何管理模板时
                {
                    AdminGroups.DeleteAdminGroupInfo((short)__usergroupinfo.Groupid);
                    __usergroupinfo.Radminid = 0;
                }
                else //当选取相应的管理模板时
                {
                    int selectradminid = Convert.ToInt32(radminid.SelectedValue);
                    ///对于当前用户组中,有管理权限的,则设置管理权限
                    if (selectradminid > 0 && selectradminid <= 3)
                    {
                        __admingroupinfo          = new AdminGroupInfo();
                        __admingroupinfo.Admingid = (short)__usergroupinfo.Groupid;
                        //插入相应的管理组
                        __admingroupinfo.Alloweditpost     = BoolToByte(admingroupright.Items[0].Selected);
                        __admingroupinfo.Alloweditpoll     = BoolToByte(admingroupright.Items[1].Selected);
                        __admingroupinfo.Allowstickthread  = (byte)Convert.ToInt16(allowstickthread.SelectedValue);
                        __admingroupinfo.Allowmodpost      = 0;;
                        __admingroupinfo.Allowdelpost      = BoolToByte(admingroupright.Items[2].Selected);
                        __admingroupinfo.Allowmassprune    = BoolToByte(admingroupright.Items[3].Selected);
                        __admingroupinfo.Allowrefund       = 0;
                        __admingroupinfo.Allowcensorword   = 0;
                        __admingroupinfo.Allowviewip       = BoolToByte(admingroupright.Items[4].Selected);
                        __admingroupinfo.Allowbanip        = 0;
                        __admingroupinfo.Allowedituser     = BoolToByte(admingroupright.Items[5].Selected);
                        __admingroupinfo.Allowmoduser      = 0;
                        __admingroupinfo.Allowbanuser      = 0;
                        __admingroupinfo.Allowpostannounce = 0;
                        __admingroupinfo.Allowviewlog      = BoolToByte(admingroupright.Items[6].Selected);
                        __admingroupinfo.Disablepostctrl   = BoolToByte(admingroupright.Items[7].Selected);

                        //当已有记录时
                        //if (DbHelper.ExecuteDataset("SELECT [admingid]  FROM [" + BaseConfigs.GetTablePrefix + "admingroups] WHERE [admingid]=" + __usergroupinfo.Groupid.ToString()).Tables[0].Rows.Count > 0)
                        if (DatabaseProvider.GetInstance().GetAdmingid(__usergroupinfo.Groupid).Rows.Count > 0)
                        {
                            //更新相应的管理组
                            AdminGroups.SetAdminGroupInfo(__admingroupinfo);
                        }
                        else
                        { //建立相应的用户组
                            AdminGroups.CreateAdminGroupInfo(__admingroupinfo);
                        }
                        __usergroupinfo.Radminid = selectradminid;
                    }
                    else
                    {
                        __usergroupinfo.Radminid = 0;
                    }
                }

                //DbHelper.ExecuteNonQuery("UPDATE [" + BaseConfigs.GetTablePrefix + "users] SET [adminid]=" + __usergroupinfo.Radminid + " WHERE [groupid]=" + __usergroupinfo.Groupid);
                DatabaseProvider.GetInstance().ChangeUserAdminidByGroupid(__usergroupinfo.Radminid, __usergroupinfo.Groupid);
                __usergroupinfo.Grouptitle       = groupTitle.Text;
                __usergroupinfo.Creditshigher    = Convert.ToInt32(creditshigher.Text);
                __usergroupinfo.Creditslower     = Convert.ToInt32(creditslower.Text);
                __usergroupinfo.Stars            = Convert.ToInt32(stars.Text);
                __usergroupinfo.Color            = color.Text;
                __usergroupinfo.Groupavatar      = groupavatar.Text;
                __usergroupinfo.Maxprice         = Convert.ToInt32(maxprice.Text);
                __usergroupinfo.Maxpmnum         = Convert.ToInt32(maxpmnum.Text);
                __usergroupinfo.Maxsigsize       = Convert.ToInt32(maxsigsize.Text);
                __usergroupinfo.Maxattachsize    = Convert.ToInt32(maxattachsize.Text);
                __usergroupinfo.Maxsizeperday    = Convert.ToInt32(maxsizeperday.Text);
                __usergroupinfo.Attachextensions = attachextensions.GetSelectString(",");

                //GeneralConfigInfo __configinfo = GeneralConfigs.Deserialize(Server.MapPath("../../config/general.config"));
                usergrouppowersetting.GetSetting(ref __usergroupinfo);

                if (AdminUserGroups.UpdateUserGroupInfo(__usergroupinfo))
                {
                    //GeneralConfigs.Serialiaze(__configinfo, Server.MapPath("../../config/general.config"));
                    Discuz.Cache.DNTCache.GetCacheService().RemoveObject("/Forum/UserGroupList");
                    Discuz.Cache.DNTCache.GetCacheService().RemoveObject("/Forum/AdminGroupList");
                    AdminVistLogs.InsertLog(this.userid, this.username, this.usergroupid, this.grouptitle, this.ip, "后台更新系统组", "组ID:" + DNTRequest.GetInt("groupid", -1));
                    base.RegisterStartupScript("PAGE", "window.location.href='global_sysadminusergroupgrid.aspx';");
                }
                else
                {
                    base.RegisterStartupScript("", "<script>alert('操作失败');window.location.href='global_sysadminusergroupgrid.aspx';</script>");
                }
            }

            #endregion
        }