public ChooseGeoLivePeriodViewModel(IStateService stateService)
        {
            _stateService = stateService;

            var selectedTimerSpan = _stateService.SelectedTimerSpan;

            _stateService.SelectedTimerSpan = null;

            var timerSpans = _stateService.TimerSpans;

            _stateService.TimerSpans = null;

            TimerSpan defaultSpan = null;

            Items = new LoopingObservableCollection <TimerSpan>();
            if (timerSpans != null)
            {
                foreach (var timerSpan in timerSpans)
                {
                    Items.Add(timerSpan);
                }
            }
            defaultSpan = Items[0];

            if (selectedTimerSpan != null)
            {
                Items.SelectedItem = Items.FirstOrDefault(x => x.Seconds == selectedTimerSpan.Seconds);
            }
            if (Items.SelectedItem == null)
            {
                Items.SelectedItem = defaultSpan;
            }
        }
        public ChooseVideoQualityViewModel(IStateService stateService)
        {
            _stateService = stateService;

            var selectedTimerSpan = _stateService.SelectedTimerSpan;

            _stateService.SelectedTimerSpan = null;

            var timerSpans = _stateService.TimerSpans;

            _stateService.TimerSpans = null;

            TimerSpan defaultSpan = null;

            Items = new LoopingObservableCollection <TimerSpan>();
            if (timerSpans != null)
            {
                foreach (var timerSpan in timerSpans)
                {
                    Items.Add(timerSpan);
                }
            }
            else
            {
                Items.Add(new TimerSpan(string.Empty, AppResources.Auto, 0));
                Items.Add(new TimerSpan(string.Empty, "240", 240));
                Items.Add(new TimerSpan(string.Empty, "360", 360));
                Items.Add(new TimerSpan(string.Empty, "480", 480));
                Items.Add(new TimerSpan(string.Empty, "720", 720));
                Items.Add(new TimerSpan(string.Empty, "1080", 1080));
            }
            defaultSpan = Items[0];

            if (selectedTimerSpan != null)
            {
                Items.SelectedItem = Items.FirstOrDefault(x => x.Seconds == selectedTimerSpan.Seconds);
            }
            if (Items.SelectedItem == null)
            {
                Items.SelectedItem = defaultSpan;
            }
        }
        public ChooseTTLViewModel(ICacheService cacheService, ICommonErrorHandler errorHandler, IStateService stateService, INavigationService navigationService, IMTProtoService mtProtoService, ITelegramEventAggregator eventAggregator) :
            base(cacheService, errorHandler, stateService, navigationService, mtProtoService, eventAggregator)
        {
            Items = new LoopingObservableCollection <TimerSpan>
            {
                new TimerSpan(AppResources.OffMasculine, string.Empty, 0),
                new TimerSpan(AppResources.SecondNominativeSingular, "1", 1),
                new TimerSpan(AppResources.SecondNominativePlural, "2", 2),
                new TimerSpan(AppResources.SecondNominativePlural, "3", 3),
                new TimerSpan(AppResources.SecondNominativePlural, "4", 4),
                new TimerSpan(AppResources.SecondGenitivePlural, "5", 5),
                new TimerSpan(AppResources.SecondGenitivePlural, "6", 6),
                new TimerSpan(AppResources.SecondGenitivePlural, "7", 7),
                new TimerSpan(AppResources.SecondGenitivePlural, "8", 8),
                new TimerSpan(AppResources.SecondGenitivePlural, "9", 9),
                new TimerSpan(AppResources.SecondGenitivePlural, "10", 10),
                new TimerSpan(AppResources.SecondGenitivePlural, "11", 11),
                new TimerSpan(AppResources.SecondGenitivePlural, "12", 12),
                new TimerSpan(AppResources.SecondGenitivePlural, "13", 13),
                new TimerSpan(AppResources.SecondGenitivePlural, "14", 14),
                new TimerSpan(AppResources.SecondGenitivePlural, "15", 15),
                new TimerSpan(AppResources.SecondGenitivePlural, "30", 30),
                new TimerSpan(AppResources.MinuteNominativeSingular, "1", 60),
                new TimerSpan(AppResources.HourNominativeSingular, "1", (int)TimeSpan.FromHours(1.0).TotalSeconds),
                new TimerSpan(AppResources.DayNominativeSingular, "1", (int)TimeSpan.FromDays(1.0).TotalSeconds),
                new TimerSpan(AppResources.WeekNominativeSingular, "1", (int)TimeSpan.FromDays(7.0).TotalSeconds),
            };

            if (StateService.SelectedTimerSpan == null)
            {
                Items.SelectedItem = Items[0];
            }
            else
            {
                var selectedItem = Items.FirstOrDefault(x => x.Seconds == StateService.SelectedTimerSpan.Seconds);
                Items.SelectedItem = selectedItem ?? Items[0];
            }
            StateService.SelectedTimerSpan = null;
        }
        public ChooseNotificationSpanViewModel(ICacheService cacheService, ICommonErrorHandler errorHandler, IStateService stateService, INavigationService navigationService, IMTProtoService mtProtoService, ITelegramEventAggregator eventAggregator) :
            base(cacheService, errorHandler, stateService, navigationService, mtProtoService, eventAggregator)
        {
            Items = new LoopingObservableCollection <TimerSpan>
            {
                new TimerSpan(AppResources.Enabled, string.Empty, 0),
                new TimerSpan(AppResources.HourNominativeSingular, "1", (int)TimeSpan.FromHours(1.0).TotalSeconds),
                new TimerSpan(AppResources.HourGenitivePlural, "8", (int)TimeSpan.FromHours(8.0).TotalSeconds),
                new TimerSpan(AppResources.DayNominativePlural, "2", (int)TimeSpan.FromDays(2.0).TotalSeconds),
                new TimerSpan(AppResources.Disabled, string.Empty, int.MaxValue),
            };

            if (StateService.SelectedTimerSpan == null)
            {
                Items.SelectedItem = Items[0];
            }
            else
            {
                var selectedItem = Items.FirstOrDefault(x => x.Seconds == StateService.SelectedTimerSpan.Seconds);
                Items.SelectedItem = selectedItem ?? Items[0];
            }
            StateService.SelectedTimerSpan = null;
        }
Exemple #5
0
        public ChooseTTLViewModel(INavigationService navigationService, IStateService stateService)
        {
            _navigationService = navigationService;
            _stateService      = stateService;

            var isEncryptedTimer = _stateService.IsEncryptedTimer;

            _stateService.IsEncryptedTimer = false;

            var selectedTimerSpan = _stateService.SelectedTimerSpan;

            _stateService.SelectedTimerSpan = null;

            Items = new LoopingObservableCollection <TimerSpan>();
            TimerSpan defaultSpan = null;

            if (isEncryptedTimer)
            {
                Items.Add(new TimerSpan(AppResources.OffMasculine, string.Empty, 0));
                for (var i = 1; i <= 15; i++)
                {
                    Items.Add(new TimerSpan(
                                  Language.Declension2(
                                      i,
                                      AppResources.SecondNominativeSingular,
                                      AppResources.SecondNominativePlural,
                                      AppResources.SecondGenitiveSingular,
                                      AppResources.SecondGenitivePlural),
                                  i.ToString(), i));
                }
                Items.Add(new TimerSpan(AppResources.SecondGenitivePlural, "30", 30));
                Items.Add(new TimerSpan(AppResources.MinuteNominativeSingular, "1", 60));
                Items.Add(new TimerSpan(AppResources.HourNominativeSingular, "1", (int)TimeSpan.FromHours(1.0).TotalSeconds));
                Items.Add(new TimerSpan(AppResources.DayNominativeSingular, "1", (int)TimeSpan.FromDays(1.0).TotalSeconds));
                Items.Add(new TimerSpan(AppResources.WeekNominativeSingular, "1", (int)TimeSpan.FromDays(7.0).TotalSeconds));

                defaultSpan = Items[0];
            }
            else
            {
                Items.Add(new TimerSpan(AppResources.OffMasculine, string.Empty, 0));
                for (var i = 1; i <= 30; i++)
                {
                    Items.Add(new TimerSpan(
                                  Language.Declension2(
                                      i,
                                      AppResources.SecondNominativeSingular,
                                      AppResources.SecondNominativePlural,
                                      AppResources.SecondGenitiveSingular,
                                      AppResources.SecondGenitivePlural),
                                  i.ToString(), i));
                }
                Items.Add(new TimerSpan(AppResources.SecondGenitivePlural, "35", 35));
                Items.Add(new TimerSpan(AppResources.SecondGenitivePlural, "40", 40));
                Items.Add(new TimerSpan(AppResources.SecondGenitivePlural, "45", 45));
                Items.Add(new TimerSpan(AppResources.SecondGenitivePlural, "50", 50));
                Items.Add(new TimerSpan(AppResources.SecondGenitivePlural, "55", 55));
                Items.Add(new TimerSpan(AppResources.MinuteNominativeSingular, "1", 60));

                defaultSpan = Items[10];
            }

            if (selectedTimerSpan != null)
            {
                Items.SelectedItem = Items.FirstOrDefault(x => x.Seconds == selectedTimerSpan.Seconds);
            }
            if (Items.SelectedItem == null)
            {
                Items.SelectedItem = defaultSpan;
            }
        }