Esempio n. 1
0
 public ViewThreadModel(VBLightThreadManager lightThreadManager, int threadId, int page, int userId)
 {
     Thread        = lightThreadManager.Get(threadId);
     ReplysInfo    = lightThreadManager.GetReplysInfo(Thread.Id, Thread.FirstPostId, page: page);
     Replys        = lightThreadManager.GetReplys(ReplysInfo);
     ThankedReplys = lightThreadManager.GetPostsWhereUserThanked(userId, Replys.Select(p => p.Id).ToList());
 }
        public IActionResult DeleteFirstReply(int threadId)
        {
            var thread = lightThreadManager.Get(threadId);

            if (thread == null)
            {
                return(Content($"Thread #{threadId} not found!"));
            }

            var replyInfo = lightThreadManager.GetReplysInfo(thread.Id, thread.FirstPostId);
            var replys    = lightThreadManager.GetReplys(replyInfo);
            var post      = replys.FirstOrDefault();

            if (post == null)
            {
                return(Content("No visible posts left in thread!"));
            }

            var deletingUser = lightSessionManager.GetCurrent().User;

            lightThreadManager.DeletePost(post, deletingUser, "127.0.0.1", comment: "Test deletion by ULabs.VBulletinEntity Library");
            return(Content($"Post #{post.Id} from {post.Author.UserName} deleted by mod {deletingUser.UserName}"));
        }