Thomas Citharel
6d599441a9
Allow group members to access group drafts
...
Closes #843
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-13 19:57:14 +01:00
Thomas Citharel
6a63ece91f
Fix updating group physical address
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-13 19:57:14 +01:00
Thomas Citharel
63e7807f0d
Fix group map display
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-13 19:57:13 +01:00
Thomas Citharel
18cd7c11f1
Fix error when determining audience for Discussion
...
Closes #873
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-13 11:46:25 +01:00
Thomas Citharel
bd2f5f8c1b
Update translations
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-12 17:17:06 +01:00
Thomas Citharel
f287b9126e
Improve the AP representation and move endpoints to property
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-12 17:17:05 +01:00
Thomas Citharel
6eba531c89
Allow group admins to moderate new members
...
Closes #881
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-12 17:17:05 +01:00
Thomas Citharel
ae24fa17d5
Refactor Mobilizon.Service.Activity.Member
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-12 17:16:55 +01:00
Thomas Citharel
38a3ffc19f
Send event creation and event update notifications in a background task
...
The event update notification is made unique so that repeated changes
only trigger one notificate every 30 minutes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-11 16:29:38 +01:00
Thomas Citharel
8250d34597
Debug log the output of an Create Event error
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-10 20:44:52 +01:00
Thomas Citharel
afff01d6d2
Set an event UUID if default is nil
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-10 20:44:51 +01:00
Thomas Citharel
aaf9c2c931
Refactor fetching medias from event attachements
...
Use first attachement Document if none has the Banner name
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-10 20:44:51 +01:00
Thomas Citharel
6822cfabf1
Add a default name for media if none is specified in AP
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-10 20:44:51 +01:00
Thomas Citharel
5c7067b22b
Send notification emails to followers and members when a group publishes
...
a new event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-10 16:36:32 +01:00
Thomas Citharel
cf69c8b375
Break line after notification settings in emails
...
Closes #913
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-09 12:59:53 +01:00
Thomas Citharel
2401abedb5
Include organizer actor in icalendar export
...
Closes #907
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-09 11:50:35 +01:00
Thomas Citharel
3961a2067b
Fix search exposing events to unlogged users
...
Closes #892
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-09 09:15:32 +01:00
Thomas Citharel
729a6a7113
Add custom task to update tz_world data
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-09 09:15:31 +01:00
Thomas Citharel
41eb62bc2b
Remove tzworld loading dynamically
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-09 09:15:31 +01:00
Thomas Citharel
ea276fbe73
Detect if Python3 is installed before launching PythonPort Genserver
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-09 09:15:31 +01:00
Thomas Citharel
5de0cee025
Allow to access to a language directly though instance.tld/:lang
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-07 21:09:31 +01:00
Thomas Citharel
7c4a76cc89
More bidi improvements
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-07 21:09:30 +01:00
Thomas Citharel
f55ca90c35
Allow to search for past events
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-07 18:12:23 +01:00
Thomas Citharel
a46372094c
Add dir="auto" to most user generated content
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-07 18:12:22 +01:00
Thomas Citharel
69e91e89f5
Allow to search events by online status
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-06 14:39:23 +01:00
Thomas Citharel
4de39d5850
Improve searching for group actors
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-06 10:50:48 +01:00
Thomas Citharel
4fc044c595
Expose group physical address to AP
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-06 10:28:08 +01:00
Thomas Citharel
8519364e77
Fix action logs containing group suspension events
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-04 18:38:47 +01:00
Thomas Citharel
52e90fb320
Only add address and tags to event icalendar export if present
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-04 18:38:25 +01:00
Thomas Citharel
52ea2ff579
Add relay followers to recipients when sending public entity
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-04 09:08:05 +01:00
Thomas Citharel
75fbcb985c
Only send Tombstone with Delete activity, not the object itself
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-04 09:04:59 +01:00
Mayel
5e64d0515e
format
2021-11-03 14:27:19 +01:00
Mayel
475c72597e
ignore incoming federated private comments
2021-11-03 14:27:19 +01:00
Thomas Citharel
54116686c8
Remove non existing page from sitemap
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-03 10:14:43 +01:00
Thomas Citharel
2b3a0f19b9
Fix backend tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-03 10:14:43 +01:00
Thomas Citharel
f44e466194
Increase complexity
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:39 +01:00
Thomas Citharel
b12cea5ead
Allow to get group followed events after a certain date
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:39 +01:00
Thomas Citharel
23fddaedf1
[GraphQL] Expose events from followed/member group activity
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:26 +01:00
Thomas Citharel
88b078ebce
Increase the number of related events to 4 and refactor function
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:26 +01:00
Thomas Citharel
6cdc68e1a8
Allow to fetch Application actors
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:25 +01:00
Thomas Citharel
d0b125064f
Improvements to group following
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:25 +01:00
Thomas Citharel
59edfe26cc
Improve notifier filter handing to avoid compiler cycle
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:24 +01:00
Thomas Citharel
bac6628aea
Improve changing current actor
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:24 +01:00
Thomas Citharel
d0b45de175
Expose person follows
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:23 +01:00
Thomas Citharel
f315685deb
Handle already following group
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:23 +01:00
Thomas Citharel
358be2aac6
Remove reloading tzworld
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:22 +01:00
Thomas Citharel
44e8ac7e9a
Add support for GraphQL handling of group follows
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-02 19:50:21 +01:00
Thomas Citharel
3b63c2928e
Add more metadata elements
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-22 09:41:36 +02:00
Thomas Citharel
df22082f3e
Fix posts not able to accept existing tags
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-20 11:50:39 +02:00
Thomas Citharel
3ecc2cbad7
Fix group profile being inaccessible
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-20 11:50:22 +02:00
Thomas Citharel
0792bf5445
Update tzworld at runtime
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-19 12:18:03 +02:00
Thomas Citharel
f24ec89408
Fix event notification tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:14:46 +02:00
Thomas Citharel
f31454c692
Add json_ld info to more emails
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:14:46 +02:00
Thomas Citharel
f9ddeb80fb
Add offer_unsupscription parameter to emails
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:14:45 +02:00
Thomas Citharel
bd4fad3c58
Improve emails
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:13:37 +02:00
Thomas Citharel
aca2ed612e
Add datetime_to_date_string/3 and is_same_day?/2 to Mobilizon.Service.DateTime
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:13:37 +02:00
Thomas Citharel
7ecf2e1da0
Add isOnline event option to mark event as fully online
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:13:37 +02:00
Thomas Citharel
676fab7871
Embed json-ld metadata on events in emails
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:13:36 +02:00
Thomas Citharel
555ae867ea
Add code to participants
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:13:35 +02:00
Thomas Citharel
4de78f58e0
Allow anonymous participants to have timezone metadata
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:13:35 +02:00
Thomas Citharel
a9e36aaacb
Show correct timezone in event-related emails
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:13:33 +02:00
Thomas Citharel
cd89efa1e3
Export timezone in ICS files
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:12:18 +02:00
Thomas Citharel
4ca831a5b3
Federate timezone
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-18 11:12:18 +02:00
Thomas Citharel
b383d11f51
Fix backend tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-12 08:49:12 +02:00
Thomas Citharel
62af1e72d6
Some fixes
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-11 17:56:23 +02:00
Thomas Citharel
d58ca5743d
Add timezone handling
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-11 17:37:17 +02:00
setop
7940d69d5a
add "only platform admin can create groups" and "only groups can create events" restrictions
2021-10-11 15:59:59 +02:00
Thomas Citharel
dee7c58449
Spec fixes
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-11 15:14:54 +02:00
Thomas Citharel
98449b9cfd
Spec fixes
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-05 16:05:52 +02:00
Thomas Citharel
f4284e1d3a
Remove unused functions
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-05 16:05:51 +02:00
Thomas Citharel
0c667b13ae
Export participants to different formats
...
* CSV
* PDF (requires Python dependency `weasyprint`)
* ODS (requires Python dependency `pyexcel_ods3`)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-05 10:52:55 +02:00
Thomas Citharel
5dd24e1c9e
Allow to change an user's password through the users.modify mix task
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-10-04 17:38:37 +02:00
Thomas Citharel
8235f4c7b5
Migrate .html.eex template files to .html.heex
...
See https://gist.github.com/chrismccord/2ab350f154235ad4a4d0f4de6decba7b#rename-your-htmleex-and-htmlleex-templates-to-htmlheex-optional
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 16:17:44 +02:00
Thomas Citharel
2b808d998e
Delete participations after warning participants
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:12 +02:00
Thomas Citharel
98b840190d
Refactor HTTP signatures
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:12 +02:00
Thomas Citharel
74145dc520
Fix templates from suspension information emails
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:11 +02:00
Thomas Citharel
4a7c6a861e
Improve the way the instance name is injected into emails
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:10 +02:00
Thomas Citharel
6edeeef9a9
Fix styling issue when informing from actor suspension
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:09 +02:00
Thomas Citharel
fd980176bc
Add some debug logging to actor suspension process
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:09 +02:00
Thomas Citharel
0f8358b96a
Add & improve some typespecs
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:08 +02:00
Thomas Citharel
35b83950d4
Fix an issue when showing public page of suspended group
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-30 15:58:07 +02:00
Thomas Citharel
fa25ffbc83
Add some typespecs
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-29 19:12:33 +02:00
Thomas Citharel
c924975d40
Fix a typespec issue
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-29 18:22:47 +02:00
Thomas Citharel
c5624ae33d
Fix an issue when leaving a group
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-29 18:22:32 +02:00
Thomas Citharel
b5d9b82bdd
Refactor Mobilizon.Federation.ActivityPub and add typespecs
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-29 16:31:11 +02:00
Thomas Citharel
41f086e2c9
Spec improvements
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-27 09:42:12 +02:00
Thomas Citharel
55e7696230
Absinthe middleware actor provider
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-27 09:42:11 +02:00
Thomas Citharel
1893d9f55b
Various refactoring and typespec improvements
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-26 17:52:24 +02:00
Thomas Citharel
75e254d8b4
Actor suspension refactoring
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-26 17:52:23 +02:00
Thomas Citharel
e9fecc4d24
Disable support for e2e tests for now
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-26 17:52:22 +02:00
Thomas Citharel
28a2efc6eb
Add request context to Sentry
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-26 17:52:22 +02:00
Thomas Citharel
acbe0e6c59
Fix rendering metadata from deleted (empty) comments
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-26 17:52:22 +02:00
Thomas Citharel
e9e12500dc
Fix tags autocomplete
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-26 17:52:21 +02:00
Thomas Citharel
de047c8939
Various typespec and compilation improvements
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-26 17:52:20 +02:00
Thomas Citharel
c2c3014c2b
Show a default text for contact in default terms text when no contact is
...
filled
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-07 17:41:27 +02:00
Thomas Citharel
cc197d7638
Fix federating geo coordinates
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-09-06 12:46:29 +02:00
Thomas Citharel
24ff99ffaf
Search should return only groups, don't show user profiles
...
Closes #845
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-23 11:17:32 +02:00
Thomas Citharel
ab843dff4c
Fixed deduplicated files from orphan media being deleted as well
...
Happens when a file is uploaded, then orphaned, and a similar file is
used somewhere. The CleanMedia job service didn't consider that case
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-22 16:17:20 +02:00
Thomas Citharel
d577b07c6e
Introduce event language detection
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-20 18:01:29 +02:00
Thomas Citharel
7c9b76765f
Cleanup
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-20 18:00:21 +02:00
Thomas Citharel
46bfa2c422
Add a default timezone if user's timezone is set to null
...
Closes #746
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-20 16:54:34 +02:00
Thomas Citharel
a3d02184f0
Fix sitemap creation on Docker
...
Docker is installed at root but priv/ lies in lib/mobilizon-x/
We can use Application.app_dir(:mobilizon, "priv/static") to get the
correct path
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-19 15:23:33 +02:00
Thomas Citharel
de102755f8
Add sane limits to feeds
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-16 16:23:13 +02:00
Thomas Citharel
f204141262
Content is visible only @ap_public is in "to"
...
Closes #711
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-16 11:16:45 +02:00
Thomas Citharel
34e2c4f310
Fix geocoordinates mixmatch
...
Closes #828
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-16 10:23:16 +02:00
Thomas Citharel
e05735265b
Fix remote group moderators managing event participations
...
Closes #827
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-13 12:24:30 +02:00
Thomas Citharel
4df1eab2b2
Fix GraphiQL in prod as well
...
Closes #708
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-12 16:21:42 +02:00
Thomas Citharel
53a3dc6fab
Extract blurhash into it's own filter
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-12 10:30:56 +02:00
Thomas Citharel
70bb3f3dd7
Put updated sizes in the upload when resizing
...
Closes #823
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-12 10:10:45 +02:00
Thomas Citharel
cfffe5b248
Better handle deleted comments
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-10 20:49:46 +02:00
Thomas Citharel
6f9db37ca3
Fix checking origin from a tombstone
...
When comparing an activity with their origin, only compare the ID
directly, as Tombstones don't have actors anymore
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-10 20:49:45 +02:00
Thomas Citharel
56861d6483
Fix audience for comments under a remote event from group
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-10 12:46:44 +02:00
Thomas Citharel
d3a05b5568
Federate metadata
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-10 12:46:44 +02:00
Thomas Citharel
0cb43515bc
Fix language and redirection issues when connecting from 3rd-party
...
Closes #626
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-09 19:29:15 +02:00
Thomas Citharel
5f3d1f89df
Allow to add metadata to an event
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-09 16:16:14 +02:00
Thomas Citharel
33bf8334fe
Allow all rel values for event & post links in descriptions
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-09 14:26:19 +02:00
Thomas Citharel
783486a366
Support denying registration based on email or domain
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-08 19:56:33 +02:00
Thomas Citharel
51cd066a14
Add resizing filter to make sure pictures are not too big
...
Closes #810
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-05 16:10:03 +02:00
Thomas Citharel
f3a05929d9
Allow members-restricted posts to be viewable by instance moderators
...
But add a warning message on top of the post
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-05 16:10:03 +02:00
Thomas Citharel
93ba408671
Improve group profile metadata
...
* Add canonical link
* Add link alternate to application/activity+json representation
* add robots noindex on remote profiles
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-04 10:49:02 +02:00
Thomas Citharel
d0ff547417
Fix a typo in a with clause in Upload module
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-03 18:47:28 +02:00
Thomas Citharel
bd71dd6cf1
Handle SSL being already started in LDAP connection
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-03 14:58:06 +02:00
Thomas Citharel
cceb083ad7
Improve error reporting and add test
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-03 12:15:54 +02:00
Thomas Citharel
056146a566
Translate two backend errors from password change
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-02 19:31:16 +02:00
Thomas Citharel
8c480af4bd
Upgrade deps
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-02 18:11:22 +02:00
Thomas Citharel
a5822d179c
Fix editing event from original instance on a group event
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-02 11:45:50 +02:00
Thomas Citharel
630de6fee9
Add Actors.get_single_group_moderator_actor/1 and refactor
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-02 11:45:49 +02:00
Thomas Citharel
c788c020db
Fix updating event organizer actor
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-02 11:45:49 +02:00
Thomas Citharel
4b864ba423
Allow to use inline "Join" when processing an Accept
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-02 11:45:48 +02:00
Thomas Citharel
099b85e9a9
Refactor audience to introduce maybe_add_followers/2
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:23 +02:00
Thomas Citharel
e6c05c481a
Fix variables names
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:22 +02:00
Thomas Citharel
ecf7bb1fef
Various event AP converter changes and add tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:22 +02:00
Thomas Citharel
caf9493a00
Various changes needed for AP refactor
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:22 +02:00
Thomas Citharel
78dc7613bc
Refactor Mobilizon.Federation.ActivityPub.Audience and add tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:21 +02:00
Thomas Citharel
221dd0609e
Fix accessing group draft post
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:21 +02:00
Thomas Citharel
011128b0fb
Make sure draft events are not selected in search
...
Closes https://framagit.org/framasoft/mobilizon/-/issues/807
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:21 +02:00
Thomas Citharel
acd921432f
Refactor checking permissions when managing events and tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:21 +02:00
Thomas Citharel
ecfcc4fe83
Don't preload just public events, group draft can be fetched as well
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:20 +02:00
Thomas Citharel
6066a44ae8
Change can_be_managed_by/2
to can_be_managed_by?/2
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:20 +02:00
Thomas Citharel
505b16611b
Fix event local detection
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:20 +02:00
Thomas Citharel
8b2ddbda2b
Fix whether group draft events should federate or not
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:20 +02:00
Thomas Citharel
20ff0a7f6c
Refactor Mobilizon.Federation.ActivityPub.Permission to handle
...
permissions
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:19 +02:00
Thomas Citharel
c394f2cc5a
Use Permission module to check if user can have access to resource
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:18 +02:00
Thomas Citharel
0995043d04
Add the :role_needed_to_access permission check and refactor
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:17 +02:00
Thomas Citharel
867e88481d
Fix getting visibility from AP Post
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-08-01 10:51:17 +02:00
Thomas Citharel
a670a7d7a7
Fix and improve language handling
...
- Refactor plugs to detect and set language
- Translate ecto validation errors
- Use Gettext directly, not Mobilizon.Web.Gettext
- Set the language in the <html> attribute according to the one loaded
on front-end
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-07-27 20:11:56 +02:00
Thomas Citharel
ae25cba97a
Use correct default language when no Accept-Language is set
...
Closes #792
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-07-22 17:01:34 +02:00
Thomas Citharel
cc33ee7ada
Merge branch 'fix-unattached-media-cleanup' into 'master'
...
Refactor the query to detect unattached media
See merge request framasoft/mobilizon!996
2021-07-22 14:40:03 +00:00
Thomas Citharel
fa8cae681f
Add possibility to create users with provider (such as LDAP)
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-07-22 15:09:12 +02:00
Thomas Citharel
db1649ded8
Refactor the query to detect unattached media
...
The previous one was going 💥 in production
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-07-21 19:44:13 +02:00
Thomas Citharel
c6098b33e3
Merge branch 'event-description-new-tabs' into 'master'
...
Add target to allowed attributes on <a> links so that links open in new tabs
Closes #786
See merge request framasoft/mobilizon!988
2021-07-21 09:30:49 +00:00
Thomas Citharel
a31e97110b
Merge branch 'rootwork-master-patch-42184' into 'master'
...
Correct link in password reset email, from demo site forum to Mobilizon forum
Closes #779
See merge request framasoft/mobilizon!981
2021-07-21 09:03:26 +00:00
Ivan Boothe
3f0e189a04
Correct link in password reset email, from demo site forum to Mobilizon forum
2021-07-21 09:03:26 +00:00
Thomas Citharel
d7bcfd5be6
Add target to allowed attributes on <a> links so that links open in new
...
tabs
Closes #786
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-07-21 10:34:07 +02:00
Thomas Citharel
11e75eaf66
Add the possibility to create profiles and groups from CLI
...
- Create an actor at the same time when creating an user
- or create either a profile and attach it to an existing user
- or create a group and set the admin to an existing profile
Closes #785
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-07-20 18:29:38 +02:00
Thomas Citharel
b196719238
Remove unsafe-inline from CSP
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-07-02 09:46:38 +02:00
Thomas Citharel
69e3db1e9b
Fix push notifications for group, members & post activities
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-30 12:16:06 +02:00
Thomas Citharel
f5aa7ffa74
Fix crash when trying to notify activities not from groups
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-30 10:13:57 +02:00
Thomas Citharel
57b71cb85a
Fix typo in user.modify task help text
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-28 17:23:17 +02:00
Thomas Citharel
b782ca6527
Replace GraphiQL with graphql-playground
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-28 12:07:43 +02:00
Thomas Citharel
bac2d3188c
Fix GraphiQL CSP headers
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-28 11:57:11 +02:00
Thomas Citharel
5cdac95a85
Send announcement notifications to anonymous participants
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-27 18:16:34 +02:00
Thomas Citharel
ed182e358b
Fix scheduler test
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-27 16:18:53 +02:00
Thomas Citharel
7ec6f158ec
Add wrapper to Sentry to not load it when not configured
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-27 15:21:33 +02:00
Thomas Citharel
3ed25bab81
Send notifications to event organizer when new comment is posted
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-27 13:16:17 +02:00
Thomas Citharel
93297931bb
Disable Cldr warning that it didn't match any language
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-27 13:16:17 +02:00
Thomas Citharel
b1eeebe05a
Default to UTC when no timezone in user settings in recaps
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-26 17:52:07 +02:00
Thomas Citharel
2ec7457783
Handle actor being something else than Group or Person when deleting it
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-26 17:22:34 +02:00
Thomas Citharel
0ca6997f7f
Add a task to generate web_push key pairs
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-26 16:09:03 +02:00
Thomas Citharel
784c607c65
Send activity digests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-26 16:09:02 +02:00
Thomas Citharel
7a6667bd3b
Make mentions send notifications
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-23 20:12:13 +02:00
Thomas Citharel
6c6ae7c712
Fix resource preview crash when resource has no image_remote_url
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-22 17:13:04 +02:00
Thomas Citharel
7bb8568504
Add an unique index on posts URLs
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-22 16:51:21 +02:00
Thomas Citharel
8caf1e302b
Add basic metadata to opengraph preview
...
Also refactor datetime & address utils
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-22 16:01:55 +02:00
Thomas Citharel
691d71d9f7
Decode URI sent in notification payloads
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-17 16:19:35 +02:00
Thomas Citharel
3c2dfba880
Add .ics to the event files names attached to email
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-16 17:42:50 +02:00
Thomas Citharel
725a3c8b9e
Fix accessing outdated page of group
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-16 11:27:14 +02:00
Thomas Citharel
33838974c5
Improve resources display on mobile
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-14 15:13:08 +02:00
Thomas Citharel
24b94d1860
Add pagination to resources
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-14 15:12:38 +02:00
Thomas Citharel
19792abd41
Better handling of bad host-meta responses
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-10 15:18:12 +02:00
Thomas Citharel
a24e08a6de
Add blurhash support to backend
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-10 15:18:08 +02:00
Thomas Citharel
a336e76aae
Run mix format on Elixir 12
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-07 16:49:43 +02:00
Thomas Citharel
95913ba28b
Handle crypto for different OTP versions better in media proxy
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-07 16:39:14 +02:00
Thomas Citharel
005f7e20ca
Remove compile-time dependencies for some config values
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-07 10:24:57 +02:00
Thomas Citharel
8298f50b3d
Fix metadata injection in html
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-06 20:25:16 +02:00
Thomas Citharel
f100fce0da
Finally fix backend tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 16:32:26 +02:00
Thomas Citharel
d3164899f3
Fix tests
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:26 +02:00
Thomas Citharel
c0ab3d9905
Fix credo warnings
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:25 +02:00
Thomas Citharel
37c1790273
Test CommentActivity legacy notifications
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:25 +02:00
Thomas Citharel
57c07836aa
Add a test to LegacyNotifierBuilder
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:25 +02:00
Thomas Citharel
58bffc5c66
WIP notification settings
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:25 +02:00
Thomas Citharel
6adbbc6a1d
Handle accessing ws socket without auth
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:25 +02:00
Thomas Citharel
15b3940262
Revoke old refresh token when doing a refresh token rotation
...
See
https://auth0.com/blog/securing-single-page-applications-with-refresh-token-rotation/
for details for instance
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:24 +02:00
Thomas Citharel
a7da5ab269
Improve JWT tokens expiration
...
- Reduce access tokens TTL to 15 minutes
- Set refresh tokens TTL to 60 days
- Set Guardian.DB to only track refresh tokens
- Remove refresh token when logging out
Closes #710 #705 #706
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:22 +02:00
Thomas Citharel
6cf6e47ec7
Only show errors in tasks
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:21 +02:00
Thomas Citharel
c9700906f5
Paginate the list of conversations
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:20 +02:00
Thomas Citharel
bab751591f
Make sure we have a valid timezone
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:19 +02:00
Thomas Citharel
679600f003
Comment fixes
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:18 +02:00
Thomas Citharel
b5a5de5c0c
Event edit and participant fixes
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:18 +02:00
Thomas Citharel
80f951680f
Order actor organized events by begins_on
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-06-04 13:33:17 +02:00