Roland Geider
cce0b94edc
Cleanup
2025-05-23 18:44:29 +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
Roland Geider
5a8df8936e
Move provider to riverpod
2025-05-23 11:52:46 +02:00
Roland Geider
ac13381bcf
Some refactoring
2025-05-23 11:06:37 +02:00
Roland Geider
9934209b7c
Merge branch 'master' into fork/AyushJagaty/plate-46-calc
...
# Conflicts:
# AUTHORS.md
# ios/Podfile.lock
# lib/main.dart
# lib/providers/user.dart
# lib/widgets/workouts/gym_mode.dart
# test/nutrition/goldens/nutritional_plan_1_default_view.png
# test/nutrition/goldens/nutritional_plan_2_one_meal_with_ingredients.png
# test/nutrition/goldens/nutritional_plan_3_both_meals_with_ingredients.png
# test/routine/gym_mode_screen_test.dart
2025-05-22 15:27:39 +02:00
Roland Geider
0fd2154a20
Merge pull request #815 from Shininess8816/mealDateTime
...
Allow the logging on meals with date times #789
2025-05-16 18:35:02 +02:00
Roland Geider
0d49030c60
Merge branch 'master' into fork/eyJhb/api-token
...
# Conflicts:
# lib/screens/auth_screen.dart
# test/nutrition/nutritional_plan_screen_test.mocks.dart
# test/nutrition/nutritional_plans_screen_test.mocks.dart
# test/workout/day_form_test.mocks.dart
# test/workout/gym_mode_session_screen_test.mocks.dart
# test/workout/repetition_unit_form_widget_test.mocks.dart
# test/workout/routine_edit_screen_test.mocks.dart
# test/workout/routine_edit_test.mocks.dart
# test/workout/routine_form_test.mocks.dart
# test/workout/routine_logs_screen_test.mocks.dart
# test/workout/slot_entry_form_test.mocks.dart
# test/workout/weight_unit_form_widget_test.mocks.dart
2025-05-11 18:04:09 +02:00
Roland Geider
0863b44fe6
Merge branch 'master' into feature/better-error-handling
...
# Conflicts:
# lib/screens/home_tabs_screen.dart
# test/workout/day_form_test.mocks.dart
# test/workout/gym_mode_session_screen_test.mocks.dart
# test/workout/repetition_unit_form_widget_test.mocks.dart
# test/workout/routine_edit_screen_test.mocks.dart
# test/workout/routine_edit_test.mocks.dart
# test/workout/routine_form_test.mocks.dart
# test/workout/routine_logs_screen_test.mocks.dart
# test/workout/slot_entry_form_test.mocks.dart
# test/workout/weight_unit_form_widget_test.mocks.dart
2025-05-09 14:11:17 +02:00
burny0202
0942739200
Allow the logging on meals with date times #789
2025-05-08 21:43:07 +01:00
Roland Geider
5e22d69bb1
Improve error handling and logging
...
Now we process and catch all errors that might happen in the application, instead
of silently ignoring them. These errors are shown in a better error dialog, that
shows the details to the user and allows to create an issue on GitHub with the
error and traceback data already filled in.
2025-05-07 18:19:15 +02:00
Roland Geider
9ebaf58fea
Refactor routine handling for the dashboard widgets
...
This makes sure that edits to the routine (such as changing the order
of the days, etc.) are properly reflected in the dashboard.
2025-05-03 15:39:46 +02:00
Roland Geider
f812910bdf
Save the token to the right variable
2025-05-01 13:12:46 +02:00
Roland Geider
ece38a39d2
Refactor login screen
...
The api token toggle is now only visible when showing a custom server, since at
the moment this is the only time when such an auth method makes sense (plus it
keeps the rest of the UI cleaner). The different fields in the screen have been
moved to individual files, to make the structure clearer.
2025-04-30 22:50:55 +02:00
Roland Geider
38cdc9f37c
Merge branch 'master' into fork/eyJhb/api-token
...
# Conflicts:
# lib/providers/auth.dart
2025-04-29 19:23:55 +02:00
Roland Geider
8acde9adaa
Add startTime to GymState and update GymMode to use it
...
This keeps the start time, even if the user leaves the gym mode and returns
later, which is what we want anyway.
2025-04-17 16:34:42 +02:00
Roland Geider
c673fa0ea6
Add test for the workout log deletion dialog
2025-04-17 15:18:49 +02:00
Roland Geider
88d66b336c
Properly update the UI when deleting workout logs
...
The problem was that we were passing the exercises and session from the
calendar events, which wasn't being reloaded when the logs were deleted. Now
we only pass the selected date and fetch the logs from the routine.
2025-04-17 10:26:44 +02:00
Roland Geider
59ea2d93e7
Set the authentication state, just to be sure
2025-04-01 21:48:26 +02:00
Roland Geider
6742c8091a
Return the actions enum directly, no need for a dict here
2025-04-01 21:39:45 +02:00
Roland Geider
61f61a64c5
Merge branch 'master' into feature/improve-min-app-version
...
# Conflicts:
# lib/providers/auth.dart
2025-03-31 09:44:43 +02:00
Roland Geider
df06cef398
await for all setExercisesAndUnits calls
...
Not setting the "await" was causing the method to be run asynchronously which means
that sometimes these would get called several times for the same exercise, which in
turn would cause exercises to be written several times to the local db, polluting the
exercise list, etc. etc.
We increase the schemaVersion of the database because this causes all the cache tables
to be dropped and re-created
2025-03-29 16:37:11 +01:00
Roland Geider
301f48a966
More renaming of exercise base to just exercise
2025-03-29 15:50:13 +01:00
Yashas H Majmudar
1c65bbfbbc
Merge branch 'wger-project:master' into yhm/issue-731
2025-03-28 22:37:26 -04:00
Roland Geider
e4b550ab52
Refactor app version handling and update authentication flow
...
Previously, this was only triggered when logging in to the application. If a user
just opened the app, it would just stop working. We also now always check this min
version and have removed the option from the android manifest file since disabling
this doesn't make much sense and we have many other platforms as well (iOS, flatpak)
2025-03-28 17:22:36 +01:00
Roland Geider
cacb89f8b1
Replace WEIGHT_UNIT_KG_ID
...
No need to have two constants for the same thing
2025-03-28 17:21:41 +01:00
Roland Geider
cde9d64a2c
Merge branch 'master' into yhm/issue-731
2025-03-28 16:15:52 +01:00
Roland Geider
13614ee4fe
Merge branch 'master' into fork/mutairibassam/feature/min-version-handling
...
# Conflicts:
# AUTHORS.md
# lib/providers/auth.dart
2025-03-27 17:43:58 +01:00
Yashas H Majmudar
39b50aef36
format: correct char length format
2025-03-24 11:53:04 -04:00
Yashas H Majmudar
529c63c92e
migration: migrated all instances of sharedPreferences to sharedPreferencesAsync
2025-03-23 14:26:05 -04:00
Roland Geider
ea41b49051
If there is no session known locally, just re-fetch the whole routine
2025-03-19 10:15:43 +01:00
Roland Geider
f987de1b4d
Handle case where an exercise has no variations
2025-03-18 14:59:33 +01:00
Roland Geider
5fdcb63207
Remove the optional refresh parameter
...
We always want to refresh the data since we don't update manually the
dayData lists
2025-03-17 19:27:43 +01:00
Roland Geider
2a422958f6
Remove commented code
2025-03-17 09:57:44 +01:00
Roland Geider
4e959d777a
The repetition and weight units can be null
...
and don't need to be loaded in this case
2025-03-16 19:59:00 +01:00
Roland Geider
753a126625
Don't load templates
...
At the moment templates are not supported in the mobile app.
2025-03-15 14:55:14 +01:00
Roland Geider
325cc93865
Refresh the whole routine after modifying further objects.
...
This makes sure that all the structures are present and have the correct
content (dayData, etc.). Also, add more feedback to the user for some operations
that take a bit longer due to loading the whole routine.
2025-03-11 20:36:38 +01:00
Roland Geider
929acc7938
Refresh the whole routine after modifying a day
...
This makes sure that all the structures are present and have the correct
content (dayData, etc.)
2025-03-11 14:06:09 +01:00
Roland Geider
2f975b1fd3
Correctly handle the state
...
The problem was that some of the previous changes were asynchronous and would
not always represent the actual current state. This solution works, but is
a bit verbose and perhaps overly complicated?
2025-02-22 23:09:59 +01:00
Roland Geider
eecaa6fcf0
Merge branch 'feature/flexible-routines' into Jackpkn-fix/gym-provider-navigation
2025-02-21 22:16:25 +01:00
Roland Geider
f25e9867a2
Cleanup
2025-02-21 22:05:29 +01:00
Roland Geider
14a5d7285b
Extract the day data for the current routine
...
instead of loading the same data from the server
2025-02-16 21:19:17 +01:00
Roland Geider
460b6e7125
Add smoke test for fetchAndSetRoutineFull
2025-02-02 22:38:05 +01:00
Roland Geider
2498183094
Rename further instances of "reps" to "repetitions"
2025-02-01 19:24:15 +01:00
Roland Geider
3ef8b62d53
Update exercise info API paths
2025-02-01 15:29:14 +01:00
Roland Geider
110c98ffbd
Merge branch 'feature/flexible-routines' into Jackpkn-fix/gym-provider-navigation
2025-01-31 21:33:57 +01:00
Roland Geider
8256c46d4f
Initialize the units for the log entries in the session
2025-01-31 17:52:47 +01:00
Roland Geider
3e6ee0b082
Update models due to changes in exercise api response changes
2025-01-30 21:48:44 +01:00
Roland Geider
4bd16f5c0d
Remove logs from the routine
...
The logs are now in the session list and can be easily extracted if needed
2025-01-30 18:21:09 +01:00
Roland Geider
7c6fbebdf5
Show workout session information
2025-01-26 20:11:21 +01:00