protected virtual IList <AnnouncementDetails> InternalGetDetailses(BaseAnnouncementDataAccess <TAnnouncement> dataAccess, IList <int> announcementIds, bool onlyOnwer = true) { Trace.Assert(Context.PersonId.HasValue); var anns = dataAccess.GetDetailses(announcementIds, Context.PersonId.Value, Context.Role.Id, onlyOnwer); return(anns); }
protected override AnnouncementDetails InternalGetDetails(BaseAnnouncementDataAccess <SupplementalAnnouncement> dataAccess, int announcementId) { var res = base.InternalGetDetails(dataAccess, announcementId); res.AnnouncementData = PrepareClassAnnouncementTypeData(res.SupplementalAnnouncementData); return(res); }
protected AnnouncementDetails InternalGetDetails(BaseAnnouncementDataAccess <TAnnouncement> dataAccess, int announcementId, bool onlyOwner) { var ann = InternalGetDetailses(dataAccess, new List <int> { announcementId }, onlyOwner).FirstOrDefault(); if (ann == null) { throw new NoAnnouncementException(); } return(ann); }
protected override IList <AnnouncementDetails> InternalGetDetailses(BaseAnnouncementDataAccess <SupplementalAnnouncement> dataAccess, IList <int> announcementIds, bool onlyOnwer = true) { Trace.Assert(Context.PersonId.HasValue); var anns = dataAccess.GetDetailses(announcementIds, Context.PersonId.Value, Context.Role.Id, onlyOnwer); if (anns == null) { return(null); } var classIds = anns.Where(x => x.ClassRef.HasValue).Select(x => x.ClassRef.Value).Distinct().ToList(); var types = ServiceLocator.ClassAnnouncementTypeService.GetClassAnnouncementTypes(classIds); foreach (var ann in anns) { var type = types.FirstOrDefault(x => x.Id == ann.SupplementalAnnouncementData.ClassAnnouncementTypeRef); ann.SupplementalAnnouncementData.ClassAnnouncementTypeName = type?.Name; ann.SupplementalAnnouncementData.ChalkableAnnouncementType = type?.ChalkableAnnouncementTypeRef; } return(PrepareRecipientsData(anns)); }
protected virtual AnnouncementDetails InternalGetDetails(BaseAnnouncementDataAccess <TAnnouncement> dataAccess, int announcementId) { return(InternalGetDetails(dataAccess, announcementId, true)); }
protected override AnnouncementDetails InternalGetDetails(BaseAnnouncementDataAccess <LessonPlan> dataAccess, int announcementId) { var onlyOwner = !Context.Claims.HasPermission(ClaimInfo.VIEW_CLASSROOM_ADMIN); return(InternalGetDetails(dataAccess, announcementId, onlyOwner)); }