aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Schadt <kingdread@gmx.de>2026-08-13 18:22:22 +0200
committerDaniel Schadt <kingdread@gmx.de>2026-08-13 18:22:22 +0200
commitb5d155c0aca75ca6a548b622117df56e03b2993a (patch)
treedd65d0904413dbf55ed132d34e04df8354f1936e
parent4ac0a7a84425ed86ebbe70fded7dae6f0a65b45d (diff)
downloadfietsboek-b5d155c0aca75ca6a548b622117df56e03b2993a.tar.gz
fietsboek-b5d155c0aca75ca6a548b622117df56e03b2993a.tar.bz2
fietsboek-b5d155c0aca75ca6a548b622117df56e03b2993a.zip
make cells in year contributions clickable
-rw-r--r--fietsboek/summaries.py18
-rw-r--r--fietsboek/templates/profile_overview.jinja26
2 files changed, 22 insertions, 2 deletions
diff --git a/fietsboek/summaries.py b/fietsboek/summaries.py
index 8c54d5f..9513917 100644
--- a/fietsboek/summaries.py
+++ b/fietsboek/summaries.py
@@ -7,6 +7,7 @@ from typing import Iterator, Optional
from babel import Locale
from babel.dates import format_date
from pyramid.i18n import Localizer
+from pyramid.request import Request
from . import util
from .models.track import TrackWithMetadata
@@ -435,5 +436,22 @@ class DayContributions:
},
)
+ def browse_url(self, request: Request) -> str:
+ """Returns a URL to the browse page with filters for this day applied.
+
+ :param request: The pyramid request.
+ :return: The URL.
+ """
+ datestring = self.day.strftime("%Y-%m-%d")
+ return request.route_url(
+ "browse",
+ _query={
+ "type[]": "ORGANIC",
+ "show-only[]": "user-tagged",
+ "min-date": datestring,
+ "max-date": datestring,
+ },
+ )
+
__all__ = ["Summary", "YearSummary", "MonthSummary", "CumulativeStats", "YearContributions"]
diff --git a/fietsboek/templates/profile_overview.jinja2 b/fietsboek/templates/profile_overview.jinja2
index 9914146..a088ba5 100644
--- a/fietsboek/templates/profile_overview.jinja2
+++ b/fietsboek/templates/profile_overview.jinja2
@@ -130,8 +130,10 @@
<td class="text-muted contribs-rowhead">{{ rowhead | default("", true) }}</td>
{% for cell in row %}
<td class="contribs-cell {{ cell.cell_style() }}">
- <!-- Use a div because border-radius does not work on td -->
- <div data-bs-toggle="tooltip" title="{{ cell.tooltip(request.localizer) }}"></div>
+ <a href="{{ cell.browse_url(request) }}">
+ <!-- Use a div because border-radius does not work on td -->
+ <div data-bs-toggle="tooltip" title="{{ cell.tooltip(request.localizer) }}"></div>
+ </a>
</td>
{% endfor %}
</tr>