protected void BindData(int circlePostID)
        {
            var list = circlePostBLL.GetCirclePost(circlePost => circlePost.CirclePostID == circlePostID);

            circlePost = list.First();

            circlePost.ImgList = XFXExt.imgList(circlePost.ImgList, ConfigurationManager.AppSettings["UploadUrl"]);

            DetailsView1.DataSource = list;
            DetailsView1.DataBind();
            CurrentMode_Init();
        }
        protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)
        {
            try
            {
                var HiddenField1 = (HiddenField)DetailsView1.FindControl("HiddenField1");
                var HiddenField2 = (HiddenField)DetailsView1.FindControl("HiddenField2");
                var HiddenField3 = (HiddenField)DetailsView1.FindControl("HiddenField3");
                var HiddenField4 = (HiddenField)DetailsView1.FindControl("HiddenField4");
                var img_div      = (HtmlGenericControl)DetailsView1.FindControl("img_div");
                img_div.InnerHtml = HiddenField2.Value;
                if (string.IsNullOrWhiteSpace(HiddenField1.Value))
                {
                    throw new Exception("内容不能为空");
                }
                var div_Detail = (HtmlGenericControl)DetailsView1.FindControl("div_Detail");
                div_Detail.InnerHtml = HiddenField1.Value;
                var circlePost = new CirclePost();
                if (e.Values["Title"] == null || e.Values["Title"].ToString().Length < 5)
                {
                    throw new Exception("标题不能少于五个字");
                }

                circlePost.Title  = e.Values["Title"].ToString();
                circlePost.Detail = HiddenField1.Value;
                int templength = 20;
                if (HiddenField4.Value.Length < 20)
                {
                    templength = HiddenField4.Value.Length;
                }
                circlePost.DetailDigest = HiddenField4.Value.Substring(0, templength);
                circlePost.ImgList      = HiddenField3.Value.Replace(ConfigurationManager.AppSettings["UploadUrl"], "");
                circlePost.CircleTypeID = Convert.ToInt32(((DropDownList)DetailsView1.FindControl("DropDownList_CircleTypeID")).SelectedValue);
                circlePost.UserID       = Convert.ToInt32(((DropDownList)DetailsView1.FindControl("DropDownList_UserID")).SelectedValue);
                circlePost.CreateTime   = DateTime.Now;
                circlePost.UpdateTime   = DateTime.Now;
                circlePost.State        = 1;
                using (Entity entity = new Entity())
                {
                    entity.CirclePost.Add(circlePost);
                    entity.SaveChanges();
                }
                Response.Redirect("CirclePostDetail.aspx?circlePostID=" + circlePost.CirclePostID);
            }
            catch (Exception exception)
            {
                string error = exception.GetErrorMessage().Replace("'", "\\'").Replace("\"", "\\\"").Replace("\r\n", "\\r\\n");
                ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", string.Format("<script>alert('{0}')</script>", error));
            }
        }
Ejemplo n.º 3
0
        protected void DetailsView1_ItemInserting(object sender, DetailsViewInsertEventArgs e)
        {
            try
            {
                var DropDownList_UserID = ((DropDownList)DetailsView1.FindControl("DropDownList_UserID"));
                using (Entity entity = new Entity())
                {
                    CirclePost circlePost = entity.CirclePost.Find(Convert.ToInt32(ViewState["circlePostID"]));
                    circlePost.ReplyNum++;
                    circlePost.UpdateTime = DateTime.Now;
                    CirclePostReply circlePostReply = new CirclePostReply()
                    {
                        UserID       = Convert.ToInt32(DropDownList_UserID.SelectedValue),
                        CirclePostID = Convert.ToInt32(ViewState["circlePostID"]),

                        State      = 0,
                        CreateTime = DateTime.Now,
                        Floor      = circlePost.ReplyNum
                    };
                    var file_url = (HtmlInputHidden)DetailsView1.FindControl("file_url");
                    circlePostReply.ImgList = "";
                    if (!string.IsNullOrEmpty(file_url.Value))
                    {
                        var img_url = (HtmlImage)DetailsView1.FindControl("img_url");
                        img_url.Src             = ConfigurationManager.AppSettings["UploadUrl"] + file_url.Value;
                        circlePostReply.ImgList = file_url.Value;
                    }
                    var HiddenField1 = (HiddenField)DetailsView1.FindControl("HiddenField1");
                    circlePostReply.Detail = HiddenField1.Value;
                    if (string.IsNullOrWhiteSpace(circlePostReply.ImgList) && string.IsNullOrWhiteSpace(circlePostReply.Detail))
                    {
                        throw new Exception("回复不能为空");
                    }
                    entity.CirclePostReply.Add(circlePostReply);
                    entity.SaveChanges();
                }
                Response.Redirect("CirclePostReplyList.aspx?circlePostID=" + ViewState["circlePostID"]);
            }
            catch (Exception exception)
            {
                string error = exception.GetErrorMessage().Replace("'", "\\'").Replace("\"", "\\\"").Replace("\r\n", "\\r\\n");
                ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", string.Format("<script>alert('{0}')</script>", error));
            }
        }
        public string CreatePost()
        {
            HttpContextBase context        = (HttpContextBase)Request.Properties["MS_HttpContext"];
            HttpRequestBase request        = context.Request;
            Authentication  authentication = new Authentication(request);

            if (!string.IsNullOrEmpty(authentication.state))
            {
                return(null);
            }
            using (Entity entity = new Entity())
            {
                UserExtend userExtend = entity.UserExtend.Find(authentication.userID);
                if (userExtend.Banned == 1 && userExtend.BannedEndTime > DateTime.Now)
                {
                    throw new Exception("禁言中...");
                }
            }
            string circleTypeIDTemp = request["id"];

            if (circleTypeIDTemp == null)
            {
                return(null);
            }
            int circleTypeID;

            if (!int.TryParse(circleTypeIDTemp, out circleTypeID))
            {
                return(null);
            }
            CirclePost circlePost = new CirclePost();

            circlePost.Title   = request["Title"];
            circlePost.Detail  = request["Detail"];
            circlePost.ImgList = request["ImgList"];
            string DetailDigest = request["DetailDigest"] ?? "";

            if (DetailDigest.Length > 50)
            {
                DetailDigest = DetailDigest.Substring(0, 50);
            }
            circlePost.DetailDigest = DetailDigest;
            circlePost.UserID       = authentication.userID;
            circlePost.CircleTypeID = circleTypeID;
            circlePost.CreateTime   = DateTime.Now;
            circlePost.UpdateTime   = DateTime.Now;
            circlePost.State        = 1;
            if (request["didian"] == "1")
            {
                circlePost.State |= 128;
            }
            float x;

            float.TryParse(request["longitude"], out x);
            circlePost.CoordX = x;
            float y;

            float.TryParse(request["latitude"], out y);
            circlePost.CoordY   = y;
            circlePost.Province = request["adre"];
            circlePost.City     = request["city"];

            using (Entity entity = new Entity())
            {
                entity.CirclePost.Add(circlePost);
                entity.SaveChanges();
            }
            return("{message:'" + circlePost.CirclePostID.ToString() + "'}");
        }
        public CirclePostReplyChild CreateReplyChild()
        {
            HttpContextBase context        = (HttpContextBase)Request.Properties["MS_HttpContext"];
            HttpRequestBase request        = context.Request;
            Authentication  authentication = new Authentication(request);

            if (!string.IsNullOrEmpty(authentication.state))
            {
                return(null);
            }
            using (Entity entity = new Entity())
            {
                UserExtend userExtend = entity.UserExtend.Find(authentication.userID);
                if (userExtend.Banned == 1 && userExtend.BannedEndTime > DateTime.Now)
                {
                    throw new Exception("禁言中...");
                }
            }
            string circlePostIDTemp = request["circlePostID"];

            if (circlePostIDTemp == null)
            {
                return(null);
            }
            if (request["text"] == null)
            {
                return(null);
            }
            int circlePostID;

            if (!int.TryParse(circlePostIDTemp, out circlePostID))
            {
                return(null);
            }
            int CirclePostReplyID = Convert.ToInt32(request["circlePostReplyID"]);

            using (Entity entity = new Entity())
            {
                CirclePost circlePost = entity.CirclePost.Find(circlePostID);
                circlePost.ReplyNum++;
                circlePost.UpdateTime = DateTime.Now;
                CirclePostReplyChild circlePostReplyChild = new CirclePostReplyChild()
                {
                    InitiativeUserID  = authentication.userID,
                    PassivityUserID   = circlePost.UserID,
                    CirclePostID      = circlePostID,
                    CirclePostReplyID = CirclePostReplyID,
                    Detail            = request["text"],
                    ImgList           = request["imglist"],
                    State             = 0,
                    CreateTime        = DateTime.Now,
                };
                circlePost.CirclePostReplyChild.Add(circlePostReplyChild);
                new ExperienceLevelBLL().CirclePostReply(authentication.userID);
                entity.SaveChanges();
                if (authentication.userID != circlePost.UserID)
                {
                    var    user = entity.User.Find(authentication.userID);
                    string text = string.Format(" {0} 回复了您的帖子 {1}", user.NickName, circlePost.Title);
                    UserLetterBLL.Create(1, circlePost.UserID, text, 1 | 16, circlePost.CirclePostID);
                }

                return(entity.CirclePostReplyChild.Include("User").Where(o => o.CirclePostReplyChildID == circlePostReplyChild.CirclePostReplyChildID).ToList().Select(o =>
                                                                                                                                                                       new CirclePostReplyChild()
                {
                    InitiativeUserID = o.InitiativeUserID,
                    Detail = o.Detail,
                    ImgList = XFXExt.imgList(o.ImgList, ConfigurationManager.AppSettings["UploadUrl"], false),
                    User = new User()
                    {
                        NickName = o.User.NickName,
                        UserID = o.User.UserID
                    }
                }
                                                                                                                                                                       ).First());
            }
        }
        public IEnumerable <CirclePostReply> CreateReply()
        {
            HttpContextBase context        = (HttpContextBase)Request.Properties["MS_HttpContext"];
            HttpRequestBase request        = context.Request;
            Authentication  authentication = new Authentication(request);

            if (!string.IsNullOrEmpty(authentication.state))
            {
                return(null);
            }
            using (Entity entity = new Entity())
            {
                UserExtend userExtend = entity.UserExtend.Find(authentication.userID);
                if (userExtend.Banned == 1 && userExtend.BannedEndTime > DateTime.Now)
                {
                    throw new Exception("禁言中...");
                }
            }
            string circlePostIDTemp = request["id"];

            if (circlePostIDTemp == null)
            {
                return(null);
            }
            if (request["text"] == null)
            {
                return(null);
            }
            int circlePostID;

            if (!int.TryParse(circlePostIDTemp, out circlePostID))
            {
                return(null);
            }
            using (Entity entity = new Entity())
            {
                CirclePost circlePost = entity.CirclePost.Find(circlePostID);
                circlePost.ReplyNum++;
                circlePost.UpdateTime = DateTime.Now;
                CirclePostReply circlePostReply = new CirclePostReply()
                {
                    UserID       = authentication.userID,
                    CirclePostID = circlePostID,
                    Detail       = request["text"],
                    ImgList      = request["imglist"],
                    State        = 0,
                    CreateTime   = DateTime.Now,
                    Floor        = circlePost.ReplyNum
                };
                circlePost.CirclePostReply.Add(circlePostReply);
                new ExperienceLevelBLL().CirclePostReply(authentication.userID);
                entity.SaveChanges();
                if (authentication.userID != circlePost.UserID)
                {
                    var    user = entity.User.Find(authentication.userID);
                    string text = string.Format(" {0} 回复了您的帖子 {1}", user.NickName, circlePost.Title);
                    UserLetterBLL.Create(1, circlePost.UserID, text, 1 | 16, circlePost.CirclePostID);
                }


                return(entity.CirclePostReply.Include("User").Include("User.UserExtend").Where(o => o.CirclePostReplyID == circlePostReply.CirclePostReplyID).ToList()
                       .Select(o => new CirclePostReply()
                {
                    CirclePostReplyID = o.CirclePostReplyID,
                    CirclePostID = o.CirclePostID,
                    Detail = o.Detail,
                    ImgList = XFXExt.imgList(o.ImgList, ConfigurationManager.AppSettings["UploadUrl"], false),
                    User = new User()
                    {
                        NickName = o.User.NickName,
                        UserExtend = new UserExtend()
                        {
                            ExperienceLevel = o.User.UserExtend.ExperienceLevel,
                            ExperienceName = o.User.UserExtend.ExperienceName
                        },
                        UserID = o.UserID,
                        Gender = o.User.Gender,
                        Location = o.User.Location,
                        HeadPortrait = ConfigurationManager.AppSettings["UploadUrl"] + o.User.HeadPortrait,
                        Type = o.User.Type.getUserType()
                    },
                    UserID = o.UserID,
                    Floor = o.Floor,
                    State = o.State,
                    CreateTime = o.CreateTime,
                }));
            }
        }