Esempio n. 1
0
        public JsonResult ForumList()
        {
            ForumListViewModel result = new ForumListViewModel();

            var forumPosts = dB.ForumPosts.Include(f => f.User)
                             .Where(f => f.ParentPostId == null && f.IsPrivate != true)
                             .Select(item => new ForumPostDTO
            {
                PostId      = item.PostId,
                Title       = item.Title,
                PostContent = item.PostContent,
                UserName    = item.User.UserName,
                DateJoined  = item.User.DateJoined,
                TimeStamp   = item.TimeStamp
            })
                             .OrderByDescending(f => f.TimeStamp);

            result.ForumPosts = forumPosts.ToList();
            var user = UserManager.FindById(User.Identity.GetUserId());

            result.LoggedInUser       = User.Identity.GetUserName();
            result.LoggedInUserStatus = user.Status;
            result.IsAdminOrMod       = User.IsInRole("Admin") || User.IsInRole("Moderator");

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
Esempio n. 2
0
        public JsonResult GetUserPosts(string userName)
        {
            ForumListViewModel result = new ForumListViewModel();

            result.ForumPosts = dB.ForumPosts.Include(f => f.User)
                                .Where(f => f.User.UserName == userName && f.IsPrivate != true)
                                .Select(item => new ForumPostDTO
            {
                PostId       = item.PostId,
                ParentPostId = item.ParentPostId,
                Title        = item.Title,
                PostContent  = item.PostContent,
                UserName     = item.User.UserName,
                DateJoined   = item.User.DateJoined,
                TimeStamp    = item.TimeStamp
            })
                                .OrderByDescending(f => f.TimeStamp)
                                .ToList();

            result.LoggedInUser = User.Identity.GetUserName();
            result.ProfileUser  = userName;

            result.ProfileUserDateJoined = dB.Users.Where(u => u.UserName == userName).Select(u => u.DateJoined).FirstOrDefault();;

            return(Json(result, JsonRequestBehavior.AllowGet));
        }
        /// <summary>
        /// ფორუმების წამოღება ბაზიდან.
        /// </summary>
        /// <returns></returns>
        public IActionResult Index()
        {
            var forumList          = _forumService.Set().ToList();
            var forumListViewModel = new ForumListViewModel();

            _mapper.Map(forumList, forumListViewModel.ForumList);
            return(View(forumListViewModel));
        }
Esempio n. 4
0
        public ForumListViewModel GetForumListViewModel()
        {
            ForumListViewModel viewModel = new ForumListViewModel()
            {
                Tags   = this.GetTopTags(),
                Topics = this.GetAllTopics()
            };

            return(viewModel);
        }
Esempio n. 5
0
        public IEnumerable <ForumListViewModel> GetForumsSubscribedUser(string id_user)
        {
            User user = null;

            try
            {
                user = userGetter.GetUser(id_user);
                List <Wallet>             Wallets = db.Wallets.Where(x => x.User.Id.ToString() == id_user).Include(x => x.Forum).ToList();
                List <ForumListViewModel> Forums  = new List <ForumListViewModel>();
                foreach (var wallet in Wallets)
                {
                    ForumListViewModel forum = db.Forums.Join(db.Users, x => x.Owner.IdentityId, us => us.Id, (x, us) => new ForumListViewModel
                    {
                        Id             = x.Id.ToString(),
                        Title          = x.Title,
                        Description    = x.Description,
                        Background     = x.Background,
                        DateBeginsVote = x.DateBeginsVote,
                        DateEndsVote   = x.DateEndsVote,
                        CreationDate   = x.CreationDate,
                        Icon           = x.Icon,
                        Views          = x.Views,
                        Owner          = new UserViewModel
                        {
                            Id            = x.Owner.Id,
                            Avatar        = x.Owner.Avatar,
                            Description   = x.Owner.Description,
                            WebsiteUrl    = x.Owner.WebsiteUrl,
                            RepositoryUrl = x.Owner.RepositoryUrl,
                            FacebookUrl   = x.Owner.FacebookUrl,
                            TwitterUrl    = x.Owner.TwitterUrl,
                            Name          = us.Name,
                            Surname       = us.Surname,
                            Email         = us.Email
                        }
                    }).Where(x => x.Id == wallet.Forum.Id.ToString()).FirstOrDefault();
                    if (forum != null)
                    {
                        Forums.Add(forum);
                    }
                }
                return(Forums);
            }
            catch (Exception)
            {
                return(null);
            }
        }
Esempio n. 6
0
        public JsonResult ReadPrivateMessage()
        {
            ForumListViewModel result = new ForumListViewModel();

            result.LoggedInUser = User.Identity.GetUserName();
            result.ForumPosts   = dB.ForumPosts
                                  .Where(f => f.IsPrivate == true && f.PmToUserName == result.LoggedInUser)
                                  .Select(item => new ForumPostDTO
            {
                PostId      = item.PostId,
                Title       = item.Title,
                PostContent = item.PostContent,
                UserName    = item.User.UserName,
                DateJoined  = item.User.DateJoined,
                TimeStamp   = item.TimeStamp,
                IsRead      = item.IsRead
            })
                                  .OrderByDescending(f => f.TimeStamp)
                                  .ToList();

            return(Json(result.ForumPosts, JsonRequestBehavior.AllowGet));
        }
Esempio n. 7
0
        public ActionResult All()
        {
            ForumListViewModel viewModel = this.service.GetForumListViewModel();

            return(this.View(viewModel));
        }
Esempio n. 8
0
        // GET: forums/category
        public async Task <IActionResult> category(string title, int?pagenumber)
        {
            if (title == null)
            {
                return(Redirect(Config.GetUrl("forums/")));
            }
            if (pagenumber == null)
            {
                pagenumber = 1;
            }

            string _term        = UtilityBLL.ReplaceHyphinWithSpace(title);
            string categoryName = UtilityBLL.UppercaseFirst(_term);


            string _title = categoryName + " Forums";
            /* List Initialization */
            var ListEntity = new ForumListViewModel()
            {
                isListStatus = false,
                QueryOptions = new ForumEntity()
                {
                    pagenumber   = (int)pagenumber,
                    categoryname = _term,
                    //categories_str = _term,
                    iscache  = true,
                    ispublic = true,
                    pagesize = 20,
                    order    = "priority desc",
                },
                DefaultUrl        = Config.GetUrl("forums/category/" + title + "/"),
                PaginationUrl     = Config.GetUrl("forums/category/" + title + "/[p]/"),
                NoRecordFoundText = SiteConfig.generalLocalizer["_no_records"].Value,
                headingTitle      = _title
            };

            ListEntity.Records = await ForumBLLC.Count(_context, ListEntity.QueryOptions);

            if (ListEntity.Records > 0)
            {
                ListEntity.Data = await ForumBLLC.LoadItems(_context, ListEntity.QueryOptions);

                foreach (var Item in ListEntity.Data)
                {
                    // attach last post id
                    foreach (var Itm in ListEntity.Data)
                    {
                        Itm.lastpost = ForumTopicBLL.Load_Last_Post(_context, (long)Itm.lastpostid);
                    }
                }
            }

            if (pagenumber > 1)
            {
                _title = _title + " - Page: " + pagenumber;
            }

            ViewBag.title = _title;

            return(View(ListEntity));
        }