Exemple #1
0
        public ActionResult Index(Guid id)
        {
            BookClub           club      = db.BookClubs.Find(id);
            ClubIndexViewModel viewModel = GetClubIndexViewModel(club);

            return(View(viewModel));
        }
Exemple #2
0
 private void AddDiscussionsToClubIndexViewModel(ClubIndexViewModel viewModel)
 {
     viewModel.Discussions = db.Discussions.Where(d => d.ClubId == viewModel.Club.Id).OrderByDescending(d => d.StartTime).ToList();
     foreach (Discussion discussion in viewModel.Discussions)
     {
         BookDiscussions bookDiscussions = db.BookDiscussions.Include("Book").FirstOrDefault(bd => bd.DiscussionId == discussion.Id);
         discussion.Book = bookDiscussions.Book;
     }
 }
Exemple #3
0
        public ActionResult MemberList(Guid id)
        {
            ClubIndexViewModel viewModel = new ClubIndexViewModel {
                Club = db.BookClubs.Find(id)
            };

            AddMembersToClubIndexViewModel(viewModel);
            return(View(viewModel));
        }
Exemple #4
0
        private void AddBooksToClubIndexViewModel(ClubIndexViewModel viewModel)
        {
            List <Book> books = GetBooksForClubIndexViewModel(viewModel.Members);

            viewModel.Books = books.GroupBy(b => b.GoogleVolumeId, (googleId, Books) => new {
                Count = Books.Count(),
                Key   = googleId,
                Value = Books.FirstOrDefault()
            }).OrderByDescending(g => g.Count).Select(g => g.Value).ToList();
        }
Exemple #5
0
        //Private Methods
        private ClubIndexViewModel GetClubIndexViewModel(BookClub club)
        {
            ClubIndexViewModel viewModel = new ClubIndexViewModel {
                Club = club, Discussions = new List <Discussion>(), Members = new List <Member>()
            };

            AddMembersToClubIndexViewModel(viewModel);
            AddDiscussionsToClubIndexViewModel(viewModel);
            AddBooksToClubIndexViewModel(viewModel);
            return(viewModel);
        }
Exemple #6
0
        // GET: Clubs
        public async Task <IActionResult> Index()
        {
            var user = await GetCurrentUserAsync();

            var clubs = await _context.Club.ToListAsync();

            ClubIndexViewModel ClubsVM = new ClubIndexViewModel
            {
                Clubs         = clubs,
                CurrentUserId = user.Id
            };

            return(View(ClubsVM));
        }
Exemple #7
0
        private void AddMembersToClubIndexViewModel(ClubIndexViewModel viewModel)
        {
            var userId = User.Identity.GetUserId();

            viewModel.Members = db.ClubMembers.Include("Member").Where(cm => cm.ClubId == viewModel.Club.Id).Select(cm => cm.Member).ToList();
            Member user    = db.Members.FirstOrDefault(m => m.ApplicationUserId == userId);
            Member manager = db.ClubMembers.Include("Member").FirstOrDefault(cm => cm.ClubId == viewModel.Club.Id && cm.IsManager).Member;

            viewModel.Members.FirstOrDefault(m => m.Id == manager.Id).IsManager = true;
            if (user.Id == manager.Id)
            {
                viewModel.IsManager = true;
            }
        }
Exemple #8
0
        public IActionResult Index()
        {
            var clubs = _clubService.GetAll()
                        .Select(club => new ClubViewModel {
                Id          = club.Id,
                Name        = club.Name,
                ChineseName = club.ChineseName,
                Homepage    = club.Homepage,
                ImageUrl    = club.ImageUrl
            });

            var model = new ClubIndexViewModel {
                ClubList = clubs
            };

            return(View(model));
        }
Exemple #9
0
 public void Include(ClubIndexViewModel vm)
 {
     var vm1 = new ClubIndexViewModel(null);
 }