Add running personal records and historical PR badges

This commit is contained in:
Peter Stockings
2026-10-02 13:52:27 +10:00
parent b902ec6312
commit a82135bc89
10 changed files with 240 additions and 9 deletions
+12 -1
View File
@@ -27,6 +27,7 @@ from garmin_sync.service import SyncError, atomic_write
from .analytics import analyse, pace_text
from .extensions import db, limiter
from .models import Activity, Friendship, GarminConnection, User
from .records import record_book
from .services import activity_data, import_cache, import_upload
web = Blueprint("web", __name__)
@@ -219,6 +220,7 @@ def dashboard():
stats=overview(rows, current_user.timezone),
profile=current_user,
personal=True,
record_book=record_book(rows),
mapped_run=latest_mapped_run(rows),
)
@@ -310,8 +312,17 @@ def profile(username):
def activity(activity_id):
row, owner = get_activity(activity_id)
analysis = analyse(row)
efforts = []
if owner:
history = db.session.scalars(db.select(Activity).filter_by(owner_id=row.owner_id)).all()
efforts = record_book(history)["runs"].get(row.id, [])
return render_template(
"activity.html", activity=row, owner_view=owner, analysis=analysis, pace_text=pace_text
"activity.html",
activity=row,
owner_view=owner,
analysis=analysis,
pace_text=pace_text,
efforts=efforts,
)