Commit Graph

1006 Commits

Author SHA1 Message Date
Thomas Citharel
d1f0a9224a
Cleanup some dead code
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 16:45:38 +01:00
Thomas Citharel
702c7fa6d4
Rename is_local to is_local?
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 16:45:38 +01:00
Thomas Citharel
5b85d96e06
Handle errors when fetching actor pictures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 16:45:38 +01:00
Thomas Citharel
f35db6540b
Various HTTP signature code improvements
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 16:45:38 +01:00
Thomas Citharel
6f6d617eba
Fix actor AP representation of avatar
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 15:47:14 +01:00
Thomas Citharel
84bd1ccfad
Don't sign fetch when fetching actor for a given signature
Otherwise it's doing a loop

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 15:46:23 +01:00
Thomas Citharel
88067bd217
Expose and fetch event contacts
Close #829

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 15:45:05 +01:00
Thomas Citharel
d7ef8f3280
Adding some debug logs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 15:43:53 +01:00
Thomas Citharel
446c5f00ab
Add "formerType" and "delete" attributes on Tombstones objects
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 11:56:15 +01:00
Thomas Citharel
d291a83cc9
Warn when registering with email containing uppercase characters
Closes #884 and #803

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-16 11:38:17 +01:00
Thomas Citharel
be1664ec85
Improve sending pending participation notifications
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-15 16:59:40 +01:00
Thomas Citharel
85ceb1de47
Improve json-ld metadata on event live streams
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-15 12:11:29 +01:00
Thomas Citharel
bcf17fe30b
Add "eventAttendanceMode" to JSON-ld schema.org event representation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-15 11:08:18 +01:00
Thomas Citharel
fea97f3713
Fix creating an mz activity when updating an event with some subfields
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-15 11:03:06 +01:00
Thomas Citharel
b547f1f1ee
Handle Webfinger endpoint not returning 200
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-15 08:48:29 +01:00
Thomas Citharel
df2c184bc0
Refactor transmogrifier Delete to avoid spoofed Delete being accepted
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-15 08:48:28 +01:00
Thomas Citharel
55af776df9
Improve group refreshment and fixed date signature generation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2021-11-14 16:28:27 +01:00
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