Commit graph

200 commits

Author SHA1 Message Date
Evgenii Burmakin
18b13fb915
Add yearly digest (#2073)
* Add yearly digest

* Rename YearlyDigests to Users::Digests

* Minor changes

* Update yearly digest layout and styles

* Add flags and chart to email

* Update colors

* Fix layout of stats in yearly digest view

* Remove cron job for yearly digest scheduling

* Update CHANGELOG.md

* Update digest email setting handling

* Allow sharing digest for 1 week or 1 month

* Change Digests Distance to Bigint

* Fix settings page
2025-12-28 17:33:35 +01:00
Evgenii Burmakin
9e933aff9c
Fix/stats cache invalidation (#2072)
* Fix family layer toggle in Map v2 settings for non-selfhosted env

* Invalidate cache

* Remove comments

* Remove comment
2025-12-27 13:33:54 +01:00
Evgenii Burmakin
516cfabb06
Fix/pre epoch time (#2019)
* Use user timezone to show dates on maps

* Limit timestamps to valid range to prevent database errors when users enter pre-epoch dates.

* Limit timestamps to valid range to prevent database errors when users enter pre-epoch dates.

* Fix tests failing due to new index on stats table

* Fix failing specs
2025-12-09 00:17:24 +01:00
Evgenii Burmakin
4421a5bf3c
Feature/maplibre frontend (#1953)
* Add a plan to use MapLibre GL JS for the frontend map rendering, replacing Leaflet

* Implement phase 1

* Phases 1-3 + part of 4

* Fix e2e tests

* Phase 6

* Implement fog of war

* Phase 7

* Next step: fix specs, phase 7 done

* Use our own map tiles

* Extract v2 map logic to separate manager classes

* Update settings panel on v2 map

* Update v2 e2e tests structure

* Reimplement location search in maps v2

* Update speed routes

* Implement visits and places creation in v2

* Fix last failing test

* Implement visits merging

* Fix a routes e2e test and simplify the routes layer styling.

* Extract js to modules from maps_v2_controller.js

* Implement area creation

* Fix spec problem

* Fix some e2e tests

* Implement live mode in v2 map

* Update icons and panel

* Extract some styles

* Remove unused file

* Start adding dark theme to popups on MapLibre maps

* Make popups respect dark theme

* Move v2 maps to maplibre namespace

* Update v2 references to maplibre

* Put place, area and visit info into side panel

* Update API to use safe settings config method

* Fix specs

* Fix method name to config in SafeSettings and update usages accordingly

* Add missing public files

* Add handling for real time points

* Fix remembering enabled/disabled layers of the v2 map

* Fix lots of e2e tests

* Add settings to select map version

* Use maps/v2 as main path for MapLibre maps

* Update routing

* Update live mode
2025-12-06 20:34:49 +01:00
Eugene Burmakin
52eb80503d Rework usage of OIDC auto-registration and email/password registration settings to use constants instead of direct ENV access. 2025-11-24 20:04:31 +01:00
Evgenii Burmakin
b1393ee674
0.36.0 (#1952)
* Implement OmniAuth GitHub authentication

* Fix omniauth GitHub scope to include user email access

* Remove margin-bottom

* Implement Google OAuth2 authentication

* Implement OIDC authentication for Dawarich using omniauth_openid_connect gem.

* Add patreon account linking and patron checking service

* Update docker-compose.yml to use boolean values instead of strings

* Add support for KML files

* Add tests

* Update changelog

* Remove patreon OAuth integration

* Move omniauthable to a concern

* Update an icon in integrations

* Update changelog

* Update app version

* Fix family location sharing toggle

* Move family location sharing to its own controller

* Update changelog

* Implement basic tagging functionality for places, allowing users to categorize and label places with custom tags.

* Add places management API and tags feature

* Add some changes related to places management feature

* Fix some tests

* Fix sometests

* Add places layer

* Update places layer to use Leaflet.Control.Layers.Tree for hierarchical layer control

* Rework tag form

* Add hashtag

* Add privacy zones to tags

* Add notes to places and manage place tags

* Update changelog

* Update e2e tests

* Extract tag serializer to its own file

* Fix some tests

* Fix tags request specs

* Fix some tests

* Fix rest of the tests

* Revert some changes

* Add missing specs

* Revert changes in place export/import code

* Fix some specs

* Fix PlaceFinder to only consider global places when finding existing places

* Fix few more specs

* Fix visits creator spec

* Fix last tests

* Update place creating modal

* Add home location based on "Home" tagged place

* Save enabled tag layers

* Some fixes

* Fix bug where enabling place tag layers would trigger saving enabled layers, overwriting with incomplete data

* Update migration to use disable_ddl_transaction! and add up/down methods

* Fix tag layers restoration and filtering logic

* Update OIDC auto-registration and email/password registration settings

* Fix potential xss
2025-11-24 19:45:09 +01:00
Eugene Burmakin
adcf6aceca Fix tests and remove unused policy files 2025-11-07 11:34:34 +01:00
Eugene Burmakin
2f160b8d97 Fix missing error messages on user registration and other forms 2025-11-07 11:08:57 +01:00
Eugene Burmakin
accf8ffbc9 Add tests for bulk_destroy action in PointsController 2025-11-07 10:03:15 +01:00
Eugene Burmakin
8e35b8e09f Move UTM parameter tracking logic into a concern 2025-10-30 19:59:31 +01:00
Eugene Burmakin
e1ee39ec52 Fix failing spec 2025-10-25 16:32:39 +02:00
Eugene Burmakin
d23e118645 Make sure family invitations are handled after sign-in 2025-10-22 21:36:51 +02:00
Eugene Burmakin
e711ff25fe Refactor family invitations and memberships into separate models and controllers 2025-10-07 18:38:06 +02:00
Eugene Burmakin
6057240888 Fix some tests 2025-10-05 00:42:21 +02:00
Eugene Burmakin
e7df54d738 Fix routes to use singular resource for family 2025-10-04 23:08:02 +02:00
Eugene Burmakin
54661a1d52 Update some tests and svg icons 2025-10-04 22:52:08 +02:00
Eugene Burmakin
9bc0e2accc Use family path instead of families/id 2025-10-04 22:39:47 +02:00
Eugene Burmakin
cfe319df9b Move family controllers to their own namespace 2025-10-04 20:48:44 +02:00
Eugene Burmakin
f898f3aab0 Fix tests 2025-10-04 20:31:36 +02:00
Eugene Burmakin
c6fc4328d7 Remove memberships page 2025-10-04 16:17:26 +02:00
Eugene Burmakin
78693f3001 Merge branch 'dev' into feature/family 2025-10-04 15:57:03 +02:00
Eugene Burmakin
0728c21c61 Update stuff, fix stuff 2025-09-29 22:27:07 +02:00
Eugene Burmakin
fa3d926a92 Change registration flow to support family invitations and self-hosted mode restrictions. 2025-09-28 20:53:50 +02:00
Eugene Burmakin
f30b4bcafd Use id to cancel invitations 2025-09-28 18:50:02 +02:00
Eugene Burmakin
5252388b8c Fix leaving and deleting family confirmation dialogs 2025-09-28 14:49:32 +02:00
Eugene Burmakin
2af0147505 Fix tests 2025-09-27 20:14:57 +02:00
Eugene Burmakin
f817e3513c Fix some tests 2025-09-27 14:26:08 +02:00
Eugene Burmakin
f0f0f20200 Complete phase 4 2025-09-27 14:04:10 +02:00
Eugene Burmakin
cc5da3e7e2 Complete phase 3 2025-09-27 13:23:33 +02:00
Eugene Burmakin
a84fde553e Fix failed specs 2025-09-23 00:18:04 +02:00
Eugene Burmakin
14f6f4dcc1 Add new tests to cover ios auth 2025-09-21 16:27:43 +02:00
Eugene Burmakin
20c2bc34cd Store client header in session to persist across redirects 2025-09-21 13:51:26 +02:00
Eugene Burmakin
5347232376 Update spec/requests/authentication_spec.rb 2025-09-21 13:22:07 +02:00
Eugene Burmakin
c0e756d085 Introduce iOS authentication flow with JWT token generation 2025-09-21 12:46:59 +02:00
Eugene Burmakin
584daadb5c Fix failing specs 2025-09-19 19:55:27 +02:00
Eugene Burmakin
5db2ac7fac Refactor hexagon services to remove Maps::HexagonContextResolver and improve date parsing 2025-09-18 21:21:54 +02:00
Eugene Burmakin
3fd7634657 Simplify some services by removing unused parameters and validations 2025-09-18 20:02:18 +02:00
Eugene Burmakin
c67532bb10 Reimplement hexagons with H3 2025-09-17 01:55:42 +02:00
Eugene Burmakin
8c45404420 Fix hexagons render 2025-09-15 20:10:53 +02:00
Eugene Burmakin
0ed71c3cc6 Fix failing specs 2025-09-13 17:46:45 +02:00
Eugene Burmakin
662d819f47 Update spec name 2025-09-13 16:10:46 +02:00
Eugene Burmakin
b7ae9097be Fix tests 2025-09-13 12:28:43 +02:00
Eugene Burmakin
88e9c85766 Extract hexagon query to separate class 2025-09-12 21:38:25 +02:00
Eugene Burmakin
57ecda2b1b Extract stats sharing logic to its own controller 2025-09-12 21:08:45 +02:00
Eugene Burmakin
34e71b5d17 Add specs for hexagon API and public sharing; remove debug logs 2025-09-12 20:44:53 +02:00
Eugene Burmakin
7ca488802e Remove text queries to location search endpoint 2025-09-03 19:01:50 +02:00
Eugene Burmakin
d4c0eaa549 Fix request specs 2025-09-02 23:12:10 +02:00
Eugene Burmakin
4f402a0c2a Make search look nicer 2025-09-02 21:21:22 +02:00
Eugene Burmakin
2d240c2094 Implement search by user's points 2025-08-31 12:08:33 +02:00
Eugene Burmakin
1709aa612d Add search bar 2025-08-30 23:18:16 +02:00