Roland Geider
a7ee4ff5b3
Merge pull request #855 from wger-project/nutrition-plan-stats
...
Nutrition plan stats
2025-09-22 16:19:04 +02:00
Roland Geider
4c34f91028
Merge pull request #905 from wger-project/feature/better-logging
...
Save the application logs locally
2025-09-16 15:21:51 +02:00
Roland Geider
798406eaa9
Make routineId nullable in session and related files
...
Sessions can be added ad-hoc, without needing to be part of any specific
routine.
2025-09-16 14:47:47 +02:00
Roland Geider
9b3957fe35
Use "clock" for mocking dates and datetimes
...
This should make the tests a bit more robust, specially in CI since these
tended to fail depending on how long and when the tests run. Also, rework
a bit the way the start and end dates in sessions were being handled and
initialised
2025-09-16 14:45:16 +02:00
Roland Geider
dbd3fa915d
Refactor PlanForm
...
* Date values are now localized
* Remove text controllers since we were setting the values in the plan
object directly as well as setting them in the controllers anyway. Note
that this is still not an ideal solution since if we change something
in the form and close it, the changes are still reflected in the UI, just
not preserved to the server.
* Move basic date sanity cheks to the model
2025-09-12 16:24:56 +02:00
Roland Geider
d9b4d66c0f
Add tests for interpolation logic
2025-09-12 15:03:33 +02:00
Roland Geider
0fd2af030d
Merge branch 'refs/heads/master' into nutrition-plan-stats
2025-09-12 14:05:38 +02:00
Roland Geider
1c969ebc10
Add logging to IngredientTypeahead
2025-09-12 14:03:18 +02:00
Roland Geider
823b5015eb
WorkoutLogs can be a StatelessWidget
2025-09-12 14:03:18 +02:00
Roland Geider
68e8721cdb
Refresh routine data on load when starting the gym mode
...
This prevents errors when the user created or deleted a workout session for
the current routine over the web interface
See #876
2025-09-07 15:32:19 +02:00
Roland Geider
d56c3b2e45
Handle corner cases with null values
...
While this should not happen, it seems there are situations when some people
do run into the "Null check operator used on a null value" error here.
Closes #878
2025-09-06 23:44:54 +02:00
Roland Geider
af482ab9e3
Set a debounce time for TypeAhead-fields (exercises and ingredients)
2025-09-06 22:46:13 +02:00
Roland Geider
5a4d4c7208
Save the application logs
...
This allows us to show the logs to the user and also send them along with any
bug reports. This is a simple system that just keeps the last entries in memory
and nothing is stored permanently, but that's ok for our use case and can be
changed in the future if the need arises.
2025-09-06 22:08:35 +02:00
Roland Geider
d85ee13ed9
Give users more control over the exercise cache
...
This allows users to manually refresh the cache and load all exercises
from the server.
2025-09-06 15:05:52 +02:00
Roland Geider
4330e51f86
Retrieve the current routine dynamically
...
This behaviour is now the same as the nutritional plans.
2025-09-05 22:47:27 +02:00
Roland Geider
ac043baa68
Merge branch 'master' into nutrition-plan-stats
...
# Conflicts:
# lib/models/nutrition/nutritional_plan.g.dart
# lib/widgets/measurements/charts.dart
# lib/widgets/measurements/entries.dart
# lib/widgets/weight/weight_overview.dart
2025-09-03 15:25:17 +02:00
Roland Geider
1dc3776e7e
Improve video error handling
...
Users now see a smaller error message in the exercise description, instead
of the big general popup.
2025-09-02 14:49:28 +02:00
Roland Geider
76adb1aa8f
Localize field names in routine form
2025-08-28 22:47:31 +02:00
Roland Geider
fa96378815
Import datetime extension
2025-08-28 22:35:36 +02:00
Roland Geider
92295c54b8
Merge branch 'master' into fix/timezone-problems
2025-08-28 22:19:31 +02:00
Roland Geider
3adebd15f4
Merge pull request #873 from afzal09/fix_Calendar_Future_Dates_issue872
...
changed calendar settings to allow to choose future days upto 112 days.
2025-08-25 19:42:31 +02:00
Roland Geider
b996b4b88b
Bump last selectable date to 1 year in the future
2025-08-25 19:31:26 +02:00
Roland Geider
d2f38228fb
Improvements in handling localized values in the UI
2025-08-13 21:02:34 +02:00
Roland Geider
bea40c9a3c
Correctly parse the localized weight values in the form
2025-08-13 19:54:32 +02:00
Afzal Momin
a78da55464
changed calender settings to allow to choose future days upto 112 days.
2025-07-23 21:32:15 +05:30
Dieter Plaetinck
d4a272ce8c
use interpolation for higher accuracy
...
used on:
* overall delta's in the NP list
* the NP and last30day charts (and their overall delta's)
We display them on the respective charts to make it
more consistent, but in this case, we add a small tooltip indicator to
avoid user confusion
2025-06-28 21:52:23 +02:00
Dieter Plaetinck
29f6c87122
show charts for all nutritional plans + more elegant filtering
2025-06-28 18:36:30 +02:00
Roland Geider
af9cc04e74
Merge pull request #838 from shraavv/784-fix-timer-issue
...
timer code is now updated and uses a better approach
2025-06-28 17:56:17 +02:00
Roland Geider
c7c47cdc49
Make the linter happy
2025-06-28 17:49:59 +02:00
Dieter Plaetinck
40f94c2275
cleanup
2025-06-28 17:40:41 +02:00
Dieter Plaetinck
e38238765f
fix localisation for 'open ended'
2025-06-28 17:13:41 +02:00
Dieter Plaetinck
650ef38c70
simpler date formatting
2025-06-28 16:26:35 +02:00
Roland Geider
8248f25865
Refactor log_page.dart
...
The different help functions are now proper widgets, which allows flutter
to optimize them better.
2025-06-28 10:01:45 +02:00
Roland Geider
f9e0ba5d17
Replace missing TextInputType
2025-06-28 09:49:38 +02:00
Dieter Plaetinck
a0e2659e60
dart format --line-length=100 .
2025-06-27 23:37:56 +02:00
Dieter Plaetinck
56adac2ba3
display weight change per NP on the NP list page
2025-06-27 22:46:09 +02:00
Dieter Plaetinck
d1cfce7526
adjust older code for 'current plan' and showing weight during plan
2025-06-27 22:44:49 +02:00
Dieter Plaetinck
7986df342a
consistent style
2025-06-27 21:45:41 +02:00
Dieter Plaetinck
eabe425035
show start & end dates in the relevant places
2025-06-27 21:39:31 +02:00
Dieter Plaetinck
f18a60bfb5
dart run build_runner build
2025-06-27 20:47:17 +02:00
Dieter Plaetinck
8049bcf617
support NutritionalPlan start & end dates
2025-06-27 20:37:26 +02:00
Roland Geider
8ae889a1ea
Improve decimal input handling
...
We now use TextInputType.numberWithOptions(decimal: true) which seems to have
a more consistent behaviour under android and iOS. Also, we now use NumberFormat
to parse the inputs according to the user's locale.
2025-06-27 13:24:53 +02:00
RahulShaw321
48b2c921b4
fix: defer loadEvents() to avoid context null crash
2025-06-22 21:17:35 +05:30
shravya
ab2480d483
timer code is now updated and uses a better approach
2025-06-09 18:43:40 +05:30
Roland Geider
5cac67d595
Add simple test for the ConfigureAvailablePlates widget
2025-05-27 18:56:42 +02:00
Roland Geider
e470087f4c
Move ConfigureAvailablePlates to its own widget
...
This makes the corresponding screen to be much clearer
2025-05-27 17:56:55 +02:00
Roland Geider
4bcc268896
Add bar weight and color options to the plate calculator provider
2025-05-27 16:56:12 +02:00
Roland Geider
70fba34f0c
Better handling of time zones
...
We now send the current time zone to the server when serializing datetime objects.
This was causing entries to be saved some hours wrong or depending on the time, on
a different day.
2025-05-26 11:13:53 +02:00
Roland Geider
f5decaf6a5
Add some tests
2025-05-23 18:08:19 +02:00
Roland Geider
0d36fe4bc3
Polish the add plate widget
2025-05-23 17:41:08 +02:00