Peter Stockings
78436b230b
feat: Refactor notes functionality into blueprint
...
- Moved notes-related routes (viewing/editing workout notes) from `app.py` into a new blueprint at `routes/notes.py`.
- Integrated notes-specific database logic (fetching and updating notes) directly into `routes/notes.py` helper functions, removing the corresponding methods from `db.py` for better encapsulation.
- Registered the new `notes_bp` blueprint in `app.py`.
- Removed the original notes route definitions from `app.py`.
- Updated `url_for` calls in `templates/partials/workout_note.html` to reference the new blueprint endpoints (e.g., `notes.get_person_notes`).
- Updated `templates/changelog/changelog.html` to document this refactoring in its own entry.
2025-03-31 22:08:47 +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
2465cad005
feat: Add static changelog page
...
Adds a new static page accessible at /changelog to display site updates and changes manually.
- Creates a new Flask Blueprint in `routes/changelog.py` to handle the route logic.
- Registers the `changelog_bp` blueprint in `app.py`.
- Creates the corresponding template `templates/changelog/changelog.html` extending the base layout.
- Adds a link to the Changelog page in the main sidebar navigation in `templates/base.html`, using an archive icon for consistency.
- Applies basic card styling to the changelog page content for improved visual structure.
2025-03-30 21:30:25 +11:00
Peter Stockings
39e91f2655
Add support to set degree of line of best fit for exercise progress graphs in custom view
2025-02-06 23:43:10 +11:00
Peter Stockings
116de33df3
Update load_user function
2025-02-02 17:45:54 +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
5be7438afc
Add in auth however there are no restrictions currently
2025-02-01 22:42:58 +11:00
Peter Stockings
8b02307397
Add plot functionality to unsaved sql query and use htmx
2025-02-01 20:26:54 +11:00
Peter Stockings
07c2111b55
Remove unused functions from app.py
2025-01-27 14:54:31 +11:00
Peter Stockings
f70438e4e4
Refactor dashboard
2025-01-27 14:46:20 +11:00
Peter Stockings
6319e488e1
Update page url after visiting page overview
2025-01-27 01:56:42 +11:00
Peter Stockings
6b741e50d0
Swtich from person list to new overview page
2025-01-27 01:17:23 +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
df3796b30e
Dont trigger 'updatedPeople' on person dashboard render anymore
2025-01-26 20:04:15 +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
5ffb08a994
Fix issue selecting a new exercise
2025-01-19 21:34:45 +11:00
Peter Stockings
0b7b804d62
Fix issue where redirecting to endpoints page would only show table
2024-11-09 19:20:06 +11:00
Peter Stockings
120a94ff45
Add page to list all flask endpoints with filter
2024-11-09 19:07:55 +11:00
Peter Stockings
c7013e0eac
Add ability to plot saved queries using plotly, need to check performance in production, also need to improve generate_plot function
2024-11-09 16:49:08 +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
616b57e1db
Fix regression where selecting an exercise didnt populate reps/weight inputs with last set and resize progress graph on desktop
2024-11-05 15:04:06 +11:00
Peter Stockings
5938c9468b
Fix error thrown when attempting to update exercise name
2024-11-04 23:14:56 +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
10326ccd7a
Switch from using workout modal and change to workout page, still need to cleanup modal logic and templates. Need to fix workout tag functionality
2024-11-04 22:02:06 +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
1384eb007b
Add min/max filter filter for exercise sparkline graph
2024-07-29 21:27:30 +10:00
Peter Stockings
497a96be60
Instead of retreiving list of users and workouts card on initial load which involves a second db call, use htmx onload callback
2024-04-11 17:43:16 +10: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
Peter Stockings
76789a4934
Fix for url not updating when browsing from person note view -> calendar view (Not proper fix, dont understand why it wasnt working. Need to look into this further)
2024-04-10 19:30:15 +10:00
Peter Stockings
353093809f
Load local .env file in dev mode (Will make same change to other projects)
2024-04-07 22:30:28 +10:00
Peter Stockings
6dafdf71dd
Add options to filter epoch for exercise progress graphs (1M, 3M, 6M, All), however if there isnt data in a selected epoch the endpoint returns 404. Havent bothered to look into to it, probs should clean up code as well
2024-04-03 20:31:13 +11:00
Peter Stockings
dae4fcbf44
Add view to list workout notes for a person
2024-03-09 18:50:44 +11:00
Peter Stockings
2285e870fb
Added graphs to show workouts & PR's per week on dashboard. However there is no tooltip on hover and I duplicated the svg spark line template (May combine the two)
2023-12-11 17:29:10 +11:00
Peter Stockings
8904d198ed
Fix defect introduced in last commit where person view would display all graphs rather then just for filtered exercises
2023-12-09 23:42:19 +11:00
Peter Stockings
f9b3854544
On dashboard display list of sets in descending order (start_date) with E1RM
2023-12-09 20:19:24 +11:00
Peter Stockings
c702a2ba3d
Refactor get workout call
2023-12-09 17:00:45 +11:00
Peter Stockings
1ff616f4e0
Refactor get topset database call
2023-12-09 16:35:10 +11:00
Peter Stockings
8bbbfecbf9
More CamelCase refactoring, exercise functionality refactored
2023-12-09 16:23:04 +11:00
Peter Stockings
d967920e03
Start to refactor away from using camel case (Not sure why I did this in the first place)
2023-12-09 16:14:10 +11:00
Peter Stockings
d51266c2d1
Remove graph model data from dashboard/people endpoints
2023-12-09 15:00:53 +11:00
Peter Stockings
e3435df8b5
Switch to using custom svg sparkline for exercise graphs on person view, this isnt a proper implementation as it separate requests for each exercise selected (Want to get rid of dependency on plotly)
2023-12-09 14:42:33 +11:00
Peter Stockings
2bdbda3a05
Refactor exercise progress
2023-12-07 21:58:13 +11:00
Peter Stockings
3fca116d1c
On hover of exercise progress sparkline on new workout modal, show estimated 1rm and date of workout as a popover
2023-12-07 20:50:59 +11:00