aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Coijanovic <hi@coijanovic.com>2026-09-03 13:29:29 +0200
committerChristoph Coijanovic <hi@coijanovic.com>2026-09-03 13:29:29 +0200
commit4a10aa6d661ed1fe06623bb3ae7a0b52b2a81997 (patch)
treed50393f6e5961e3fe205d0b3726f9a8bace1758e
parent4b4f0fa58068063b4b19dae958fc3dc2e483726c (diff)
downloadfietsboek-4a10aa6d661ed1fe06623bb3ae7a0b52b2a81997.tar.gz
fietsboek-4a10aa6d661ed1fe06623bb3ae7a0b52b2a81997.tar.bz2
fietsboek-4a10aa6d661ed1fe06623bb3ae7a0b52b2a81997.zip
Sort tracks in browse view by uphill.
-rw-r--r--fietsboek/locale/de/LC_MESSAGES/messages.mobin20685 -> 20748 bytes
-rw-r--r--fietsboek/locale/de/LC_MESSAGES/messages.po4
-rw-r--r--fietsboek/locale/en/LC_MESSAGES/messages.mobin19490 -> 19545 bytes
-rw-r--r--fietsboek/locale/en/LC_MESSAGES/messages.po4
-rw-r--r--fietsboek/templates/browse.jinja22
-rw-r--r--fietsboek/views/browse.py6
6 files changed, 16 insertions, 0 deletions
diff --git a/fietsboek/locale/de/LC_MESSAGES/messages.mo b/fietsboek/locale/de/LC_MESSAGES/messages.mo
index 25b4a89..71b7ce8 100644
--- a/fietsboek/locale/de/LC_MESSAGES/messages.mo
+++ b/fietsboek/locale/de/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/fietsboek/locale/de/LC_MESSAGES/messages.po b/fietsboek/locale/de/LC_MESSAGES/messages.po
index bdd53a7..14f3e63 100644
--- a/fietsboek/locale/de/LC_MESSAGES/messages.po
+++ b/fietsboek/locale/de/LC_MESSAGES/messages.po
@@ -326,6 +326,10 @@ msgid "page.browse.sort.length"
msgstr "Nach Länge sortieren"
#: fietsboek/templates/browse.jinja2:125 fietsboek/templates/browse.jinja2:126
+msgid "page.browse.sort.uphill"
+msgstr "Nach Bergauf sortieren"
+
+#: fietsboek/templates/browse.jinja2:127 fietsboek/templates/browse.jinja2:128
msgid "page.browse.sort.duration"
msgstr "Nach Dauer sortieren"
diff --git a/fietsboek/locale/en/LC_MESSAGES/messages.mo b/fietsboek/locale/en/LC_MESSAGES/messages.mo
index b0c8a9c..364b305 100644
--- a/fietsboek/locale/en/LC_MESSAGES/messages.mo
+++ b/fietsboek/locale/en/LC_MESSAGES/messages.mo
Binary files differ
diff --git a/fietsboek/locale/en/LC_MESSAGES/messages.po b/fietsboek/locale/en/LC_MESSAGES/messages.po
index e75d0e0..311f1aa 100644
--- a/fietsboek/locale/en/LC_MESSAGES/messages.po
+++ b/fietsboek/locale/en/LC_MESSAGES/messages.po
@@ -326,6 +326,10 @@ msgid "page.browse.sort.length"
msgstr "Sort by length"
#: fietsboek/templates/browse.jinja2:125 fietsboek/templates/browse.jinja2:126
+msgid "page.browse.sort.uphill"
+msgstr "Sort by uphill"
+
+#: fietsboek/templates/browse.jinja2:127 fietsboek/templates/browse.jinja2:128
msgid "page.browse.sort.duration"
msgstr "Sort by duration"
diff --git a/fietsboek/templates/browse.jinja2 b/fietsboek/templates/browse.jinja2
index 28693f6..f1420b8 100644
--- a/fietsboek/templates/browse.jinja2
+++ b/fietsboek/templates/browse.jinja2
@@ -122,6 +122,8 @@
<option value="DATE_ASC" {% if request.params.get("sort") == "DATE_ASC" %}selected{% endif %}>{{ _("page.browse.sort.date") }} &ShortUpArrow;</option>
<option value="LENGTH_DESC" {% if request.params.get("sort") == "LENGTH_DESC" %}selected{% endif %}>{{ _("page.browse.sort.length") }} &ShortDownArrow;</option>
<option value="LENGTH_ASC" {% if request.params.get("sort") == "LENGTH_ASC" %}selected{% endif %}>{{ _("page.browse.sort.length") }} &ShortUpArrow;</option>
+ <option value="UPHILL_DESC" {% if request.params.get("sort") == "UPHILL_DESC" %}selected{% endif %}>{{ _("page.browse.sort.uphill") }} &ShortDownArrow;</option>
+ <option value="UPHILL_ASC" {% if request.params.get("sort") == "UPHILL_ASC" %}selected{% endif %}>{{ _("page.browse.sort.uphill") }} &ShortUpArrow;</option>
<option value="DURATION_DESC" {% if request.params.get("sort") == "DURATION_DESC" %}selected{% endif %}>{{ _("page.browse.sort.duration") }} &ShortDownArrow;</option>
<option value="DURATION_ASC" {% if request.params.get("sort") == "DURATION_ASC" %}selected{% endif %}>{{ _("page.browse.sort.duration") }} &ShortUpArrow;</option>
</select>
diff --git a/fietsboek/views/browse.py b/fietsboek/views/browse.py
index e2742ad..d823f69 100644
--- a/fietsboek/views/browse.py
+++ b/fietsboek/views/browse.py
@@ -90,6 +90,8 @@ class ResultOrder(Enum):
LENGTH_DESC = "length-desc"
DURATION_ASC = "duration-asc"
DURATION_DESC = "duration-desc"
+ UPHILL_ASC = "uphill-asc"
+ UPHILL_DESC = "uphill-desc"
class Filter:
@@ -415,6 +417,10 @@ def apply_order(query: Select, track: AliasedTrack, order: ResultOrder) -> Selec
query = query.order_by(models.TrackCache.length.desc())
elif order == ResultOrder.LENGTH_ASC:
query = query.order_by(models.TrackCache.length.asc())
+ elif order == ResultOrder.UPHILL_DESC:
+ query = query.order_by(models.TrackCache.uphill.desc())
+ elif order == ResultOrder.UPHILL_ASC:
+ query = query.order_by(models.TrackCache.uphill.asc())
elif order == ResultOrder.DURATION_DESC:
query = query.order_by(
(models.TrackCache.moving_time + models.TrackCache.stopped_time).desc()