Ejemplo n.º 1
0
        private void set_lock(HttpContext context)
        {
            //检查用户是否登录
            DTcms.Model.users umodel = new DTcms.Web.UI.BasePage().GetUserInfo();
            if (umodel == null)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"请登录后再提交!\"}");
                return;
            }

            StringBuilder strTxt = new StringBuilder();

            BLL.forum_posts   bll   = new BLL.forum_posts();
            Model.forum_posts model = new Model.forum_posts();

            int    post_id  = DTRequest.GetFormInt("postid");
            string optip    = DTRequest.GetFormString("optip");
            string opremark = DTRequest.GetFormString("opremark");

            model = bll.GetModel(post_id);


            //检查是否是版主
            if (!IsModerator(model.board_id, umodel.id))
            {
                context.Response.Write("{\"status\":0, \"msg\":\"对不起,你无权进行此操作!\"}");
                return;
            }

            string strSet = "is_lock=0";

            if (model.is_lock == 0)
            {
                strSet = "is_lock=1";
            }

            bll.UpdateField(post_id, strSet);

            //发送短信息
            string postusername = new DTcms.BLL.users().GetModel(model.user_id).user_name;

            new DTcms.BLL.user_message().Add(1, string.Empty, postusername, "您发布的帖子被管理员进行操作", "您的帖子被管理员进行 " + optip + " 操作,原因:" + opremark);
            new DTcms.Web.UI.ManagePage().AddAdminLog(DTEnums.ActionEnum.Edit.ToString(), "锁定帖子:" + opremark); //记录日志

            context.Response.Write("{\"status\": 1, \"msg\": \"恭喜您,操作成功!\"}");
            return;
        }
Ejemplo n.º 2
0
        private void reply(HttpContext context)
        {
            //检查用户是否登录
            DTcms.Model.users umodel = new DTcms.Web.UI.BasePage().GetUserInfo();
            if (umodel == null)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"请登录后再提交!\"}");
                return;
            }
            BLL.forum_posts   bll   = new BLL.forum_posts();
            Model.forum_posts model = new Model.forum_posts();

            string _title   = DTRequest.GetFormString("txtTitle");
            string _content = DTRequest.GetFormString("txtContent");
            int    board_id = DTRequest.GetFormInt("txtBoardID");
            int    post_id  = DTRequest.GetFormInt("txtPostID");


            int    _userid = umodel.id;
            string _userip = System.Web.HttpContext.Current.Request.UserHostAddress;

            model.class_layer    = 2;
            model.title          = Utils.DropHTML(_title);
            model.content        = _content;
            model.user_id        = _userid;
            model.user_ip        = _userip;
            model.board_id       = board_id;
            model.parent_post_id = post_id;
            model.post_type      = 2;//回帖


            Model.forum_posts pmodel = bll.GetModel(post_id);
            pmodel.reply_time    = DateTime.Now;
            pmodel.reply_user_id = _userid;
            pmodel.reply_count  += 1;

            if (bll.Add(model) > 0 && bll.Update(pmodel))
            {
                context.Response.Write("{\"status\": 1, \"msg\": \"恭喜您,回帖成功!\"}");
                return;
            }
            context.Response.Write("{\"status\": 0, \"msg\": \"对不起,保存过程中发生错误!\"}");
            return;
        }
Ejemplo n.º 3
0
        private void edit(HttpContext context)
        {
            //检查用户是否登录
            DTcms.Model.users umodel = new DTcms.Web.UI.BasePage().GetUserInfo();
            if (umodel == null)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"请登录后再提交!\"}");
                return;
            }
            BLL.forum_posts bll      = new BLL.forum_posts();
            string          _title   = DTRequest.GetFormString("txtTitle");
            string          _content = DTRequest.GetFormString("txtContent");
            int             post_id  = DTRequest.GetFormInt("txtPostID");

            if (post_id == 0)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"参数不正确!\"}");
                return;
            }
            Model.forum_posts model = bll.GetModel(post_id);

            //判断权限
            if (!IsModerator(model.board_id, umodel.id) && model.user_id != umodel.id)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"对不起,你无权编辑此帖!\"}");
                return;
            }

            model.title   = Utils.DropHTML(_title);
            model.content = _content;

            if (bll.Update(model))
            {
                context.Response.Write("{\"status\": 1, \"msg\": \"编辑帖子成功!\"}");
                return;
            }
            context.Response.Write("{\"status\": 0, \"msg\": \"对不起,保存过程中发生错误!\"}");
            return;
        }
Ejemplo n.º 4
0
        private void del(HttpContext context)
        {
            //检查用户是否登录
            DTcms.Model.users umodel = new DTcms.Web.UI.BasePage().GetUserInfo();
            if (umodel == null)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"请登录后再提交!\"}");
                return;
            }

            BLL.forum_posts   bll   = new BLL.forum_posts();
            Model.forum_posts model = new Model.forum_posts();
            int    post_id          = DTRequest.GetFormInt("postid");
            string optip            = DTRequest.GetFormString("optip");
            string opremark         = DTRequest.GetFormString("opremark");

            model = bll.GetModel(post_id);

            //检查是否是版主
            if (!IsModerator(model.board_id, umodel.id))
            {
                context.Response.Write("{\"status\":0, \"msg\":\"当前用户无权执行此操作!\"}");
                return;
            }

            if (bll.Delete(post_id))
            {
                //发送短信息
                string postusername = new DTcms.BLL.users().GetModel(model.user_id).user_name;
                new DTcms.BLL.user_message().Add(1, string.Empty, postusername, "您发布的帖子被管理员进行操作", "您的帖子被管理员进行 " + optip + " 操作,原因:" + opremark);
                new DTcms.Web.UI.ManagePage().AddAdminLog(DTEnums.ActionEnum.Delete.ToString(), "删除帖子:" + opremark); //记录日志

                context.Response.Write("{\"status\": 1, \"msg\": \"恭喜您,删除帖子成功!\"}");
                return;
            }
            context.Response.Write("{\"status\": 0, \"msg\": \"对不起,保存过程中发生错误!\"}");
            return;
        }
Ejemplo n.º 5
0
        private void move(HttpContext context)
        {
            //检查用户是否登录
            DTcms.Model.users umodel = new DTcms.Web.UI.BasePage().GetUserInfo();
            if (umodel == null)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"请登录后再操作!\"}");
                return;
            }
            BLL.forum_posts   bll   = new BLL.forum_posts();
            Model.forum_posts model = new Model.forum_posts();

            BLL.forum_board   bbll   = new BLL.forum_board();
            Model.forum_board bmodel = new Model.forum_board();

            int    post_id    = DTRequest.GetFormInt("postid");
            int    to_boardid = DTRequest.GetFormInt("toboardid");
            string opremark   = DTRequest.GetString("opremark");

            if (post_id == 0)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"参数不正确!\"}");
                return;
            }

            model = bll.GetModel(post_id);
            if (model.parent_post_id != 0)
            {
                context.Response.Write("{\"status\":0, \"msg\":\"非主题贴不可移动!\"}");
                return;
            }

            int postcount  = 0;
            int replycount = 0;
            int oldboardid = model.board_id;


            //检查是否是版主
            if (!IsModerator(model.board_id, umodel.id))
            {
                context.Response.Write("{\"status\":0, \"msg\":\"当前用户无权执行此操作!\"}");
                return;
            }

            DataTable dt = bll.GetList(0, "id=" + post_id + " or parent_post_id=" + post_id, "id desc").Tables[0];

            foreach (DataRow dr in dt.Rows)
            {
                if (int.Parse(dr["parent_post_id"].ToString()) == 0)
                {
                    postcount  += 1;
                    replycount += 1;
                }
                else
                {
                    replycount += 1;
                }
                bll.UpdateField(int.Parse(dr["id"].ToString()), "board_id=" + to_boardid);
            }

            bmodel = bbll.GetModel(oldboardid);
            bmodel.subject_count -= postcount;
            bmodel.post_count    -= replycount;
            bbll.Update(bmodel);

            bmodel = bbll.GetModel(to_boardid);
            bmodel.subject_count += postcount;
            bmodel.post_count    += replycount;
            bbll.Update(bmodel);

            new DTcms.Web.UI.ManagePage().AddAdminLog(DTEnums.ActionEnum.Edit.ToString(), "移动帖子:" + opremark); //记录日志

            context.Response.Write("{\"status\": 1, \"msg\": \"恭喜你,移动主题成功!\"}");
            return;
        }
Ejemplo n.º 6
0
        void forum_Init(object sender, EventArgs e)
        {
            page    = DTRequest.GetQueryInt("page", 1);
            post_id = DTRequest.GetQueryInt("post_id");

            if (post_id > 0) //如果ID获取到,将使用ID
            {
                if (bll.Exists(post_id))
                {
                    model = bll.GetModel(post_id);
                }
                bll.UpdateField(post_id, "click=click+1");

                if (model.board_id > 0)
                {
                    int    bid  = int.Parse(new board().get_category_id(model.board_id));
                    string auid = new BLL.forum_board().GetModel(bid).allow_usergroupid_list;  //获取父板块访问权限列表
                    auid += ",";
                    string[] alist = auid.Split(',');
                    int      ugid  = 0;
                    foreach (string item in alist)
                    {
                        if (item == "" || item == null) //如果父板块访问权限为空当前板块为所有权限
                        {
                            if (IsUserLogin())          //判断用户是否登陆
                            {
                                umodel = GetUserInfo();
                                string moderator = new BLL.forum_board().GetModel(bid).moderator_list;
                                moderator += ",";
                                string[] mlist = moderator.Split(',');
                                foreach (string mitem in mlist)
                                {
                                    if (mitem != "" && mitem == umodel.user_name)
                                    {
                                        is_moderator = 1;
                                    }
                                }
                            }
                        }
                        else
                        {
                            if (IsUserLogin()) //判断用户是否登陆
                            {
                                umodel = GetUserInfo();
                                if (item == umodel.group_id.ToString()) //如果父板块访问权限列表等于当前用户的用户组,允许访问
                                {
                                    string moderator = new BLL.forum_board().GetModel(bid).moderator_list;
                                    moderator += ",";
                                    string[] mlist = moderator.Split(',');
                                    foreach (string mitem in mlist)
                                    {
                                        if (mitem != "" && mitem == umodel.user_name)
                                        {
                                            is_moderator = 1;
                                        }
                                    }
                                    ugid = 1;
                                    break;
                                }
                                else
                                {
                                    ugid = 2;
                                }
                            }
                            else
                            {
                                HttpContext.Current.Response.Redirect(linkurl("error", "?msg=" + Utils.UrlEncode("本帖子禁止游客查看!")));
                                break;
                            }
                        }
                    }
                    if (ugid == 2)
                    {
                        HttpContext.Current.Response.Redirect(linkurl("error", "?msg=" + Utils.UrlEncode("您没有查看本帖子的权限!")));
                    }
                }
                else
                {
                    HttpContext.Current.Response.Redirect(linkurl("error", "?msg=" + Utils.UrlEncode("非法进入!")));
                }
            }
        }