Commit Graph

29 Commits

Author SHA1 Message Date
Peter Stockings
a8fe28339b I have refactored the SQL Explorer functionality into its own blueprint (routes/sql_explorer.py) with a /sql URL prefix. This involved moving the relevant routes from app.py, registering the new blueprint, removing the old routes, updating url_for calls in the templates, and documenting the change in the changelog.
Here is a conventional commit message summarizing the changes:

```
feat: Refactor SQL Explorer into blueprint

- Moved SQL Explorer routes (view explorer, save/load/execute/delete queries, view schema, plot queries) from `app.py` into a new blueprint at `routes/sql_explorer.py`.
- Added `/sql` URL prefix to the blueprint.
- Registered the new `sql_explorer_bp` blueprint in `app.py`.
- Removed the original SQL Explorer route definitions from `app.py`.
- Updated `url_for` calls in relevant templates (`sql_explorer.html`, `partials/sql_explorer/sql_query.html`, `base.html`) to reference the new blueprint endpoints (e.g., `sql_explorer.sql_explorer`).
- Updated `templates/changelog/changelog.html` to document this refactoring.
```
2025-03-31 23:00:54 +11:00
Peter Stockings
eaeb4ab2c8 feat: Refactor workout functionality into blueprint
- Moved workout-related routes (create/delete/edit workouts, topsets, tags, start dates, show workout) from `app.py` into a new blueprint at `routes/workout.py`.
- Integrated workout view model logic from `features/workout.py` directly into `routes/workout.py` helper function `_get_workout_view_model`.
- Removed `features/workout.py` and the corresponding class instantiation in `db.py`.
- Registered the new `workout_bp` blueprint in `app.py`.
- Removed the original workout route definitions from `app.py`.
- Updated `url_for` calls in relevant templates (`workout.html`, `person_overview.html`, `partials/workout_tags.html`, `partials/topset.html`, `partials/start_date.html`, `partials/new_set_form.html`, `notes.html`, `calendar.html`) to reference the new blueprint endpoints (e.g., `workout.create_workout`).
- Updated `templates/changelog/changelog.html` to document this refactoring.
2025-03-31 22:38:48 +11:00
Peter Stockings
6095e76f10 Here is a conventional commit message summarizing the refactoring work:
```
feat: Refactor calendar feature into blueprint

- Moved calendar logic from `features/calendar.py` and `app.py` into a new blueprint at `routes/calendar.py`.
- Removed the `Calendar` class and refactored logic into helper functions within the blueprint module for better organization and readability.
- Eliminated the `pandas` dependency for date range generation, using standard `datetime` operations instead.
- Resolved circular import issues between `db.py`, `extensions.py`, and `routes/calendar.py` by adjusting import locations.
- Corrected `url_for` calls in templates (`calendar.html`, `partials/people_link.html`) to reference the new blueprint endpoint (`calendar.get_calendar`).
- Fixed an `AttributeError` related to HTMX request checking in the calendar route.
- Corrected `AttributeError` related to `.date()` calls on `datetime.date` objects in view processing functions.
- Updated `templates/changelog/changelog.html` to document the refactoring and associated fixes.
```
2025-03-30 22:20:48 +11:00
Peter Stockings
b0296be9a0 On SQL explorer page add a button to copy the create tables database schema 2025-02-01 23:50:09 +11:00
Peter Stockings
55149c5ea9 Switch stats from camel case to snake case 2025-02-01 19:48:56 +11:00
Peter Stockings
677d44320c Fix for workout view showing sets out of order 2025-02-01 19:38:08 +11:00
Peter Stockings
f70438e4e4 Refactor dashboard 2025-01-27 14:46:20 +11:00
Peter Stockings
0ed0c20e93 Add person graphs endpoint for workouts per week & PRs per week, consumed via dashboard, person overview and notes 2025-01-27 01:00:50 +11:00
Peter Stockings
5ed737ee94 Refactor stats endpoint so supports filtering people and make dashboard page utilise it 2025-01-27 00:07:27 +11:00
Peter Stockings
527395d704 Make stats refresh, and add filter support to stats endpoint 2025-01-26 23:01:39 +11:00
Peter Stockings
17c010ff7f Include total duration in new overview stats 2025-01-26 21:17:02 +11:00
Peter Stockings
d1057aa8ba Add more stats 2025-01-26 21:10:22 +11:00
Peter Stockings
29f7dc1823 Revert "Revert "Add stats to new person overview page, just copied the logic so will need to refactor when the dashboard page is refactored as well""
This reverts commit c569793fd8.
2025-01-26 21:07:19 +11:00
Peter Stockings
c569793fd8 Revert "Add stats to new person overview page, just copied the logic so will need to refactor when the dashboard page is refactored as well"
This reverts commit 4783ce6026.
2025-01-26 20:55:08 +11:00
Peter Stockings
4783ce6026 Add stats to new person overview page, just copied the logic so will need to refactor when the dashboard page is refactored as well 2025-01-26 20:39:20 +11:00
Peter Stockings
cd6f3920f5 Add exercise progress graphs to new person overview page 2025-01-26 20:00:31 +11:00
Peter Stockings
b0fb8895df Start refactoring person overview (list) page, currently is accessible through tags and workout exercise select. Doesnt have any stats or graphs 2025-01-26 18:21:44 +11:00
Peter Stockings
23def088bb Add ability to save and edit queries, still need to add ability to edit queries 2024-11-08 23:09:19 +11:00
Peter Stockings
0f55d42f22 * Add SQL query executor
* Move mermaid.min.js to static asset
* Create templates for sql logic
2024-11-06 23:25:25 +11:00
Peter Stockings
3a07b9d97f WIP: Render database schema using Mermaid.js
Still need to:
* Move mermaid.js to static files
* Make template for mermaid wrapper
* Create new page for SQL viewer then add explorer
2024-11-06 22:48:51 +11:00
Peter Stockings
05158d8f43 Fix issue where creating an empty workout would show a blank set 'None x None Kg' 2024-11-04 23:21:12 +11:00
Peter Stockings
1f0742bbc0 Add breadcrumb navigation to workout page 2024-11-04 22:51:27 +11:00
Peter Stockings
b5493e627c Fix tags, may have increased load on database while only using one query to fetch workout, topsets, and all tags 2024-11-04 22:33:08 +11:00
Peter Stockings
1a970d1d7b Fix bug where updating exercise name would persist due to missing commit 2024-11-04 16:59:14 +11:00
Peter Stockings
7d65f9b8e8 Add ability to add/delete exercises from dropdown 2024-11-04 16:46:22 +11:00
Peter Stockings
7d43965289 Add ability to edit exercise name from new dropdown, still WIP as I need to handle exercise selection and make it a component 2024-11-04 12:07:47 +11:00
Peter Stockings
e756607dc8 Add WIP of exercise live search, just testing speed in prod site 2024-11-03 09:45:48 +11:00
Peter Stockings
817a6016e2 Create seperate page view for workout (WIP) 2024-11-02 23:09:26 +11:00
Peter Stockings
63d997a3f1 Refactor calendar (month and year view), switching to vertical slice arch. Also in progress of refactoring of stats so they are retreived after inital page load for performance sake 2024-04-11 13:45:38 +10:00