From a7c8a87e4b3db7ad7728d8bdda37fcb38d4488fe Mon Sep 17 00:00:00 2001
From: MarcusStorvangJonassen
 <95277125+MarcusStorvangJonassen@users.noreply.github.com>
Date: Fri, 4 Apr 2025 18:39:49 +0200
Subject: [PATCH] Now all three fields in ActivityHistoryPage is in sync

---
 .../ViewModels/ActivityHistoryViewModel.cs    | 24 ++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/BeSafePlus/ViewModels/ActivityHistoryViewModel.cs b/BeSafePlus/ViewModels/ActivityHistoryViewModel.cs
index 14e2db5..cb3f767 100644
--- a/BeSafePlus/ViewModels/ActivityHistoryViewModel.cs
+++ b/BeSafePlus/ViewModels/ActivityHistoryViewModel.cs
@@ -101,13 +101,35 @@ namespace BeSafePlus.ViewModels
 
                 TotalStepsThisWeek = WeeklyStepData.Sum(data => data.Steps);
 
-                await LoadMonthlySteps();
+                var todayMonthlyEntry = MonthlyStepData.FirstOrDefault(data => DateTime.Parse(data.Date).Date == today);
+
+                if (todayMonthlyEntry == null)
+                {
+                    todayMonthlyEntry = new StepCount { Date = today.ToString("yyyy-MM-dd"), Steps = steps };
+
+                    MonthlyStepData.Add(todayMonthlyEntry);
+                }
+
+                else
+                {
+                    todayMonthlyEntry.Steps = steps;
+                }
+
+                var firstDayOfMonth = new DateTime(today.Year, today.Month, 1);
+
+                var lastDayOfMonth = firstDayOfMonth.AddMonths(1).AddDays(-1);
+
+                TotalStepsThisMonth = MonthlyStepData
+                    .Where(data => DateTime.Parse(data.Date) >= firstDayOfMonth && DateTime.Parse(data.Date) <= lastDayOfMonth)
+                    .Sum(data => data.Steps);
 
                 OnPropertyChanged(nameof(WeeklyStepData));
 
                 OnPropertyChanged(nameof(TotalStepsThisWeek));
 
                 OnPropertyChanged(nameof(AccumulatedSteps));
+
+                OnPropertyChanged(nameof(TotalStepsThisMonth));
             });
         }
         public void SetProgress(int steps)
-- 
GitLab