public ManageLessonsPage(SavedGroup group)
        {
            InitializeComponent();
            Title     += $": {group.Name}";
            this.group = group;

            EventList eventList = EventsDataStore.GetEventsLocal(group.ID);

            if (eventList == null)
            {
                return;
            }
            List <LessonSettings> lessonSettings = LessonSettingsDataStore.GetLessonSettings(group.ID);

            lessons = new ObservableCollection <LessonSettings>
                      (
                eventList.Lessons()
                .Select(lesson =>
            {
                LessonSettings res = lessonSettings.FirstOrDefault(ls => ls.LessonName == lesson)
                                     ?? new LessonSettings {
                    LessonName = lesson
                };
                res.EventTypes = eventList.EventTypes(lesson).ToList();
                return(res);
            })
                .OrderBy(lesson => lesson.LessonName)
                      );
            LessonsList.ItemsSource = lessons;
            if (lessons.Count == 0)
            {
                NoSourceLayout.IsVisible = true;
            }

            MessagingCenter.Subscribe <LessonSettingsPage, LessonSettings>(this, "OneLessonSettingsChanged", (sender, newLessonSettings) =>
            {
                for (int i = 0; i < lessons.Count; i++)
                {
                    if (lessons[i].LessonName == newLessonSettings.LessonName)
                    {
                        lessons[i] = newLessonSettings;
                        lessons[i].NotifyChanged();
                        break;
                    }
                }
            });
        }