/// <summary> /// 删除投稿 /// </summary> /// <param name="ArticleID"></param> /// <returns></returns> public ActionResult DeletePost(string ArticleID) { Article article = Article.GetArticleBySn(ArticleID); if (article == null) { return(Redirect("/Home/Index")); } if (Session[ConstHelper.Session_USERID] == null) { return(Redirect("/Home/Index")); } if (Session[ConstHelper.Session_USERID].ToString() != article.OwnerId) { return(Redirect("/Home/Index")); } //已经发布的首页文章不允许删除 if (article.PublishStatus == ApproveStatus.Accept && article.IsFirstPage) { return(Redirect("/Home/Index")); } Article.DropArticle(article); //收录到专题中的文章也要处理掉 TopicArticle.RemoveArticle(article.Sn); return(Redirect("/PostEdit/PostList")); }
/// <summary> /// 拒绝文章被收录到某主题(操作人是专题的拥有者) /// </summary> /// <param name="TopicOwnerId"></param> /// <param name="ArticleId"></param> /// <returns></returns> public ActionResult RefuseActicle(string TopicId, string ArticleId, string MessageId) { if (Session[ConstHelper.Session_USERID] == null) { return(Redirect("/")); } string accountid = Session[ConstHelper.Session_USERID].ToString(); var article = Article.GetArticleBySn(ArticleId); var topic = Topic.GetTopicBySn(TopicId); if (article == null || topic == null) { SiteMessage.CloseMessage(MessageId, accountid, "没有发现文章或者主题"); } else { if (accountid != topic.OwnerId) { return(Redirect("/")); } TopicArticle.ChangeTopicStatus(topic.OwnerId, ArticleId, false); SiteMessage.CreateNotify(article.OwnerId, "您的收录请求被拒绝,[" + article.Title + "]没有被收录到文集中", accountid); SiteMessage.CloseMessage(MessageId, accountid, "拒绝"); } return(Redirect("/Author/SiteMessageList")); }
/// <summary> /// 接受文章被收录到某主题(操作人是文章的拥有者) /// </summary> /// <param name="TopicOwnerId"></param> /// <param name="ArticleId"></param> /// <returns></returns> public ActionResult AcceptTopic(string TopicOwnerId, string ArticleId, string MessageId) { if (Session[ConstHelper.Session_USERID] == null) { return(Redirect("/")); } string accountid = Session[ConstHelper.Session_USERID].ToString(); var article = Article.GetArticleBySn(ArticleId); if (article == null) { SiteMessage.CloseMessage(MessageId, accountid, "没有发现文章"); } else { if (accountid != article.OwnerId) { return(Redirect("/")); } TopicArticle.ChangeTopicStatus(TopicOwnerId, ArticleId, true); SiteMessage.CreateNotify(TopicOwnerId, "您的收录请求被接受,[" + article.Title + "]被收录到您的文集中", accountid); SiteMessage.CloseMessage(MessageId, accountid, "接受"); } return(Redirect("/Author/SiteMessageList")); }
/// <summary> /// 投稿文章到专题 /// </summary> /// <param name="TopicId"></param> /// <param name="ArticleId"></param> /// <returns></returns> public ActionResult PostArticle(string TopicId, string ArticleId) { if (Session[ConstHelper.Session_USERID] == null) { return(Redirect("/Home/Index")); } string accountid = Session[ConstHelper.Session_USERID].ToString(); var article = Article.GetArticleBySn(ArticleId); if (article.OwnerId != accountid) { return(Redirect("/")); } var topic = Topic.GetTopicBySn(TopicId); if (topic == null || (!topic.IsPostable)) { return(Redirect("/")); } if (topic.IsNeedApproval) { TopicArticle.InsertTopicArticle(new TopicArticle() { ArticleID = ArticleId, TopicID = TopicId, PublishStatus = ApproveStatus.Pending }); var parm = "TopicId=" + topic.Sn + "&ArticleId=" + ArticleId; var articleurl = "<a href = '/Article/Index?ArticleId=" + article.Sn + "'>" + article.Title + "</a>"; var topicurl = "<a href = '/Author/TopicPage?accountid=" + topic.OwnerId + "'>" + topic.Title + "</a>"; SiteMessage.CreateYesNo(topic.OwnerId, articleurl + "请求投稿到专题" + topicurl, "/Author/AcceptActicle?" + parm, "/Author/RefuseActicle?" + parm, accountid); } else { TopicArticle.InsertTopicArticle(new TopicArticle() { ArticleID = ArticleId, TopicID = TopicId, PublishStatus = ApproveStatus.Accept }); } return(Redirect("/Author/PostToTopic?TopicId=" + TopicId)); }
/// <summary> /// 从专题中移除文章 /// </summary> /// <param name="articleId"></param> /// <returns></returns> public ActionResult RemoveFromTopic(string articleId) { if (Session[ConstHelper.Session_USERID] == null) { return(Redirect("/")); } Topic topic = null; string accountid = Session[ConstHelper.Session_USERID].ToString(); if (Topic.IsExistTopic(accountid)) { topic = Topic.GetTopicByAccountId(accountid); } else { return(Redirect("/")); } TopicArticle.Remove(topic.Sn, articleId); return(Redirect("/Author/ManagerTopic?PageNo=1")); }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/json"; string json = string.Empty; if (context.Session[ConstHelper.Session_USERID] == null) { var SessionTimeout = new { success = ConstHelper.Fail, message = "系统超时,请重新登陆", }; json = JsonConvert.SerializeObject(SessionTimeout); context.Response.Write(json); return; } string strArticleID = context.Request.QueryString["ArticleID"]; string strOwnerID = context.Session[ConstHelper.Session_USERID].ToString(); bool isOK = TopicArticle.PutToTopic(strOwnerID, strArticleID); if (isOK) { var article = Article.GetArticleBySn(strArticleID); var Success = new { success = ConstHelper.Success, message = article.IsNeedTopicApproval ? "发送收录请求成功" : "收录成功", }; json = JsonConvert.SerializeObject(Success); } else { var Success = new { success = ConstHelper.Fail, message = "收录失败", }; json = JsonConvert.SerializeObject(Success); } context.Response.Write(json); }
/// <summary> /// 接受文章首页申请 /// </summary> /// <param name="ArticleId"></param> /// <returns></returns> public ActionResult Accept(string ArticleId) { if (string.IsNullOrEmpty(ArticleId)) { return(Redirect("/")); } if (Session[ConstHelper.Session_USERID] == null) { return(Redirect("/")); } if ((UserType)Session[ConstHelper.Session_PRIVILEGE] != UserType.Admin && (UserType)Session[ConstHelper.Session_PRIVILEGE] != UserType.Editor) { return(Redirect("/")); } if (Article.GetArticleBySn(ArticleId) == null) { return(Redirect("/")); } Article.Accept(ArticleId); Article article = Article.GetArticleBySn(ArticleId); var articleurl = "<a href = '/Article/Index?ArticleId=" + article.Sn + "'>" + article.Title + "</a>"; SiteMessage.CreateNotify(article.OwnerId, "您的文章[" + articleurl + "]通过审核"); if (article.IsPutToMyTopic) { //发布后则加入到自己专题 var topic = Topic.GetTopicByAccountId(article.OwnerId); if (topic != null) { TopicArticle.InsertTopicArticle(new TopicArticle() { ArticleID = article.Sn, TopicID = topic.Sn, PublishStatus = ApproveStatus.NotNeed }); } } return(Redirect("/Admin")); }
public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/json"; string json = string.Empty; if (context.Session[ConstHelper.Session_USERID] == null) { var SessionTimeout = new { success = ConstHelper.Fail, message = "系统超时,请重新登陆", }; json = JsonConvert.SerializeObject(SessionTimeout); context.Response.Write(json); return; } string strArticleID = context.Request.Unvalidated.Form["ArticleID"]; string strMarkDown = context.Request.Unvalidated.Form["Content"]; string strHTML = context.Request.Unvalidated.Form["HTML"]; Article article = Article.GetArticleBySn(strArticleID); if (!article.OwnerId.Equals(context.Session[ConstHelper.Session_USERID].ToString())) { var NotTheOwner = new { success = ConstHelper.Fail, message = "你所编辑的文章的所有者和您的登陆用户不匹配", }; json = JsonConvert.SerializeObject(NotTheOwner); context.Response.Write(json); return; } ArticleContent.SaveMarkDownVersion(strArticleID, strMarkDown, article.Sn, RevisionType.Draft); ArticleContent.SaveHTMLVersion(strArticleID, strHTML, article.Sn); if (article.IsFirstPage) { //首页发布处理 Article.Publish(strArticleID, strMarkDown, strHTML); } else { //非首页处理 ArticleContent.SaveMarkDownVersion(strArticleID, strMarkDown, article.Sn, RevisionType.Current); } if (!article.IsPrivate && !article.IsFirstPage) { //公开非首页,变成发布状态 article.PublishStatus = ApproveStatus.Accept; article.PublishDateTime = System.DateTime.Now; if (article.IsPutToMyTopic) { //发布后则加入到自己专题 var topic = Topic.GetTopicByAccountId(context.Session[ConstHelper.Session_USERID].ToString()); if (topic != null) { TopicArticle.InsertTopicArticle(new TopicArticle() { ArticleID = article.Sn, TopicID = topic.Sn, PublishStatus = ApproveStatus.NotNeed }); } } Article.UpdateArticle(article); ArticleListManager.RemoveArticleItemBody(article.Sn); } var Success = new { success = ConstHelper.Success, message = "保存成功", }; json = JsonConvert.SerializeObject(Success); context.Response.Write(json); }