Пример #1
0
        private async void Clear_OnClicked(object sender, EventArgs e)
        {
            UserSettings.UserName       = "";
            UserSettings.StartDate      = DateTime.Now;
            UserSettings.LastUpdateDate = DateTime.MinValue;

            foreach (var theme in ThemesManager.EnabledThemes)
            {
                ThemesManager.DisableTheme(theme);
            }

            await StorageService.Instance.ClearMessagesAsync();
        }
        public SettingsThemeSelectionViewModel(Command <SettingsItemViewModel> clicked) : base(clicked)
        {
            ItemTappedCommand = new Command <ThemeViewModel>(async(vm) =>
            {
                if (vm.IsSelected)
                {
                    if (await Shell.Current.DisplayAlert("", $"Ønsker du å skru av meldinger fra \n'{vm.Title}'", "ja",
                                                         "nei"))
                    {
                        vm.IsSelected = false;
                        ThemesManager.DisableTheme(vm.Model);
                        await Task.Run(async() => { await ScheduleManager.UnScheduleThemeAsync(vm.Model); });

                        // track enabled or disabled
                        Analytics.TrackEvent(TrackingEvents.Adjustment,
                                             new TrackingEvents.AdjustmentArgs(vm.Model, false));
                    }
                }
                else if (SelectedCount < Config.MaximumThemes)
                {
                    vm.IsSelected = true;
                    ThemesManager.EnableTheme(vm.Model);
                    await Task.Run(async() => { await ScheduleManager.ScheduleThemeAsync(vm.Model); });
                    await MainViewModel.LoadMessagesAsync();

                    // track enabled or disabled
                    Analytics.TrackEvent(TrackingEvents.Adjustment,
                                         new TrackingEvents.AdjustmentArgs(vm.Model, true));
                }
                else
                {
                    await Shell.Current.DisplayAlert("", "Sett deg maks to mål. Da gaper du ikke over for mye.", "ok");
                }
            });

            UpdateSelectedThemes();
        }