Esempio n. 1
0
        private static void MergeIndices(Dictionary <string, List <string> > dict)
        {
            foreach (var key in dict.Keys)
            {
                if (!Exercises.ContainsKey(key))
                {
                    Exercises.Add(key, dict[key]);
                    continue;
                }

                var existingList = Exercises[key];
                var newList      = dict[key];

                foreach (var newItem in newList)
                {
                    if (!existingList.Contains(newItem))
                    {
                        existingList.Add(newItem);

                        var keywords = new List <string>();
                        foreach (var k in dict.Keys)
                        {
                            if (dict[k].Contains(newItem))
                            {
                                keywords.Add(k);
                            }
                        }

                        Index.AddFile(newItem, keywords);
                    }
                }
            }
        }
Esempio n. 2
0
        async Task ExecuteLoadItemsCommand()
        {
            IsBusy = true;

            try
            {
                Workouts.Clear();
                var workouts = await DataStore.GetItemsAsync(true);

                foreach (var item in workouts)
                {
                    Workouts.Add(item);
                }
                var exercises = await exerciseStore.GetItemsAsync(true);

                foreach (var item in exercises)
                {
                    Exercises.Add(item);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
Esempio n. 3
0
        async Task ExecuteLoadExercisesCommand()
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;

            try
            {
                Exercises.Clear();
                var exercises = await App.Database.GetExercisesAsync();

                //var items = await App.Database.GetItemsAsync();

                foreach (var exercise in exercises)
                {
                    Debug.WriteLine("Adding: " + exercise.name + " to Exercises Collection... ID = " + exercise.eID + "ItemID= " + exercise.ItemID);
                    if (ParentItem.ID == exercise.ItemID)
                    {
                        Exercises.Add(exercise);
                        Debug.WriteLine("Exercises in this list size: " + Exercises.Count + ". PItemID:" + ParentItem.ID + " eID:" + exercise.ItemID);
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
        public async Task LoadAsync()
        {
            var lookup = await _clientLookupService.GetClientLookupAsync();

            Clients.Clear();
            foreach (var item in lookup)
            {
                Clients.Add(new NavigationItemViewModel(item.Id, item.DisplayMember, _eventAggregator, nameof(ClientDetailViewModel)));
            }

            lookup = await _workoutLookupService.GetWorkoutLookupAsync();

            Workouts.Clear();
            foreach (var item in lookup)
            {
                Workouts.Add(new NavigationItemViewModel(item.Id, item.DisplayMember, _eventAggregator, nameof(WorkoutDetailViewModel)));
            }

            lookup = await _exerciseLookupDataService.GetExerciseLookupAsync();

            Exercises.Clear();
            foreach (var item in lookup)
            {
                Exercises.Add(new NavigationItemViewModel(item.Id, item.DisplayMember, _eventAggregator, nameof(ExerciseDetailViewModel)));
            }
        }
Esempio n. 5
0
        private async void CameraButton_Clicked(object sender, EventArgs e)
        {
            await CrossMedia.Current.Initialize();

            var photo = await CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions()
            {
                Directory = "Images",
                Name      = DateTime.Now + "Image.jpg"
            });

            if (photo != null)
            {
                PhotoImage.Source = ImageSource.FromStream(() => { return(photo.GetStream()); });

                Exercises.Add(new Exercise()
                {
                    ImageSource = PhotoImage.Source
                });

                SelectedImage = PhotoImage.Source;
                AddDescriptionButton.IsVisible = true;
                RetakePhoto.IsVisible          = true;
                DeletePhoto.IsVisible          = true;
                NewPhoto.IsVisible             = true;
            }
        }
        public TimeSlotViewModel(PracticeRoutineTimeSlot timeSlot)
        {
            this.TimeSlot           = timeSlot ?? throw new ArgumentNullException("Time Slot must be provided.");
            IncrementMinutesCommand = new RelayCommand(() => IncrementMinutesPracticed(), () => true);
            DecrementMinutesCommand = new RelayCommand(() => DecrementMinutesPracticed(), () => true);

            foreach (var exercise in timeSlot)
            {
                Exercises.Add(new TimeSlotExerciseViewModel(exercise, this));
            }
        }
Esempio n. 7
0
        private async Task AddExercise()
        {
            var viewModel = new ModelExercisesViewModel(_workoutStore, _pageService);

            viewModel.ExerciseAdded += (source, exercise) =>
            {
                Exercises.Add(exercise);
            };

            await _pageService.PushAsync(new CreateWorkoutAllExercises(viewModel));
        }
        private async Task LoadExerciseLookupAsync()
        {
            Exercises.Clear();
            //Exercises.Add(new NullLookupItem { DisplayMember = " - " });
            var lookup = await _exerciseLookupDataService.GetExerciseLookupAsync();

            foreach (var lookupItem in lookup)
            {
                Exercises.Add(lookupItem);
            }
        }
Esempio n. 9
0
        public void AddExercise(string name, string description, List <string> tags = null)
        {
            var exercise = Exercises.FirstOrDefault(e => e.Name == name);

            if (exercise != null)
            {
                throw new InvalidOperationException("This exercise already exists in the workout");
            }

            Exercises.Add(new Exercise(name, description, tags));
        }
Esempio n. 10
0
 public void Update()
 {
     Exercises.Clear();
     Training.Exercises.Load();
     foreach (var trainingExercise in Training.Exercises)
     {
         var exercise = RepoExercise.Instance.FindById(trainingExercise.IdExecise);
         if (exercise != null)
         {
             Exercises.Add(new TrainingExerciseVM(trainingExercise, exercise, () => NotifyPropertyChanged("Exercises")));
         }
     }
 }
Esempio n. 11
0
        public async void ListAllExercise()
        {
            Exercises.Clear();
            if (await DatabaseExercise.ListExercise())
            {
                var ex = await DatabaseExercise.GetExercises();

                foreach (var e in ex)
                {
                    Exercises.Add(e);
                }
            }
        }
Esempio n. 12
0
        public void Add(Activity activity, DateTime start, DateTime finish)
        {
            Activity act = Activities.SingleOrDefault(a => a.Name == activity.Name);

            if (act == null)
            {
                Activities.Add(activity);
                Exercises.Add(new Exercise(start, finish, activity, user));
            }
            else
            {
                Exercises.Add(new Exercise(start, finish, act, user));
            }
            Save();
        }
Esempio n. 13
0
        public void Update()
        {
            NotifyPropertyChanged("Title");
            Exercises.Clear();
            foreach (Exercise exercise in _workout.Exercises.OrderBy(x => x.Order))
            {
                Exercises.Add(new ExerciseVM(exercise, this));
            }

            NotifyPropertyChanged("IsExercisesEmpty");
            if (UpdateAppMenu != null)
            {
                UpdateAppMenu();
            }
        }
Esempio n. 14
0
        public void ReadExercises()
        {
            // Summary
            //
            // Read exercises from Database with DBHelper class. Clear existing exercises first.

            var exercises = DatabaseHelper.GetExercises();

            Exercises.Clear();

            foreach (Exercise exercise in exercises)
            {
                Exercises.Add(exercise);
            }
        }
Esempio n. 15
0
        public void Add(Activity activity, DateTime begin, DateTime finish)
        {
            Activity act = Activities.SingleOrDefault((a) => a.Name == activity.Name);

            if (act == null)
            {
                Activities.Add(activity);
                Exercise exercise = new Exercise(begin, finish, activity, user);
                Exercises.Add(exercise);
            }
            else
            {
                Exercise exercise = new Exercise(begin, finish, act, user);
                Exercises.Add(exercise);
            }
            Save();
        }
        public async void LoadExercises()
        {
            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(@"http://localhost:50562/api/");

                var json = await client.GetStringAsync("Exercises");

                Exercise[] exercises = JsonConvert.DeserializeObject <Exercise[]>(json);

                Exercises.Clear();
                foreach (var w in exercises)
                {
                    Exercises.Add(w);
                }
            }
        }
Esempio n. 17
0
        public void Add(Activity activity,DateTime begin,DateTime end)
        {

            var ac = Activities.FirstOrDefault(a => a.Name == activity.Name);
            if(activity != null)
            {
                var ex = new Exercise(begin, end, ac, User);
                Exercises.Add(ex);
            }
            else
            {
                Activities.Add(activity);
                var ex = new Exercise(begin, end, activity,User);
                Exercises.Add(ex);
            }
            Save();
        }
Esempio n. 18
0
        public void Add(Activity activityName, DateTime begin, DateTime finish)
        {
            var act = Activities.SingleOrDefault(a => a.Name == activityName.Name);

            if (act == null)
            {
                Activities.Add(activityName);
                var exercise = new Exercise(begin, finish, activityName, user);
                Exercises.Add(exercise);
            }
            else
            {
                var exercise = new Exercise(begin, finish, activityName, user);
                Exercises.Add(exercise);
            }
            Save();
        }
Esempio n. 19
0
        public void Add(Activity activity, DateTime begin, DateTime end)
        {
            var act = Activities.SingleOrDefault(a => a.Name == activity.Name);

            if (act == null)
            {
                Activities.Add(activity);
                var exercise = new Exercise(begin, end, activity, user);
                Exercises.Add(exercise);
            }
            else
            {
                var exercise = new Exercise(begin, end, act, user);
                Exercises.Add(exercise);
            }
            Save();
        }
Esempio n. 20
0
        public void AddExercise(Activity activity, DateTime begin, DateTime end)
        {
            var act = Activities.FirstOrDefault(x => x.Name == activity.Name);

            if (act == null)
            {
                Activities.Add(activity);

                var exercise = new Exercise(begin, end, activity, user);
                Exercises.Add(exercise);
            }
            else
            {
                var exercise = new Exercise(begin, end, activity, user);
                Exercises.Add(exercise);
            }
            SaveAll();
        }
Esempio n. 21
0
        public void Add(Activity activity, DateTime start, DateTime finish)
        {
            var act = Activities.SingleOrDefault(s => s.Name == activity.Name);

            if (act == null)
            {
                Activities.Add(activity);

                var exercise = new Exercise(start, finish, activity, user);
                Exercises.Add(exercise);
            }
            else
            {
                var exercise = new Exercise(start, finish, act, user);
                Exercises.Add(exercise);
            }
            Save();
        }
Esempio n. 22
0
        public void ReadExercises(ExerciseType filter)
        {
            // Summary
            //
            // Read exercises and filter the list by a ExerciseType

            var exercises = DatabaseHelper.GetExercises();

            Exercises.Clear();

            foreach (Exercise exercise in exercises)
            {
                if (exercise.ExerciseType == filter)
                {
                    Exercises.Add(exercise);
                }
            }
        }
        /// <summary>
        /// Добавление активности.
        /// </summary>
        /// <param name="activityName"></param>
        /// <param name="begin"></param>
        /// <param name="end"></param>
        public void Add(Activity activity, DateTime begin, DateTime end)
        {
            var act = Activities.SingleOrDefault(a => a.Name == activity.Name);

            if (act == null)              // Если не нашли активность.
            {
                Activities.Add(activity); // Добавляем активность.

                var exercise = new Exercise(begin, end, activity, user);
                Exercises.Add(exercise); // Добавляем упражнение.
            }
            else // иначе нашли активность act.
            {
                var exercise = new Exercise(begin, end, act, user);
                Exercises.Add(exercise); // Добавляем упражнение.
            }
            Save();
        }
Esempio n. 24
0
        public void Add(Activity activity, DateTime begin, DateTime end)
        {
            var _activity = Activities.FirstOrDefault(e => e.Name == activity.Name);

            if (_activity == null)
            {
                Activities.Add(activity);

                var exercise = new Exercise(begin, end, activity, user);
                Exercises.Add(exercise);
                Save <Activity>(Activities);
            }
            else
            {
                var exercise = new Exercise(begin, end, _activity, user);
                Exercises.Add(exercise);
            }
            Save <Exercise>(Exercises);
        }
Esempio n. 25
0
        public bool IsNotMakingExercise(int userId)
        {
            var exercise = Exercises.Where(e => e.UserId == userId).FirstOrDefault();

            if (exercise == null)
            {
                return(true);
            }
            else
            {
                Exercises.Remove(exercise);

                exercise.LastCheckTicks = DateTime.Now.Ticks;

                Exercises.Add(exercise);

                return(false);
            }
        }
Esempio n. 26
0
        public async void ListEx(string Uid, string Cid)
        {
            Exercises.Clear();
            if (await DatabaseDetailCard.ListExercise(Uid,
                                                      Cid,
                                                      Application.Current.Properties["selectedDay"].ToString(),
                                                      Application.Current.Properties["selectedWeek"].ToString()))
            {
                var ex = await DatabaseDetailCard.GetExercises();

                foreach (var e in ex)
                {
                    Exercises.Add(e);
                }
                if (!Exercises.Any() && !Application.Current.Properties["Admin"].Equals("true"))
                {
                    await PopupNavigation.PushAsync(new PopupError());
                }
            }
        }
        public ExerciseListViewModel(IMasterDetailNavigation navigationService, IMessagingService messagingService, IExercisesRepository exercisesRepository)
        {
            _navigationService   = navigationService;
            _messagingService    = messagingService;
            _exercisesRepository = exercisesRepository;
            Title = AppResources.ExercisesTitle;

            SelectItemCommand  = new Command(async(item) => { await OnItemSelected(item); });
            AddExerciseCommand = new Command(async() =>
            {
                await _navigationService.NavigateToHierarchical <ExerciseDetailsViewModel>();
            });

            _messagingService.Subscribe <ExerciseDetailsViewModel, Exercise>(this, Messages.ItemAdded, async(sender, e) =>
            {
                var item = new ExerciseItem
                {
                    Exercise     = e,
                    TrainingDays = await _exercisesRepository.GetTrainingDays(e)
                };
                Exercises.Add(item);
                UpdateVisible();
            });
            _messagingService.Subscribe <ExerciseDetailsViewModel, Exercise>(this, Messages.ItemChanged, async(sender, e) =>
            {
                var item = Exercises.FirstOrDefault(x => x.Exercise.ExerciseId == e.ExerciseId);
                if (item == null)
                {
                    return;
                }
                item.Exercise     = null;
                item.Exercise     = e;
                item.TrainingDays = await _exercisesRepository.GetTrainingDays(e);
            });
            _messagingService.Subscribe <ExerciseDetailsViewModel>(this, Messages.ItemDeleted, sender =>
            {
                var item = Exercises.FirstOrDefault(x => x.Exercise.ExerciseId == sender.ExerciseId);
                Exercises.Remove(item);
                UpdateVisible();
            });
        }
Esempio n. 28
0
        public Activity Start(int userId)
        {
            if (IsNotMakingExercise(userId))
            {
                Activity exercise = new Activity
                {
                    UserId         = userId,
                    StartDate      = DateTime.Now,
                    LastCheckTicks = DateTime.Now.Ticks,
                    MachineId      = 1
                };

                Exercises.Add(exercise);

                return(exercise);
            }
            else
            {
                return(null);
            }
        }
Esempio n. 29
0
        private void CreateDefaultSession()
        {
            Sessions.Clear();
            Exercises.Clear();

            Session x = new Session();

            x.Name = "Default";
            x.Id   = ++Globals.Id_Gen;

            Exercise e1 = new Exercise();

            e1.Name        = "5s Speed";
            e1.Instruction = "Draw as much as you can in 5s.";
            e1.Duration    = new TimeSpan(0, 0, 5);
            e1.Difficulty  = "Medium";
            Exercises.Add(e1);

            Exercise e2 = new Exercise();

            e2.Name        = "5Min Speed";
            e2.Instruction = "Draw as much as you can.";
            e2.Duration    = new TimeSpan(0, 5, 0);
            e2.Difficulty  = "Medium";
            Exercises.Add(e2);

            Exercise e3 = new Exercise();

            e3.Name        = "5s Break";
            e3.Instruction = "5s Break";
            e3.Duration    = new TimeSpan(0, 0, 5);
            e3.Difficulty  = "";
            Exercises.Add(e3);

            x.Exercises.Add(e1.Id);
            x.Exercises.Add(e3.Id);
            //  x.Exercises.Add(e2.Id);

            Sessions.Add(x);
        }
Esempio n. 30
0
        public static void AddExercise(string path, List <string> keywords)
        {
            var alreayExisting = Exercises[string.Empty];

            if (path == null || !File.Exists(path) || alreayExisting.Contains(path))
            {
                return;
            }

            alreayExisting.Add(path);
            m_translator.Add(File.ReadAllText(path), path);

            foreach (var keyword in keywords)
            {
                if (!Exercises.ContainsKey(keyword))
                {
                    Exercises.Add(keyword, new List <string>());
                }

                var list = Exercises[keyword];
                list.Add(path);
            }
        }