public ActionResult Article(int id = 0, int commentId = -1) { if (id < 1) { return(HttpNotFound()); } var article = repo.GetItem(id); if (article == null) { return(HttpNotFound()); } var viewArticle = new ArticleForView(article); if (User.Identity.IsAuthenticated) { if (commentId >= 0) { var count = notificationRepo.ViewByContext(User.Identity.GetUserId <int>(), commentId, id); if (count > 0) { notifiCountCache.Update(User.Identity.GetUserId <int>(), -count); } viewArticle.CommentId = commentId; } else { viewArticle.CommentId = 0; } viewArticle.CurUserName = User.Identity.Name.Split('@')[0]; if (article.UserId == User.Identity.GetUserId <int>()) { viewArticle.Editable = true; } viewArticle.CurUserId = User.Identity.GetUserId <int>(); var userImage = userRepo.GetUserImage(viewArticle.CurUserId); if (userImage == "Default") { viewArticle.CurUserImage = "profile.png"; } else { viewArticle.CurUserImage = viewArticle.CurUserId + "/" + userImage; } } else { viewArticle.CurUserImage = ""; viewArticle.CurUserName = ""; viewArticle.CurUserId = 0; } ViewBag.MaxCommentLength = int.Parse(ConfigurationManager.AppSettings["MaxCommentLength"]); return(View(viewArticle)); }
public ActionResult Article(int id = 0) { if (id > 0) { var article = repo.GetItem(id); var viewArticle = new ArticleForView(article); if (article.UserId == User.Identity.GetUserId <int>()) { viewArticle.Editable = true; } return(View(viewArticle)); } return(HttpNotFound()); }
public ActionResult Article(int id = 0, int notifiId = 0) { if (id < 1) { return(HttpNotFound()); } if (notifiId > 0) { if (notificationRepo.View(User.Identity.GetUserId <int>(), notifiId)) { notifiCountCache.Update(User.Identity.GetUserId <int>(), -1); } } var article = repo.GetItem(id); Models.UrlHelper.validateURL(article); if (article == null) { return(HttpNotFound()); } var viewArticle = new ArticleForView(article); if (User.Identity.IsAuthenticated) { if (article.UserId == User.Identity.GetUserId <int>()) { viewArticle.Editable = true; } viewArticle.UserId = User.Identity.GetUserId <int>(); } else { viewArticle.UserId = 0; } ViewBag.MaxCommentLength = int.Parse(ConfigurationManager.AppSettings["MaxCommentLength"]); return(View(viewArticle)); }