コード例 #1
0
        private async Task LoadTemplatedExcersizes()
        {
            List <Excersize> excersizesList = await App.ExcersizeDatabase.GetItemsAsync();

            List <ExcersizeLogWrapper> templatedExcersizes = new List <ExcersizeLogWrapper>();

            CurrentWorkout.TemplateID = SelectedTemplate.ID;

            foreach (var item in excersizesList)
            {
                if (item.TemplateID != null)
                {
                    if (item.TemplateID.Contains(SelectedTemplate.ID))
                    {
                        templatedExcersizes.Add(new ExcersizeLogWrapper(item));
                    }
                }
            }

            if (Excersizes == null || Excersizes.Count() == 0)
            {
                Excersizes = new MvxObservableCollection <ExcersizeLogWrapper>(templatedExcersizes);
            }
            else
            {
                foreach (var item in templatedExcersizes)
                {
                    bool exists = false;
                    foreach (var ex in Excersizes)
                    {
                        if (item.ExcersizeTemplate.ID == ex.ExcersizeTemplate.ID)
                        {
                            exists = true;
                        }
                    }

                    if (!exists)
                    {
                        Excersizes.Add(item);
                    }
                }
            }
        }
コード例 #2
0
        public async Task SaveWorkout(bool quietSave = false)
        {
            CurrentWorkout.LoggedExcersizes = Excersizes.ToList();

            if (!CurrentWorkout.Completed && !quietSave)
            {
                bool decision = await Application.Current.MainPage.DisplayAlert("Is this workout Complete?", "", "Yes", "No");

                if (decision)
                {
                    CurrentWorkout.Completed     = true;
                    CurrentWorkout.CompletedTime = DateTime.Now;
                }
            }

            await App.WorkoutDatabase.SaveItemAsync(CurrentWorkout);

            if (!quietSave)
            {
                await _navigationService.Navigate <HomeViewModel>();
            }
        }
コード例 #3
0
        private async Task CreateNewExcersize()
        {
            string newExcersize    = "New Excersize";
            string chooseExcersize = "Select Excersize";

            var x = await Application.Current.MainPage.DisplayActionSheet("Add Excersize", "cancel", null, newExcersize, chooseExcersize);

            if (x == newExcersize)
            {
                Excersize excersize = await _navigationService.Navigate <NewExcersizeViewModel, bool, Excersize>(true);

                if (Excersizes == null)
                {
                    Excersizes = new MvxObservableCollection <ExcersizeLogWrapper>();
                }
                Excersizes.Add(new ExcersizeLogWrapper(excersize));
                await RaisePropertyChanged("Excersizes");
            }
            else if (x == chooseExcersize)
            {
                return;
            }
        }