Commit Graph

192 Commits

Author SHA1 Message Date
slothful-vassal
edad99c7b4 fix email change issues (#973)
* fix email change

* isolated email update

* update email UI immediately

---------

Co-authored-by: Christian Beutel <>
2026-05-10 08:38:55 +02:00
Flomp
d2ac49470a Federation Refactoring & Architecture Improvements (#930)
* initial commit

* add lists

* update permissions

* fix waypoint create

* needs_full_sync for activitypub trails

* fixes build issues

* fix list get

* further CSRF protection

* update API docs

* adds rate limiter

* fix tiptap mentions

* a bit more cleanup of main.go

* Fix migration order

* fixes reviewed notes

* require context for activitpub server calls

* improve hashing for identifier

* fix copy paste error

* fix sync trail/list issues

* fix summit log/comment duplicates

* adaptions after trail merge

* fix dockerignore

---------

Co-authored-by: Christian Beutel <>
Co-authored-by: slothful-vassal <89943360+slothful-vassal@users.noreply.github.com>
2026-05-09 17:30:34 +02:00
slothful-vassal
b5739cb72e merge trails function added (#627)
* merge trails function added

* fix conflict resolve issues

* avoid incorrect authorship when merging trail comments

* require edit access for all selected trails before merge

* fix likes checkbox binding in trail merge modal

* improve error handling

* require editable target and deletable sources for merge

* avoid duplicate trail fetch during merge

* prevent duplicate likes when merging trails

* check photo download responses during trail merge

* add merge completion toast notifications

* cleanup

* small fixes

* move merge code to backend, option to merge single trail selection with similar one, automatic merge for integrations add as option, maintenance page to find and merge similar trails added

* fix build error

* fix

* docu, beautifying, refactoring

---------

Co-authored-by: Flomp <Flomp@users.noreply.github.com>
2026-05-09 13:09:26 +02:00
slothful-vassal
d2268429c7 chore/pocketbase v0.38.0 (#972)
Co-authored-by: Flomp <Flomp@users.noreply.github.com>
2026-05-09 13:02:31 +02:00
Pål Håland
127b7a0745 chore: meilisearch sdk rename and dependency upgrades (#958)
Co-authored-by: slothful-vassal <89943360+slothful-vassal@users.noreply.github.com>
2026-05-07 22:58:06 +02:00
Pål Håland
25fe7982c5 chore: dockerfile build optimizations (#959) 2026-05-07 21:33:46 +02:00
slothful-vassal
6d1d1236ef Trail Edit / Waypoints from photos: prevent creating different waypoints for near-by locations (#457)
* trail edit / waypoints from photos: prevent creating different waypoints for near-by locations

* remove not necessary imports

* remove changes from gitignore

* patch gitignore

* waypoint merge radius as category property

* change datamodel for merge radius (use more generic settings field for future implementations)

* fix npm run check issues

* several improvements/fixes

* fix

* move geo cluster code to db

* fix compile issue

* fix docker issue

* merge with existing waypoints

---------

Co-authored-by: Christian Beutel <>
Co-authored-by: Flomp <Flomp@users.noreply.github.com>
2026-04-29 11:15:06 +02:00
Flomp
7bdf0d3151 Adds option to mark trail as completed (#920)
* initial commit

* add completed for komoot tours

* mark hammerhead activities as completed

* fix review suggestions

* adds completed modal to trail edit page

---------

Co-authored-by: Christian Beutel <>
Co-authored-by: slothful-vassal <89943360+slothful-vassal@users.noreply.github.com>
2026-04-27 20:37:11 +02:00
slothful-vassal
86c94a5ce2 fix komoot integration issue with 'invalid' photos (#941) 2026-04-27 16:17:00 +02:00
slothful-vassal
c9256aeb29 fix help links (#938) 2026-04-22 09:03:48 +02:00
Stefan Schlögl
19fd259129 fix komoot sync stopping before all tours are imported (#917)
Three bugs caused partial imports:

1. Type filter halted pagination: if a page contained only tours of the
   excluded type (planned vs. recorded), syncTrailWithTours returned false
   and the loop stopped even though later pages might have matching tours.
   Fixed by tracking allAlreadySynced separately - only tours already in the
   DB count toward early termination, not type-filtered ones.

2. continue on error never incremented page: a fetch or sync error called
   continue on the outer for loop, so page stayed the same and hasNewTours
   was never updated, causing an infinite retry on the failing page. Changed
   to break so a failed page aborts the current sync cycle cleanly.

3. Pagination ignored TotalPages: the loop used a fragile stop heuristic
   instead of the TotalPages value returned by the Komoot API. fetchTours
   now returns TotalPages and the loop uses it as the upper bound, with the
   allAlreadySynced early-exit kept as an optimization for incremental syncs.

Closes #570

Co-authored-by: slothful-vassal <89943360+slothful-vassal@users.noreply.github.com>
2026-04-20 20:24:51 +02:00
dependabot[bot]
da38cfc19a Bump golang.org/x/net (#932)
Bumps the gomod-backward-compatible group with 1 update in the /db directory: [golang.org/x/net](https://github.com/golang/net).


Updates `golang.org/x/net` from 0.50.0 to 0.53.0
- [Commits](https://github.com/golang/net/compare/v0.50.0...v0.53.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.53.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: gomod-backward-compatible
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-18 11:59:32 +02:00
dependabot[bot]
bef362914f Bump golang.org/x/image from 0.36.0 to 0.38.0 in /db (#901)
Bumps [golang.org/x/image](https://github.com/golang/image) from 0.36.0 to 0.38.0.
- [Commits](https://github.com/golang/image/compare/v0.36.0...v0.38.0)

---
updated-dependencies:
- dependency-name: golang.org/x/image
  dependency-version: 0.38.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-18 11:56:34 +02:00
Flomp
ec76b69dba Fix mentions when username != preferred_username (#885)
* initial commit

* fixes mention name

---------

Co-authored-by: Christian Beutel <>
2026-03-20 19:35:34 +01:00
slothful-vassal
369e71fcec hammerhead integration added (#628)
* hammerhead integration added

* typo corrected

* start date added, optimize some translations

* new option to send trail to hammerhead

* fix elevation information (was in cm)

* skip empty tracks on import

* update docs

* remove manual user-id input

* fix merge issues

* remove user-id from documentation

* fix hammerhead logo for light theme

* fix hammerhead logo for light theme

---------

Co-authored-by: Christian Beutel <>
Co-authored-by: Flomp <Flomp@users.noreply.github.com>
2026-03-20 13:58:34 +01:00
slothful-vassal
4b1dc784c9 fix issues updating avatar (#870) 2026-03-10 18:00:38 +01:00
Flomp
711a592038 Feature: API Tokens (#848)
* initial commit

* fix last_used timestamp

---------

Co-authored-by: Christian Beutel <>
2026-03-07 10:10:25 +01:00
Flomp
ba88d08078 Update meilisearch to v1.36.0 (#847)
* Update meilisearch to v1.36.0

* Merge remote-tracking branch 'origin/main' into chore/update-meilisearch

---------

Co-authored-by: Christian Beutel <>
2026-03-07 10:00:31 +01:00
Jonas Plum
84bf27a415 Fix go version in Dockerfile (#859)
* Add dockerfile updates and cooldown settings to dependabot

* Upgrade Go version in Dockerfile to 1.25.0
2026-03-01 19:35:13 +01:00
Flomp
88aabfa6fd Update pocketbase to 36.5 (#846)
Co-authored-by: Christian Beutel <>
2026-03-01 19:32:11 +01:00
slothful-vassal
f2396ae574 new trail view options: create copy & change visibility (#571)
* change visibility of multiple trails in trails view (multi-select)

* error handling

* create copy option added

* wait for meilisearch when updating trail

* remove toggles from dropdown

* change public/private logic

* adds loading spinner for bulk operations

* fixes trail duplicate

* fixes tags delete on visiblility change

* fix conflict resolving issue

* edit labels & german translation

---------

Co-authored-by: Christian Beutel <>
Co-authored-by: Flomp <Flomp@users.noreply.github.com>
2026-03-01 18:18:09 +01:00
dependabot[bot]
2b9d5305a8 Bump the gomod-backward-compatible group in /db with 2 updates (#851)
Bumps the gomod-backward-compatible group in /db with 2 updates: [github.com/pocketbase/dbx](https://github.com/pocketbase/dbx) and [golang.org/x/net](https://github.com/golang/net).


Updates `github.com/pocketbase/dbx` from 1.11.0 to 1.12.0
- [Release notes](https://github.com/pocketbase/dbx/releases)
- [Commits](https://github.com/pocketbase/dbx/compare/v1.11.0...v1.12.0)

Updates `golang.org/x/net` from 0.49.0 to 0.51.0
- [Commits](https://github.com/golang/net/compare/v0.49.0...v0.51.0)

---
updated-dependencies:
- dependency-name: github.com/pocketbase/dbx
  dependency-version: 1.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: gomod-backward-compatible
- dependency-name: golang.org/x/net
  dependency-version: 0.51.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: gomod-backward-compatible
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-01 07:22:10 +01:00
slothful-vassal
bd293e6739 new setting: begin drawing a new trail from current location (#592)
* new setting: begin drawing a new trail from  current location

* apply only when drawing

* fix application when editing an existing route

* documentation

* ignore pointer events on location circles

* fix i18n

---------

Co-authored-by: Flomp <Flomp@users.noreply.github.com>
Co-authored-by: Christian Beutel <>
2026-02-28 10:15:43 +01:00
Flomp
6cac905368 Use dynamic tokens & bootstrap meili config on startup (#839)
* initial commit

* persist meili token in cookie

* handle login/logout cookie invalidation

* fix review suggestions

---------

Co-authored-by: Christian Beutel <>
2026-02-27 08:52:53 +01:00
Jonas Plum
82ad995cdc Make the env var change non-breaking (#778)
* Fix typo in environment variable for sender address

Make the env var change non-breaking.

* Fix formatting of environment variable access
2026-02-06 11:49:19 +01:00
Flomp
32a9a67e7e Adds czech (#774)
Co-authored-by: Christian Beutel <>
2026-02-05 09:36:57 +01:00
dependabot[bot]
357b446bfd Bump golang.org/x/net in /db in the gomod-backward-compatible group (#756)
Bumps the gomod-backward-compatible group in /db with 1 update: [golang.org/x/net](https://github.com/golang/net).


Updates `golang.org/x/net` from 0.48.0 to 0.49.0
- [Commits](https://github.com/golang/net/compare/v0.48.0...v0.49.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-version: 0.49.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: gomod-backward-compatible
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-05 08:48:20 +01:00
Flomp
32e6b6a6cc fix/pocketbase-smtp-sender-address-spelling (#769)
Co-authored-by: Christian Beutel <>
2026-02-04 11:26:49 +01:00
Flomp
dacdaeab26 New Crowdin updates (#622)
* New translations en.json (French)

* New translations en.json (Dutch)

* New translations en.json (Dutch)

* New translations en.json (Russian)

* New translations en.json (Russian)

* New translations en.json (French)

* New translations en.json (French)

* New translations en.json (Spanish)

* New translations en.json (Spanish)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (Czech)

* New translations en.json (German)

* New translations en.json (French)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.json (German)

* New translations en.json (German)

* fixes valhalla spelling

* Added Norwegian translation (#668)

* adds norwegian

* minor fixes in de

---------

Co-authored-by: Christian Beutel <>
Co-authored-by: Pål Håland <4449863+palhaland@users.noreply.github.com>
2026-02-02 18:24:20 +01:00
Robert Clarke
029f1f134b Return 401s when logged out of more activitypub api endpoints (#750)
Co-authored-by: slothful-vassal <89943360+slothful-vassal@users.noreply.github.com>
2026-01-31 23:04:56 +01:00
Robert Clarke
1005aa0a84 add root CAs to db container (#751) 2026-01-25 18:06:49 +01:00
Patrick Stöckle
6318f4b4ad Improve container images (#749)
* 🔒 chore(security): improve container image security

* 👌 chore(review): add cron job to Dockerfile for periodic tasks
2026-01-24 22:21:19 +01:00
Flomp
b65fbdd128 fix trail privacy (#719)
* fix trail privacy

* adds privacy setting to integrations

---------

Co-authored-by: Christian Beutel <>
2026-01-13 19:01:05 +01:00
dependabot[bot]
839679074f Bump the gomod-backward-compatible group across 1 directory with 3 updates (#717)
Bumps the gomod-backward-compatible group with 2 updates in the /db directory: [github.com/spf13/cobra](https://github.com/spf13/cobra) and [golang.org/x/net](https://github.com/golang/net).


Updates `github.com/spf13/cobra` from 1.10.1 to 1.10.2
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](https://github.com/spf13/cobra/compare/v1.10.1...v1.10.2)

Updates `golang.org/x/net` from 0.44.0 to 0.48.0
- [Commits](https://github.com/golang/net/compare/v0.44.0...v0.48.0)

Updates `golang.org/x/sync` from 0.17.0 to 0.19.0
- [Commits](https://github.com/golang/sync/compare/v0.17.0...v0.19.0)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-version: 1.10.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: gomod-backward-compatible
- dependency-name: golang.org/x/net
  dependency-version: 0.48.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: gomod-backward-compatible
- dependency-name: golang.org/x/sync
  dependency-version: 0.19.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: gomod-backward-compatible
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-12 06:32:34 +01:00
slothful-vassal
86cca8e8c3 fix duplicated lists after publishing (activitypub instances) (#706) 2026-01-11 22:19:16 +01:00
Christian Beutel
e910b3c44d removes deprecated fsys call 2025-09-19 18:21:15 +02:00
Christian Beutel
1632bc4f34 update pocketbase to 0.30.0 2025-09-19 15:47:43 +02:00
Christian Beutel
5580832675 fixes waypoint update/delete 2025-09-19 14:02:03 +02:00
Christian Beutel
72acac072c fixes strava integration 2025-09-13 16:04:48 +02:00
Christian Beutel
962fddc1e2 adds dedup command 2025-09-13 13:27:23 +02:00
Christian Beutel
24908993fa adds index to activity_actors table 2025-09-13 12:36:22 +02:00
Christian Beutel
b2be48a282 improves initial meilisearch indexing speed 2025-09-13 11:33:19 +02:00
Christian Beutel
73d20b1cbc reverses waypoint relation 2025-09-12 17:48:41 +02:00
Christian Beutel
9c628c6511 cache public meilisearch key 2025-09-12 16:45:50 +02:00
Christian Beutel
3b7f30908c fixes sorting by difficulty 2025-09-07 17:59:35 +02:00
Christian Beutel
64579808a9 fixes duplicate trails 2025-08-31 16:41:03 +02:00
Christian Beutel
c6042db9a8 fixes permission issues for non-public trails 2025-08-29 15:18:44 +02:00
Christian Beutel
a8de5d075f adds es, eu, ru translations 2025-08-24 15:23:54 +02:00
Christian Beutel
a00d92e93b fixes actor discovery 2025-08-24 14:59:50 +02:00
Christian Beutel
a02c6698c5 update db alpine version 2025-08-24 11:19:55 +02:00