Commit graph

1255 commits

Author SHA1 Message Date
Thomas Citharel eda2761032
refactor(credo): Refactor to appease new credo checks (complexity and logging)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-04-19 18:33:06 +02:00
Thomas Citharel 8141bb0acb
feat(global-search): Add option values in debug log before calling global search service
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-04-19 12:14:03 +02:00
Thomas Citharel bcf6fd893c
fix(backend): Fix Mobilizon.Events.list_participations_for_user_query/1
Multiple on: following two join: declarations were not taken into account

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-04-19 12:00:40 +02:00
Thomas Citharel c07ba3a5d1
Add rate-limiting on queries with Hammer
Closes #67

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-24 15:32:27 +01:00
Thomas Citharel c4e9f88e85
Fix front-end stuff
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-24 15:32:26 +01:00
Thomas Citharel 986ae45f52
Add worker to clean obsolete application data, token revokation and spec conformance
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-24 09:18:53 +01:00
Thomas Citharel 59944603b7
Update deps and fix some front-end stuff
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-22 10:19:25 +01:00
Thomas Citharel 8984bd7636
Introduce authorizations with Rajska
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-22 10:19:25 +01:00
Thomas Citharel b6875f6a4b
Introduce device flow
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-22 09:34:11 +01:00
Thomas Citharel 2ee329ff7b
Introduce application tokens
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-22 09:34:10 +01:00
Thomas Citharel cfa1754ab5
Fix warnings in akismet service
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-03-22 09:34:09 +01:00
ljf 48ebdbb03a
[fix] LDAP connector with erland 24.3+ 2023-03-20 12:26:06 +01:00
Thomas Citharel 317a3434b2
feat(spam): Introduce checking new accounts, events & comments for spam with the help of Akismet
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-02-07 15:18:29 +01:00
Thomas Citharel 1db5c4ae2d
Save IP and login date from directly registered accounts
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-01-31 19:33:33 +01:00
Thomas Citharel 5c43713d85
Forgot call to clear_feeds_cache
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-01-31 15:22:22 +01:00
Thomas Citharel f531c39b7e
Make sure every cache is properly cleared when managing an event
Closes #1252

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-01-28 17:37:20 +01:00
Thomas Citharel 92d7de51d0
Add debug logging to locale
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-01-28 17:37:20 +01:00
Thomas Citharel 7e49a80df9
Fix formatting
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2023-01-16 10:08:32 +01:00
ljf ae05832cb5
[fix] LDAP connector with erland 24.3+ 2023-01-16 10:06:53 +01:00
Thomas Citharel 8e7907ec9e
Don't notify group members & followers from new draft event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-22 12:21:42 +01:00
Thomas Citharel aeaf22a224
Set correct Content-Type on all AP endpoints
Closes #1210

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-22 12:21:42 +01:00
Thomas Citharel 2e9414767c
Increase paging timeout to 30
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-22 12:21:42 +01:00
Thomas Citharel 3e15048843
Prevent AP collection page number being < 1
Closes #1184

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-21 16:57:54 +01:00
MickGe e1469a5eec
Fix: Assets in production environment
Closes #1197
2022-11-21 11:53:23 +01:00
Thomas Citharel 035ff134f5
Properly log if we can't notify group follower
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-07 19:44:16 +01:00
Thomas Citharel 16b1e0080c
Add fallback handler for can_send_activity?
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-07 19:37:59 +01:00
Thomas Citharel af3110955d
Handle suspending actors with special type
Closes #1183

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-07 19:37:59 +01:00
Thomas Citharel bb86ca5413
Handle :http_not_found as an error when deleting an object
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-07 19:37:59 +01:00
Thomas Citharel 7b2eb82d6f
Handle nothing found by unsplash for location
Closes #1187

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-07 19:37:59 +01:00
Thomas Citharel 1f23bb421e
Increase timeout needed to build page
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-07 18:55:49 +01:00
Thomas Citharel 67b63a9a6e
Fix ecto dev warning
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-07 09:02:09 +01:00
Thomas Citharel e7e4ed2ac9
Add Ecto.DevLogger in dev mode
See https://github.com/fuelen/ecto_dev_logger

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-06 16:56:04 +01:00
Thomas Citharel 96ba48cdb0
Handle error when fetching object from tombstone
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-06 15:29:34 +01:00
Thomas Citharel 994797c475
Fix front-end analytics csp config
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-06 15:14:04 +01:00
Thomas Citharel 30b0d3ca08
Add GraphQL operation name, user ID and actor name in logs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-06 13:03:53 +01:00
Thomas Citharel de8433cdbb
Add error details in error logging in Activity Update handler
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-06 11:33:09 +01:00
Thomas Citharel a51b36fb75
Fix building CSP policy
You can't use 'none' as a CSP Policy if there's other things among

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-04 16:47:24 +01:00
Thomas Citharel e31433cf83
Allow for resource providers to register a csp policy
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-04 11:50:15 +01:00
Thomas Citharel 57fac37347
Support CSP report_uri, report_to and the Report-To and Reporting-Endpoints headers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-04 10:55:26 +01:00
Thomas Citharel e97206077c
Add CSP Policy for pictures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-04 09:26:45 +01:00
Thomas Citharel 6058da0d44
Propertly handle other errors when receiving a comment
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-03 18:11:40 +01:00
Thomas Citharel 4bb90ebb3f
Properly handle replying to an event that has been deleted
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-03 18:02:32 +01:00
Thomas Citharel 770a518ad1
Properly handle un-needed background jobs
Cancel them if they're not needed

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-03 18:00:42 +01:00
Thomas Citharel c68c0c2120
Add context to error when removing an upload file following actor suspension
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-03 17:56:45 +01:00
Thomas Citharel d75a95cccd
Lower loglevel of resource insertion error
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-03 16:54:04 +01:00
Thomas Citharel 62dd1b85b7
Don't treat notification for a deleted event as an error
Just cancel the job

Closes #1180

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-03 09:50:33 +01:00
Thomas Citharel 4dede63b83
Remove unused variable
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-02 18:32:30 +01:00
Thomas Citharel 02381f2820
Fix deleting person detached from user
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-02 17:14:26 +01:00
Thomas Citharel 75296498c4
Do not list drafts in upcoming / old events event if moderator
Closes #1086

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-02 17:12:35 +01:00
Thomas Citharel dcfe87116e
Allow to view more than 10 drafts events on my events view
Closes #993

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-02 11:38:14 +01:00
Thomas Citharel a1726fc12e
Add sha-256 hash for toggling dark theme code and remove inlined phoenix digest
Follow-up to !1300

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-11-02 11:36:32 +01:00
Thomas Citharel 9a135bb67f
Add unique constraint on event URL
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-31 18:07:49 +01:00
Thomas Citharel 2e631d3633
Lower loglevel of error when creating a new person
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-31 18:07:28 +01:00
Thomas Citharel 470a3e594b
Correctly escape user-defined names in emails
Closes #1151

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-31 14:30:40 +01:00
Thomas Citharel 9ce618a267
Add an error log when we try to update the relay actor
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-31 11:42:51 +01:00
Thomas Citharel 2bf8148951
Fix fetching events with addresses that's not objects
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-28 19:13:13 +02:00
Thomas Citharel 579bcaba06
Allow to disable non-SSO login
With a new disable_database_login parameter under :mobilizon, :instance

Closes #1154

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-28 17:41:49 +02:00
Thomas Citharel e420713a6f
Add setting to toggle light/dark mode
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-28 17:41:49 +02:00
Thomas Citharel 8761556bac
Add logging for when cached iCalendar feed data can't be found
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-28 09:58:36 +02:00
Thomas Citharel 2454fe2aa4
Fix leaving a group
There's still an issue because the call is made twice, but at least it
works

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-26 18:45:47 +02:00
Thomas Citharel 5225431d60
Add distinct clause to search events
Closes #1174

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-25 19:04:37 +02:00
Thomas Citharel f0c1444be3 Merge branch 'lowercase-users-emails-when-resetting' into 'main'
Always lowercase the emails before trying to reset password

See merge request framasoft/mobilizon!1295
2022-10-18 17:07:36 +00:00
Thomas Citharel c9fffca046
Always lowercase the emails before trying to reset password
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-18 18:37:39 +02:00
Thomas Citharel ad0fc61994
Remove obscure reference to Douglas Adams
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-18 16:26:17 +02:00
Thomas Citharel 5bce26980a
Fix: Don't start mobilizon server when running migrations
Closes #1126 #1166 #743

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-13 11:59:36 +02:00
Thomas Citharel 699465199e
Lint fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-12 19:30:34 +02:00
Thomas Citharel c051e26380
Fix getting categories from global search engine
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-12 19:19:20 +02:00
Thomas Citharel 76ff11ceae
Don't add empty search parameters to global search engine
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-12 19:19:20 +02:00
Thomas Citharel 74581912f3
Only preload svg shapes on homepage
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-11 18:45:33 +02:00
Thomas Citharel b514d417c0
Add typespec for category_statistics
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-11 14:58:55 +02:00
Thomas Citharel 0d6626d55a Merge branch 'search-fixes' into 'main'
Fix global search term

See merge request framasoft/mobilizon!1281
2022-10-06 08:39:37 +00:00
Thomas Citharel 200e4d2c56 Merge branch 'handle-categories-from-global-search' into 'main'
Handle unknown categories from global search

See merge request framasoft/mobilizon!1280
2022-10-06 08:10:05 +00:00
Thomas Citharel 1a31d9b54e
Fix global search term
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-06 09:53:54 +02:00
Thomas Citharel 0758995ac7
Handle unknown categories from global search
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-06 09:32:47 +02:00
Thomas Citharel c080795955
Reconfigure plug at runtime with env
Closes #1165

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-06 08:59:50 +02:00
Thomas Citharel 620008ee0d
Fix group location edition
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-05 18:17:11 +02:00
Thomas Citharel fee4f9add8
Fix address selector
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-05 17:54:04 +02:00
Thomas Citharel 456e987af8
Performance improvements
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-05 13:18:38 +02:00
Thomas Citharel 5055bd4adc
Consider the events from the same organizer actor or group in first
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-03 19:45:29 +02:00
Thomas Citharel 1601153062
Add all proper filters for related events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-03 19:33:54 +02:00
Thomas Citharel f0c8fa2525
Handle events with no physical location
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-03 19:26:35 +02:00
Thomas Citharel 4f1465e84d
Add distinct on suggested events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-03 14:37:14 +02:00
Thomas Citharel ca9826e299
Improve related events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-10-03 14:02:25 +02:00
Thomas Citharel 8915a5caad
Fix Sentry registration
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-27 18:19:01 +02:00
Thomas Citharel 1087e19ee5
Enable E2E tests in CI
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-27 13:43:09 +02:00
Thomas Citharel 6f7d5f649b
Add participant info in event search results
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-26 10:29:58 +02:00
Thomas Citharel a37bab3b84
Fix some Dializer issue
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-26 10:29:58 +02:00
Thomas Citharel 530539c631
Make sure instance list is refreshed before notifying admin from new
instance follow

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-26 10:20:51 +02:00
Thomas Citharel 88b4f98c41
Make sure session cookie salt in AuthController is loaded dynamically
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-21 10:16:07 +02:00
Thomas Citharel 6675c62d94
Add unplug to dynamically load plugs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-21 10:15:47 +02:00
Thomas Citharel d2372d5700
fixup! Fix depreciated calls of fetch_env!/2 and get_env/2
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-21 10:15:28 +02:00
Thomas Citharel 009f90e0d7
Fix typo in subtemplate
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-21 08:55:14 +02:00
Thomas Citharel bbbaa81a6e
Fix depreciated calls of fetch_env!/2 and get_env/2
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-21 08:53:50 +02:00
Thomas Citharel 6a9fba7db8
Fix tests for CI
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-21 08:32:42 +02:00
Thomas Citharel 151a7e54ae
Fix lint issues, update deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-20 17:06:42 +02:00
Thomas Citharel 86ca52c2cb
Precompile latin to arab ICU transliterations
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-19 09:19:28 +02:00
Thomas Citharel eecb04516e
Add the map in search view
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-09-01 10:00:17 +02:00
Thomas Citharel 07b2447a07
Add missing case for :member_approved in email member activity
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-08-28 10:53:52 +02:00
Thomas Citharel 0e7ff25333
Fix a preload issue with actor suspension
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-08-28 10:52:44 +02:00
Thomas Citharel 4db13046b7
Provide an accept CSP policy for global search pictures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2022-08-28 10:02:06 +02:00