private static List <TalkScheduleItem> GetMidweekMeetingSchedule(bool isCircuitVisit, MeetingSongsAndTimers songsAndTimers) { var result = new List <TalkScheduleItem>(); // Treasures... result.AddRange(GetTreasuresSchedule()); // Ministry... result.AddRange(GetMinistrySchedule()); // Living... result.AddRange(GetLivingSchedule(isCircuitVisit, songsAndTimers)); return(result); }
private static IEnumerable <TalkScheduleItem> GetLivingSchedule(bool isCircuitVisit, MeetingSongsAndTimers songsAndTimers) { var result = new List <TalkScheduleItem>(); TimerValueAndBellFlag timerPart1 = new TimerValueAndBellFlag { TimerMinutes = 15 }; TimerValueAndBellFlag timerPart2 = new TimerValueAndBellFlag(); if (songsAndTimers.TimersCount == 2) { timerPart1 = songsAndTimers.TimerValues[MeetingSongsAndTimers.LivingTimer1Key]; timerPart2 = songsAndTimers.TimerValues[MeetingSongsAndTimers.LivingTimer2Key]; } result.Add(new TalkScheduleItem(TalkTypesAutoMode.LivingPart1) { Name = Properties.Resources.TALK_LIVING1, StartOffsetIntoMeeting = new TimeSpan(0, 51, 40), OriginalDuration = TimeSpan.FromMinutes(timerPart1.TimerMinutes), AllowAdaptive = true, Editable = true }); result.Add(new TalkScheduleItem(TalkTypesAutoMode.LivingPart2) { Name = Properties.Resources.TALK_LIVING2, StartOffsetIntoMeeting = new TimeSpan(0, 51, 40).Add(TimeSpan.FromMinutes(timerPart1.TimerMinutes)), OriginalDuration = TimeSpan.FromMinutes(timerPart2.TimerMinutes), AllowAdaptive = true, Editable = true }); if (isCircuitVisit) { result.Add(new TalkScheduleItem(TalkTypesAutoMode.ConcludingComments) { Name = Properties.Resources.TALK_CONCLUDING_COMMENTS, StartOffsetIntoMeeting = new TimeSpan(1, 7, 0), OriginalDuration = TimeSpan.FromMinutes(3), AllowAdaptive = true, Editable = true }); result.Add(new TalkScheduleItem(TalkTypesAutoMode.CircuitServiceTalk) { Name = Properties.Resources.TALK_SERVICE, StartOffsetIntoMeeting = new TimeSpan(1, 10, 0), AllowAdaptive = true, OriginalDuration = TimeSpan.FromMinutes(30) }); } else { result.Add(new TalkScheduleItem(TalkTypesAutoMode.CongBibleStudy) { Name = Properties.Resources.TALK_CONG_STUDY, StartOffsetIntoMeeting = new TimeSpan(1, 7, 0), OriginalDuration = TimeSpan.FromMinutes(30), AllowAdaptive = true, Editable = true }); result.Add(new TalkScheduleItem(TalkTypesAutoMode.ConcludingComments) { Name = Properties.Resources.TALK_CONCLUDING_COMMENTS, StartOffsetIntoMeeting = new TimeSpan(1, 37, 0), OriginalDuration = TimeSpan.FromMinutes(3), AllowAdaptive = true, Editable = true }); } return(result); }
private static IEnumerable <TalkScheduleItem> GetMinistrySchedule(MeetingSongsAndTimers songsAndTimers) { var result = new List <TalkScheduleItem>(); TimerValueAndBellFlag timerItem1; TimerValueAndBellFlag timerItem2; TimerValueAndBellFlag timerItem3; if (IsPre2018Format()) { timerItem1 = new TimerValueAndBellFlag { TimerMinutes = 2, UseBell = true }; timerItem2 = new TimerValueAndBellFlag { TimerMinutes = 4, UseBell = true }; timerItem3 = new TimerValueAndBellFlag { TimerMinutes = 6, UseBell = true }; } else { timerItem1 = songsAndTimers.TimerValues[MeetingSongsAndTimers.MinistryTimer1Key]; timerItem2 = songsAndTimers.TimerValues[MeetingSongsAndTimers.MinistryTimer2Key]; timerItem3 = songsAndTimers.TimerValues[MeetingSongsAndTimers.MinistryTimer3Key]; } if (IsWeekOfVideoPresentations()) { result.Add(new TalkScheduleItem(TalkTypesAutoMode.PresentationVideos) { Name = Properties.Resources.TALK_PRESENTATIONS, StartOffsetIntoMeeting = new TimeSpan(0, 32, 40), OriginalDuration = TimeSpan.FromMinutes(15) }); } else { TimeSpan startOffset = new TimeSpan(0, 32, 20); result.Add(new TalkScheduleItem(TalkTypesAutoMode.MinistryItem1) { Name = GetMinistryItemTitle(1), StartOffsetIntoMeeting = startOffset, OriginalDuration = TimeSpan.FromMinutes(timerItem1.TimerMinutes), Editable = IsMinistryItemEditable(), Bell = timerItem1.UseBell }); startOffset = startOffset.Add(TimeSpan.FromMinutes(timerItem1.TimerMinutes)); if (timerItem1.UseBell) { // counsel... startOffset = startOffset.Add(TimeSpan.FromMinutes(1)); } startOffset = startOffset.Add(TimeSpan.FromSeconds(20)); result.Add(new TalkScheduleItem(TalkTypesAutoMode.MinistryItem2) { Name = GetMinistryItemTitle(2), StartOffsetIntoMeeting = startOffset, OriginalDuration = TimeSpan.FromMinutes(timerItem2.TimerMinutes), Editable = IsMinistryItemEditable(), Bell = timerItem2.UseBell }); startOffset = startOffset.Add(TimeSpan.FromMinutes(timerItem2.TimerMinutes)); if (timerItem2.UseBell) { // counsel... startOffset = startOffset.Add(TimeSpan.FromMinutes(1)); } startOffset = startOffset.Add(TimeSpan.FromSeconds(20)); result.Add(new TalkScheduleItem(TalkTypesAutoMode.MinistryItem3) { Name = GetMinistryItemTitle(3), StartOffsetIntoMeeting = startOffset, OriginalDuration = TimeSpan.FromMinutes(timerItem3.TimerMinutes), Editable = IsMinistryItemEditable(), Bell = timerItem3.UseBell }); } return(result); }