private HighliteTopic CreateTopicForTrip(string topicName, Trip trip) { var photos = _photoStore.GetPhotosByTrip(trip.Id); var photosByDate = photos.GroupBy(p => GetDayNumber(trip, p)); var highliteItems = photosByDate.Select(g => DoCreateHighliteItem( trip.Id, PickPhoto(g), g.Count(), HighliteTarget.Trip, $"Day {g.Key} {g.First().Location.City ?? @"N/A"} ")).ToList(); // on photo per day return(new HighliteTopic(topicName, highliteItems)); }
public void DumpTrip(int tripId, string prefix = " ") { var trip = GetTrip(tripId); trip.Dump(prefix); var photos = _photoStore.GetPhotosByTrip(trip.Id); photos.FirstOrDefault()?.Dump("first"); photos.LastOrDefault()?.Dump("last"); }