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);
            }
        }
Example #2
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 LightManagerController(VBLightSessionManager lightSessionManager, VBLightForumManager lightForumManager, VBLightThreadManager lightThreadManager, VBLightSettingsManager settingsManager,
                                      VBLightUserManager lightUserManager)
        {
            this.lightSessionManager = lightSessionManager;
            this.lightForumManager   = lightForumManager;
            this.lightThreadManager  = lightThreadManager;
            this.settingsManager     = settingsManager;
            this.lightUserManager    = lightUserManager;

            var commonSettings = settingsManager.CommonSettings;
        }