Exemplo n.º 1
0
        public ActionResult Create(Article article, HttpPostedFileBase ArticleImage, string Tags)
        {
            if (ModelState.IsValid)
            {
                if (!HttpContext.User.Identity.IsAuthenticated)
                {
                    ViewBag.Message = "کاربر وارد کننده پیدا نشد.";
                    return(View(article));
                }


                #region Upload Image
                if (ArticleImage != null)
                {
                    // Saving Temp Image
                    var newFileName = Guid.NewGuid() + Path.GetExtension(ArticleImage.FileName);
                    ArticleImage.SaveAs(Server.MapPath("/Files/ArticleImages/Temp/" + newFileName));
                    // Resize Image
                    ImageResizer image = new ImageResizer(820, 340, true);
                    image.Resize(Server.MapPath("/Files/ArticleImages/Temp/" + newFileName),
                                 Server.MapPath("/Files/ArticleImages/Image/" + newFileName));

                    ImageResizer thumb = new ImageResizer(400, 300, true);
                    thumb.Resize(Server.MapPath("/Files/ArticleImages/Temp/" + newFileName),
                                 Server.MapPath("/Files/ArticleImages/Thumb/" + newFileName));

                    // Deleting Temp Image
                    System.IO.File.Delete(Server.MapPath("/Files/ArticleImages/Temp/" + newFileName));

                    article.Image = newFileName;
                }
                #endregion

                _repo.AddArticle(article);

                if (!string.IsNullOrEmpty(Tags))
                {
                    _repo.AddArticleTags(article.Id, Tags);
                }

                return(RedirectToAction("Index"));
            }
            ViewBag.Tags = Tags;
            ViewBag.ArticleCategoryId = new SelectList(_repo.GetArticleCategories(), "Id", "Title", article.ArticleCategoryId);
            return(View(article));
        }