public string GetGroupDisplayText(RecordingGroup recordingGroup, string recordingsText, string unknownText) { switch (recordingGroup.RecordingGroupMode) { case RecordingGroupMode.GroupByProgramTitle: return String.Format("{0} - {2:g} ({1} {3})", recordingGroup.ProgramTitle, recordingGroup.RecordingsCount, recordingGroup.LatestProgramStartTime, recordingsText); case RecordingGroupMode.GroupByChannel: return String.Format("{0} - {2:g} ({1} {3})", recordingGroup.ChannelDisplayName, recordingGroup.RecordingsCount, recordingGroup.LatestProgramStartTime, recordingsText); case RecordingGroupMode.GroupBySchedule: return String.Format("{0} - {2:g} ({1} {3})", recordingGroup.ScheduleName, recordingGroup.RecordingsCount, recordingGroup.LatestProgramStartTime, recordingsText); case RecordingGroupMode.GroupByRecordingDay: return String.Format("{0:D} ({1} {2})", recordingGroup.LatestProgramStartTime, recordingGroup.RecordingsCount, recordingsText); case RecordingGroupMode.GroupByCategory: return String.Format("{0} - {2:g} ({1} {3})", String.IsNullOrEmpty(recordingGroup.Category) ? unknownText : recordingGroup.Category, recordingGroup.RecordingsCount, recordingGroup.LatestProgramStartTime, recordingsText); } return "?"; }
private static List<RecordingSummary> GetRecordingsInGroup(RecordingGroup group, BackgroundWorkerArgs args) { List<RecordingSummary> recordings = null; if (group.SingleRecording != null) { recordings = new List<RecordingSummary>() { group.SingleRecording }; } else switch (group.RecordingGroupMode) { case RecordingGroupMode.GroupBySchedule: recordings = Proxies.ControlService.GetRecordingsForSchedule(group.ScheduleId, args.IncludeNonExisting).Result; break; case RecordingGroupMode.GroupByChannel: recordings = Proxies.ControlService.GetRecordingsOnChannel(group.ChannelId, args.IncludeNonExisting).Result; break; case RecordingGroupMode.GroupByProgramTitle: recordings = Proxies.ControlService.GetRecordingsForProgramTitle(args.ChannelType, group.ProgramTitle, args.IncludeNonExisting).Result; break; case RecordingGroupMode.GroupByCategory: recordings = Proxies.ControlService.GetRecordingsForCategory(args.ChannelType, group.Category, args.IncludeNonExisting).Result; break; } return recordings; }