Ejemplo n.º 1
0
        public void updateSubPost(SubPostEditViewModel SubPost, string lang)
        {
            SubPost detail = getSubPostById(SubPost.SubPostId);

            if (SubPost.Image != null)
            {
                if (detail.ImageName != null)
                {
                    string imagePath = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/posts/SubPostsImage", detail.ImageName);
                    if (imagePath != null)
                    {
                        if (File.Exists(imagePath))
                        {
                            File.Delete(imagePath);
                        }
                    }
                }
                else
                {
                    detail.ImageName = Guid.NewGuid() + Path.GetExtension(SubPost.Image.FileName);
                    string imagePath = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/posts/SubPostsImage", detail.ImageName);
                    using (var stream = new FileStream(imagePath, FileMode.Create))
                    {
                        SubPost.Image.CopyTo(stream);
                    }
                }
            }
            detail.Title         = SubPost.Title;
            detail.TextResumen   = SubPost.Text;
            detail.LanguageTitle = lang;
            _db.subPosts.Update(detail);
            _db.SaveChanges();
        }
Ejemplo n.º 2
0
        public ActionResult Reply(int id, SubPost sub)
        {
            if (ModelState.IsValid)
            {
                sub.PostID       = id;
                sub.UserID       = Convert.ToInt32(Session["LoginID"].ToString());
                sub.RegisterDate = DateTime.Now;

                List <SubPostFile> subPostFiles = new List <SubPostFile>();
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var file = Request.Files[i];
                    if (file != null && file.ContentLength > 0)
                    {
                        var         fileName    = Path.GetFileName(file.FileName);
                        SubPostFile subPostFile = new SubPostFile()
                        {
                            FileName  = fileName,
                            Extension = Path.GetExtension(fileName),
                            SubPostID = sub.ID
                        };
                        subPostFiles.Add(subPostFile);

                        var path = Path.Combine(Server.MapPath("~/UploadFiles/") + subPostFile.FileName);
                        file.SaveAs(path);
                    }
                }
                sub.SubPostFile = subPostFiles;
                db.SubPosts.Add(sub);
                db.SaveChanges();
                return(RedirectToAction("Details", "Board", new { id = id }));
            }
            return(View(sub));
        }
Ejemplo n.º 3
0
        public HttpResponseMessage PostAddStatus(UserPost post)
        {
            var login = (CustomMembershipUser)Membership.GetUser(User.Identity.Name);

            MongoHelper <UserPost> mongo = new MongoHelper <UserPost>();

            post.UserId    = login.UserId;
            post.CreatedAt = DateTime.Now;
            post.LikeLists = new List <ObjectId>();
            post.Comments  = new List <Comment>();
            mongo.Collection.Insert(post);

            MongoHelper <User> user    = new MongoHelper <User>();
            SubPost            subPost = new SubPost();

            subPost.PostId    = post._id;
            subPost.UserId    = login.UserId;
            subPost.isViewed  = true;
            subPost.isMine    = true;
            subPost.CreatedAt = post.CreatedAt;

            IMongoQuery  query  = Query.EQ("_id", login.UserId);
            IMongoUpdate update = MongoDB.Driver.Builders.Update.PushWrapped("PostLists", subPost).Inc("TotalPosts", 1);

            user.Collection.Update(query, update);


            var us = user.Collection.Find(Query.EQ("_id", login.UserId)).SingleOrDefault().FriendsLists;

            if (us.Count > 0)
            {
                foreach (var ex in us)
                {
                    IMongoQuery  query1  = Query.EQ("_id", ex);
                    IMongoUpdate update1 = MongoDB.Driver.Builders.Update.PushWrapped("PostLists", subPost).Inc("TotalPosts", 1);
                    user.Collection.Update(query1, update1);
                }
            }

            var uu = user.Collection.Find(Query.EQ("_id", login.UserId)).SingleOrDefault();

            return(Request.CreateResponse(HttpStatusCode.OK, new
            {
                postUser = uu.Name,
                PostId = post._id.ToString(),
                UserId = uu._id.ToString(),
                totalLikes = 0,
                userPic = uu.ProfilePic == null ? "UserAvatar.png" : uu.ProfilePic,
                text = post.Text,
                createdAt = post.CreatedAt.ToString("dd MMM yyyy HH:mm"),
                CommentCount = 0,
                isLike = false
            }));
        }
Ejemplo n.º 4
0
        public void AddSubPost(int PostId, string lang, SubPostEditViewModel SubPost, List <IFormFile> images)
        {
            SubPost subPost = new SubPost()
            {
                PostId        = PostId,
                Title         = SubPost.Title,
                TextResumen   = SubPost.Text,
                LanguageTitle = lang
            };

            if (SubPost.Image != null)
            {
                subPost.ImageName = Guid.NewGuid() + Path.GetExtension(SubPost.Image.FileName);
                string imagePath = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/posts/SubPostsImage", subPost.ImageName);

                using (var stream = new FileStream(imagePath, FileMode.Create))
                {
                    SubPost.Image.CopyTo(stream);
                }
            }


            if (images != null)
            {
                foreach (var image in images)
                {
                    string imageName = Guid.NewGuid() + Path.GetExtension(image.FileName);
                    string imagePath = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/posts/postImageGallery", imageName);

                    using (var stream = new FileStream(imagePath, FileMode.Create))
                    {
                        image.CopyTo(stream);
                    }

                    if (subPost.Images == null)
                    {
                        subPost.Images = imageName;
                    }
                    else
                    {
                        subPost.Images = subPost.Images + "," + imageName;
                    }
                }
            }

            _db.Add(subPost);
            _db.SaveChanges();
        }