Commit graph

1090 commits

Author SHA1 Message Date
Eugene Burmakin
5252388b8c Fix leaving and deleting family confirmation dialogs 2025-09-28 14:49:32 +02:00
Eugene Burmakin
1f67e889e3 Complete phase 5 2025-09-28 13:10:07 +02:00
Eugene Burmakin
e17f732706 Minor changes 2025-09-27 21:14:40 +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
40fff59ec6 Complete Phase 2 implementation of Family feature with robust error handling 2025-09-27 13:03:48 +02:00
Eugene Burmakin
0d02f08199 Add implementation plan and complete phase 1 2025-09-27 00:46:29 +02:00
Eugene Burmakin
4287fee93d Fix tests after updating rubyzip 2025-09-26 23:31:45 +02:00
Evgenii Burmakin
8807950180
Merge branch 'dev' into staging-env 2025-09-26 19:50:25 +02:00
Eugene Burmakin
a53bd0a4bd Add staging environment configuration 2025-09-26 19:48:52 +02:00
Eugene Burmakin
15e27c87d5 Remove unused code 2025-09-26 19:47:12 +02:00
Eugene Burmakin
1506633441 Revert import changes 2025-09-26 19:45:18 +02:00
Eugene Burmakin
ea0d03f4b0 Merge branch 'dev', remote-tracking branch 'origin' into refactoring/user-data-import 2025-09-26 19:31:31 +02:00
Eugene Burmakin
38e3915404 Remove forced theme switching for maps based on OS theme. 2025-09-26 19:28:46 +02:00
Eugene Burmakin
7990298066 Update ruby version 2025-09-26 19:01:21 +02:00
Eugene Burmakin
7a7f0b09df Update map layers based on user theme preference (light/dark) and add theme-aware styling to map controls and buttons. 2025-09-26 18:49:13 +02:00
Eugene Burmakin
78ce3d9438 Add posthog analytics 2025-09-25 18:49:31 +02:00
Eugene Burmakin
315659d871 Fix path issue 2025-09-23 21:27:42 +02:00
Eugene Burmakin
63aa197a29 Update error message 2025-09-23 21:16:25 +02:00
Eugene Burmakin
6a0cc112dc Introduce limit for trial users: max 5 imports, 10MB per file 2025-09-23 21:14:55 +02:00
Eugene Burmakin
4627ed7a6f Speed up scheduling of visits suggestions job after import 2025-09-23 21:03:49 +02:00
Eugene Burmakin
031104cdaa Rework importing user data archive 2025-09-23 20:39:12 +02:00
Eugene Burmakin
a84fde553e Fix failed specs 2025-09-23 00:18:04 +02:00
Eugene Burmakin
54a2a29c18 Fix quietest_week to correctly calculate the quietest week in a month 2025-09-22 22:40:00 +02:00
Eugene Burmakin
6e44425e4e Recalculate stats when an import is deleted. 2025-09-22 20:30:10 +02:00
Eugene Burmakin
f8a05e68e3 Fix api point serializer to return correct latitude and longitude values 2025-09-22 20:01:58 +02:00
Eugene Burmakin
14f6f4dcc1 Add new tests to cover ios auth 2025-09-21 16:27:43 +02:00
Eugene Burmakin
ce4fcc29c3 Add data on subscription status to user serializer unless self-hosted 2025-09-21 15:41:07 +02:00
Eugene Burmakin
e3795981e3 Update registratuion_controller.rb to handle turbo_stream format for iOS auth 2025-09-21 15:27:17 +02:00
Eugene Burmakin
550b405398 Update form 2025-09-21 15:18:11 +02:00
Eugene Burmakin
c8d54f0ed6 Update application_controller to store client header in session 2025-09-21 14:12:18 +02:00
Eugene Burmakin
69cae258c9 Save html format if iOS client header is present 2025-09-21 14:00:24 +02:00
Eugene Burmakin
20c2bc34cd Store client header in session to persist across redirects 2025-09-21 13:51:26 +02:00
Eugene Burmakin
c0e756d085 Introduce iOS authentication flow with JWT token generation 2025-09-21 12:46:59 +02:00
Eugene Burmakin
339ba3130e Fix missing hexagons 2025-09-20 14:05:14 +02:00
Eugene Burmakin
c756346569 Refactor H3 hexagon calculation logic to improve clarity and maintainability 2025-09-20 13:23:24 +02:00
Eugene Burmakin
3450ca35b0 Extract hexagon calculation to its own service 2025-09-20 12:57:30 +02:00
Eugene Burmakin
2c55ca07e7 Remove permanent option from stats sharing options, default to 24h expiration. 2025-09-19 23:49:32 +02:00
Eugene Burmakin
a20a3c5b36 Fix missing hexes 2025-09-19 22:52:08 +02:00
Eugene Burmakin
584daadb5c Fix failing specs 2025-09-19 19:55:27 +02:00
Eugene Burmakin
2bd0390d1a Rename hexagon_centers to h3_hex_ids and update related logic 2025-09-19 00:23:12 +02:00
Eugene Burmakin
0cce4929f0 Remove unused code 2025-09-18 22:23:47 +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
a97e133b35 Remove unsed class 2025-09-18 20:15:49 +02:00
Eugene Burmakin
ab765a4370 Rename params 2025-09-18 20:10:00 +02:00
Eugene Burmakin
3fd7634657 Simplify some services by removing unused parameters and validations 2025-09-18 20:02:18 +02:00
Eugene Burmakin
0905ef65a5 Don't pass h3_resolution from frontend; use default in backend service 2025-09-18 19:45:53 +02:00
Eugene Burmakin
5b3fe84933 Update onborading popup 2025-09-18 18:29:46 +02:00
Eugene Burmakin
c67532bb10 Reimplement hexagons with H3 2025-09-17 01:55:42 +02:00
Eugene Burmakin
eb16959b9a Extract logic to service classes 2025-09-16 20:41:53 +02:00
Eugene Burmakin
8c45404420 Fix hexagons render 2025-09-15 20:10:53 +02:00
Eugene Burmakin
6314442770 Calculate only centers of hexagons 2025-09-14 12:41:16 +02:00
Eugene Burmakin
dc13bc1fd2 Update public_month page 2025-09-13 23:23:48 +02:00
Eugene Burmakin
a2aa1be271 Precalculate hexagons for stats 2025-09-13 23:11:42 +02:00
Eugene Burmakin
e6f74fc6ab Update query to use lonlat column for bounds calculation 2025-09-13 18:54:02 +02:00
Eugene Burmakin
f80b2a1aff Fix last failing specs 2025-09-13 18:30:26 +02:00
Eugene Burmakin
0ed71c3cc6 Fix failing specs 2025-09-13 17:46:45 +02:00
Eugene Burmakin
1394d6202c Fix potential sql injection 2025-09-13 17:04:48 +02:00
Eugene Burmakin
dcd1c7ab2b Add some refactorings 2025-09-13 16:41:28 +02:00
Eugene Burmakin
ea2fbfb325 Fix caching job specs 2025-09-13 15:58:36 +02:00
Eugene Burmakin
774860220e Add missing email templates for post-trial reminders 2025-09-13 15:37:09 +02:00
Eugene Burmakin
bfeeeee234 Merge branch 'dev', remote-tracking branch 'origin' into feature/follow-up-emails 2025-09-13 14:03:04 +02:00
Eugene Burmakin
5fe7a47ee2 Fix last failing test 2025-09-13 12:44:47 +02:00
Eugene Burmakin
d33a083f98 Replace bell in navbar with lucide icon 2025-09-13 12:12:40 +02:00
Eugene Burmakin
ef01d028ba Load leaflet protomaps only if not selfhosted on public month page 2025-09-13 12:07:29 +02:00
Eugene Burmakin
cc1fecfd22 Show QR code by default and use map tiles based on self-hosted setting 2025-09-13 11:58:50 +02:00
Eugene Burmakin
e583a8fb52 Remove unused js code 2025-09-12 23:08:11 +02:00
Eugene Burmakin
52a69ecf3d Fix hexagons 2025-09-12 22:23:17 +02:00
Eugene Burmakin
09174de6e9 Add refresh-ccw icon and use it in stats page for refresh link 2025-09-12 22:11:36 +02:00
Eugene Burmakin
9afbf3458d Remove unused icons 2025-09-12 22:04:16 +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
5ff35136f2 Add images for stats page backgrounds 2025-09-12 20:11:14 +02:00
Eugene Burmakin
612c30026c Add hexagons to public stats page 2025-09-12 08:33:51 +02:00
Eugene Burmakin
5cd05f8d3a Update public month page 2025-09-11 22:25:31 +02:00
Eugene Burmakin
1426fa53df Add header gradient based on month 2025-09-11 22:22:08 +02:00
Eugene Burmakin
d3bbd08890 Make year page more colorful and add month page 2025-09-11 22:12:44 +02:00
Eugene Burmakin
e8c5b3dfdc Update stats page 2025-09-11 21:41:52 +02:00
Eugene Burmakin
fc068ec79d Add Lucide icons and stats sharing 2025-09-11 20:41:43 +02:00
Eugene Burmakin
acd3b20ef5 Add stats month page 2025-09-11 00:19:34 +02:00
Eugene Burmakin
8604effbe1 Refactor some bits 2025-09-10 21:46:03 +02:00
Eugene Burmakin
99b227adfd Refactor specs 2025-09-08 21:15:41 +02:00
Eugene Burmakin
17b09c91da Refactor daily track generation to avoid cleaning existing tracks 2025-09-08 21:09:28 +02:00
Eugene Burmakin
410cd86c4e Implement a new daily track generation job to replace the old cleanup job. 2025-09-08 20:46:30 +02:00
Eugene Burmakin
68a0a8f23c Add follow up emails 2025-09-05 19:39:50 +02:00
Eugene Burmakin
e3b2fcd415 Sanitize input 2025-09-04 00:12:33 +02:00
Eugene Burmakin
5c6b76dd63 Hide search if reverse geocoding is disabled 2025-09-03 23:57:38 +02:00
Eugene Burmakin
9967434edc Escape search query 2025-09-03 23:27:59 +02:00
Eugene Burmakin
2b1f6d66bc Fix missing var 2025-09-03 20:05:03 +02:00
Eugene Burmakin
689b8cb0f1 Remove caching from geocoder 2025-09-03 19:56:38 +02:00
Eugene Burmakin
690f80766e Update location search to instantiate GeocodingService with query 2025-09-03 19:48:41 +02:00
Eugene Burmakin
b276828af3 Remove provider detection 2025-09-03 19:28:26 +02:00
Eugene Burmakin
7ca488802e Remove text queries to location search endpoint 2025-09-03 19:01:50 +02:00
Eugene Burmakin
e965c8c67c Remove system spec 2025-09-03 18:51:00 +02:00
Eugene Burmakin
83fc3106a0 Fix failing specs 2025-09-02 23:25:21 +02:00
Eugene Burmakin
71bb224524 Fix some tests 2025-09-02 21:55:47 +02:00
Eugene Burmakin
4f402a0c2a Make search look nicer 2025-09-02 21:21:22 +02:00
Eugene Burmakin
5eb3eb0024 Move search bar to left 2025-09-01 23:11:33 +02:00
Eugene Burmakin
daa3b4eed1 Move search bar to center 2025-09-01 22:58:33 +02:00
Eugene Burmakin
99dace21e4 Put search to a sidebar 2025-09-01 22:04:55 +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
Eugene Burmakin
ed5e4d1664 Update qr code 2025-08-30 21:32:25 +02:00
Eugene Burmakin
006456966d Fix last failing spec 2025-08-29 14:32:04 +02:00
Eugene Burmakin
30fb51940c Remove logs and unused code 2025-08-29 13:59:46 +02:00
Eugene Burmakin
289ce5dabb Enable tracks toggle when debug flag present 2025-08-29 12:21:26 +02:00
Eugene Burmakin
cf987894fe Fix failing specs 2025-08-29 11:52:56 +02:00
Eugene Burmakin
504bb92cdb Update points relation 2025-08-29 11:05:25 +02:00
Eugene Burmakin
5ab382936d Merge branch 'dev', remote-tracking branch 'origin' into feature/tracks-on-ruby 2025-08-29 10:57:08 +02:00
Eugene Burmakin
3e1ba6d183 Update changelog 2025-08-29 10:43:49 +02:00
Eugene Burmakin
9856ab56c6 Add default value for points_count attribute 2025-08-29 10:07:00 +02:00
Eugene Burmakin
22daed7291 Move welcome emails placement 2025-08-26 16:37:21 +02:00
Eugene Burmakin
b9c1a5ccdb Show api key to trial users 2025-08-26 16:09:58 +02:00
Eugene Burmakin
b8d69a6797 Reset counters for points counter cache 2025-08-26 15:26:05 +02:00
Evgenii Burmakin
02e6fb8a85
Merge branch 'dev' into feature/points-counter-cache 2025-08-26 15:09:48 +02:00
Eugene Burmakin
ce5ae8dc70 Fix logout bug 2025-08-25 23:35:11 +02:00
Eugene Burmakin
625b8e614f Fix failing spec 2025-08-23 21:57:25 +02:00
Eugene Burmakin
d400d3c9fd Fix minor issues 2025-08-23 19:09:18 +02:00
Eugene Burmakin
a6f4a931af Make sure no errors raised if source is nil or unknown 2025-08-23 18:46:00 +02:00
Eugene Burmakin
4a704ed608 Update gpx serializer 2025-08-23 18:37:51 +02:00
Eugene Burmakin
5a85a56897 Update imports table 2025-08-23 16:37:53 +02:00
Eugene Burmakin
432e1d2669 Return self-hosted validation 2025-08-23 16:28:25 +02:00
Eugene Burmakin
b049c11542 Fix import detection 2025-08-23 16:07:15 +02:00
Eugene Burmakin
001d294885 Source to_s 2025-08-22 22:14:03 +02:00
Eugene Burmakin
76a7c12133 Fix range issue 2025-08-22 21:27:50 +02:00
Eugene Burmakin
7b122f2780 Merge branch 'dev', remote-tracking branch 'origin' into feature/points-counter-cache 2025-08-22 21:01:51 +02:00
Eugene Burmakin
b5758db1c1 Add sources info to new import page 2025-08-22 21:01:16 +02:00
Eugene Burmakin
7eb3103645 Rename a method 2025-08-22 20:40:06 +02:00
Eugene Burmakin
96c9f1030c Move json loading to a module 2025-08-22 20:13:10 +02:00
Eugene Burmakin
ed3bb4fb67 Unify imports form 2025-08-22 19:10:40 +02:00
Eugene Burmakin
6e4934a93d Introduce points counter cache to optimize performance 2025-08-21 22:32:29 +02:00
Eugene Burmakin
a4605f9b3e Add swagger spec for visits api 2025-08-21 20:53:23 +02:00
Eugene Burmakin
550d20c555 Imlement visits deletion API 2025-08-21 20:41:53 +02:00
Eugene Burmakin
6e773b6b51 Add current location to a visit popup as a fallback 2025-08-21 19:52:51 +02:00
Eugene Burmakin
6f842e8143 Make visit popup look nicer 2025-08-21 19:48:32 +02:00
Eugene Burmakin
e68bbc9220 Add test for visits creation API 2025-08-21 19:09:43 +02:00
Eugene Burmakin
efc7ffa579 Extract visit creation to a service 2025-08-21 18:58:59 +02:00
Eugene Burmakin
1da3ef5c44 Add visits manual creation 2025-08-21 18:42:45 +02:00
Eugene Burmakin
86a76db2c0 Fix date nav hidden under navbar 2025-08-19 23:53:10 +02:00
Eugene Burmakin
c3c997be02 Add a separate layout for full screen map 2025-08-19 23:32:06 +02:00
Evgenii Burmakin
ead1673cc5
Merge branch 'dev' into feature/trial 2025-08-19 20:58:00 +02:00
Eugene Burmakin
b9764d39c3 Skip trial emails for active users 2025-08-19 18:55:22 +02:00
Eugene Burmakin
cdbd51c9f9 Update mailers 2025-08-19 18:31:37 +02:00
Eugene Burmakin
464a183e8f Fix spec 2025-08-19 18:29:34 +02:00
Evgenii Burmakin
4918ae94f4
Merge branch 'dev' into fix/trip-visited-countries 2025-08-18 20:54:16 +02:00
Eugene Burmakin
6708e11ab3 Add limits for import size for trial users 2025-08-14 20:50:22 +02:00
Eugene Burmakin
71488c9fb1 Add trial mode 2025-08-13 20:25:48 +02:00