public IActionResult Dashboard() { var session = lightSessionManager.GetCurrent(); var model = new LightDashboardModel(lightForumManager, lightThreadManager, lightSessionManager); var thx = lightThreadManager.GetThanks(userId: 18, afterTimestamp: 1566595766); //lightSessionManager.UpdateLastActivity(session.SessionHash, "/LightTest"); var threadModel = new LightCreateThreadModel(session.User, forumId: 58, title: "Auto Testthread LightThreadManager", text: "Automatisch erzeugter Testthread", ipAddress: "127.0.0.1"); //int tid = lightThreadManager.CreateThread(threadModel); int lastReadTs = lightThreadManager.GetContentReadTime(contentId: 38325, userId: 18); var lastReadDt = lastReadTs.ToDateTime(); var dtLocal = lastReadDt.ToLocalTime(); int unreadReplyId = lightThreadManager.GetNextUnreadReplyId(threadId: 38043, lastReadTime: 1566659655); int page = lightThreadManager.GetPageOfReply(threadId: 38043, replyId: 441387); var newestSmalltalkReplys = lightThreadManager.GetNewestReplys(threadId: 29780); var nonVisibleForumIds = lightForumManager.GetForumIdsWhereUserCanNot(1, VBForumFlags.CanViewForum); var newesttReplys = lightThreadManager.GetNewestReplys(); var newesttReplysPublic = lightThreadManager.GetNewestReplys(excludedForumIds: nonVisibleForumIds); var adminTest = lightThreadManager.GetNewestThreads(8, minReplyCount: 1, excludedForumIds: new List <int>(), orderByLastPostDate: false); var allowedIds = lightForumManager.GetForumIdsWhereUserCan(session.User.PrimaryUserGroup.Id, VBForumFlags.CanViewForum); var forbidenIds = lightForumManager.GetForumIdsWhereUserCanNot(session.User.PrimaryUserGroup.Id, VBForumFlags.CanViewForum); return(View(model)); }
public LightDashboardModel(VBLightForumManager lightForumManager, VBLightThreadManager lightThreadManager, VBLightSessionManager lightSessionManager) { var session = lightSessionManager.GetCurrent(); var forumsCanRead = lightForumManager.GetForumsWhereUserCan(session.User.PrimaryUserGroup.Id, VBForumFlags.CanViewThreads); NewestThreads = lightThreadManager.GetNewestThreads(includedForumIds: forumsCanRead.Select(f => f.Id).ToList()); NotViewableCategories = lightForumManager.GetForumsWhereUserCanNot(session.User.PrimaryUserGroup.Id, VBForumFlags.CanViewForum, onlyParentCategories: true); ViewableCategories = lightForumManager.GetForumsWhereUserCan(session.User.PrimaryUserGroup.Id, VBForumFlags.CanViewForum, onlyParentCategories: true); CategoryPermissions = lightForumManager.GetPermissions(userGroupId: 2, onlyParentCategories: true); if (session.IsLoggedIn) { UnreadActiveThreads = lightThreadManager.GetUnreadActiveThreads(session.User.Id, ignoredThreadIds: new List <int>() { 29780 }); var allUnreadActiveThreads = lightThreadManager.GetUnreadActiveThreads(session.User.Id, count: 99); int countUnreadActiveThreads = lightThreadManager.CountUnreadActiveThreads(session.User.Id, ignoredThreadIds: new List <int>() { 29780 }); int countAllUnreadActiveThreads = lightThreadManager.CountUnreadActiveThreads(session.User.Id); RecentThanks = lightThreadManager.GetThanks(session.User.Id); } }