Esempio n. 1
0
        public ActionResult Edit(News news, HttpPostedFileBase newsImages, HttpPostedFileBase[] newsGalleryPost, string tags)
        {
            if (ModelState.IsValid)
            {
                news.UserId = _userService.GetUserByIdentity(User.Identity.Name).UserId;
                if (newsImages != null)
                {
                    if (news.NewsImage != "no-photo.jpg")
                    {
                        if (System.IO.File.Exists(Server.MapPath("/Content/Upload/NewsImages/Images/" + news.NewsImage)))
                        {
                            System.IO.File.Delete(Server.MapPath("/Content/Upload/NewsImages/Images/" + news.NewsImage));
                        }
                        if (System.IO.File.Exists(Server.MapPath("/Content/Upload/NewsImages/thumbnail/" + news.NewsImage)))
                        {
                            System.IO.File.Delete(Server.MapPath("/Content/Upload/NewsImages/thumbnail/" + news.NewsImage));
                        }
                    }
                    news.NewsImage = Guid.NewGuid().ToString().Replace("-", "") + Path.GetExtension(newsImages.FileName);
                    newsImages.SaveAs(Server.MapPath("/Content/Upload/NewsImages/Images/" + news.NewsImage));
                    InsertShowImage.ImageResizer img = new InsertShowImage.ImageResizer(150);
                    img.Resize(Server.MapPath("/Content/Upload/NewsImages/Images/" + news.NewsImage), Server.MapPath("/NewsImages/Thumbnail/" + news.NewsImage));
                }

                //------------Create Gallery Product --------------

                if (newsGalleryPost[0] != null && newsGalleryPost.Any())
                {
                    List <NewsGallery> newsGalleries = new List <NewsGallery>();

                    foreach (HttpPostedFileBase file in newsGalleryPost)
                    {
                        string galleryname = Guid.NewGuid().ToString().Replace("-", "") + Path.GetExtension(file.FileName);
                        file.SaveAs(Server.MapPath("/Content/Upload/NewsImages/Images/" + galleryname));
                        //---------------------resize Images  for Gallery----------------------
                        InsertShowImage.ImageResizer img = new InsertShowImage.ImageResizer(350);
                        img.Resize(Server.MapPath("/Content/Upload/NewsImages/Images/") + galleryname, Server.MapPath("/NewsImages/thumbnail/") + galleryname);

                        newsGalleries.Add(new NewsGallery()
                        {
                            NewsId    = news.NewsId,
                            ImageName = galleryname
                        });
                    }

                    _newsService.AddGallery(newsGalleries);
                }

                //-------------------Tags---------------------
                _newsService.DeleteTagsByNews(news.NewsId);
                if (!string.IsNullOrEmpty(tags))
                {
                    List <NewsTag> newsTag = new List <NewsTag>();

                    foreach (string tag in tags.Split('-'))
                    {
                        newsTag.Add(new NewsTag()
                        {
                            NewsId    = news.NewsId,
                            TagsTitle = tag.Trim()
                        });
                    }
                    _newsService.AddTags(newsTag);
                }
                news.ModifiedDate = DateTime.Now;
                _newsService.Edit(news);
                return(RedirectToAction("Index"));
            }
            ViewBag.NewsGroupId = new SelectList(_newsGroupService.NewsGroups(), "NewsGroupId", "GroupsTitle", news.NewsGroupId);
            return(View(news));
        }