public async Task <VersionedServiceResult <Venue> > GetVenue(long?currentVersion, Guid?currentMemberId, Guid id) { Venue venue; if (currentMemberId != null) { venue = await _venueRepository.GetVenue(id); } else { venue = await _venueRepository.GetPublicVenue(id); } if (venue == null) { throw new OdkNotFoundException(); } if (currentMemberId != null) { await _authorizationService.AssertMemberIsChapterMember(currentMemberId.Value, venue.ChapterId); } return(await _cacheService.GetOrSetVersionedItem( () => _venueRepository.GetVenue(id), id, currentVersion)); }
public async Task <IReadOnlyCollection <Event> > GetEvents(Guid currentMemberId, Guid chapterId) { await _authorizationService.AssertMemberIsChapterMember(currentMemberId, chapterId); await _authorizationService.AssertMembershipIsActive(currentMemberId, chapterId); return(await _eventRepository.GetEvents(chapterId, DateTime.UtcNow.Date)); }
public async Task <VersionedServiceResult <IReadOnlyCollection <Member> > > GetLatestMembers(long?currentVersion, Guid currentMemberId, Guid chapterId) { await _authorizationService.AssertMemberIsChapterMember(currentMemberId, chapterId); VersionedServiceResult <IReadOnlyCollection <Member> > members = await GetMembers(currentVersion, currentMemberId, chapterId); if (members.Value == null) { return(members); } IReadOnlyCollection <Member> latestMembers = members .Value .OrderByDescending(x => x.CreatedDate) .Take(8) .ToArray(); return(new VersionedServiceResult <IReadOnlyCollection <Member> >(members.Version, latestMembers)); }
public async Task <ChapterPaymentSettings> GetChapterPaymentSettings(Guid currentMemberId, Guid chapterId) { await _authorizationService.AssertMemberIsChapterMember(currentMemberId, chapterId); return(await _chapterRepository.GetChapterPaymentSettings(chapterId)); }