/// <summary> /// Gets the last prayed details. /// </summary> /// <param name="prayerRequests">The prayer requests.</param> /// <param name="rockContext">The rock context.</param> /// <returns>A collection of last prayed details.</returns> private List <PrayerRequestLastPrayedDetail> GetLastPrayedDetails(List <PrayerRequest> prayerRequests, RockContext rockContext) { var prayerRequestService = new PrayerRequestService(rockContext); var prayerRequestIds = prayerRequests.Select(r => r.Id).ToList(); var lastPrayedInteractions = prayerRequestService.GetLastPrayedDetails(prayerRequestIds); return(lastPrayedInteractions.ToList()); }
/// <summary> /// Loads the content. /// </summary> protected void LoadContent() { var mergeFields = Rock.Lava.LavaHelper.GetCommonMergeFields(this.RockPage, this.CurrentPerson); var rockContext = new RockContext(); var prayerRequests = GetPrayerRequests(rockContext); mergeFields.Add("PrayerRequestItems", prayerRequests); mergeFields.Add(AttributeKey.PrayedButtonText, GetAttributeValue(AttributeKey.PrayedButtonText)); mergeFields.Add(AttributeKey.EnablePrayerTeamFlagging, GetAttributeValue(AttributeKey.EnablePrayerTeamFlagging).AsBoolean()); string template = GetAttributeValue(AttributeKey.DisplayLavaTemplate); // Add last prayed information if requested if (GetAttributeValue(AttributeKey.LoadLastPrayedCollection).AsBoolean()) { var prayerRequestService = new PrayerRequestService(rockContext); var lastPrayed = prayerRequestService.GetLastPrayedDetails(prayerRequests.Select(r => r.Id)); mergeFields.AddOrReplace("LastPrayed", lastPrayed.ToList()); } lContent.Text = template.ResolveMergeFields(mergeFields).ResolveClientIds(upPrayer.ClientID); }