Commit Graph

429 Commits

Author SHA1 Message Date
Thomas Citharel
15798e58e9 Fixup
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-08 15:04:53 +02:00
Thomas Citharel
fab3c3364f Provide metadata for tombstone
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-08 14:37:31 +02:00
Thomas Citharel
69f7e6ae23 Send Notifications when participation approval
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-08 13:59:27 +02:00
Thomas Citharel
5203d3c9fd Merge branch 'validate-number-of-places' into 'master'
Validate number of places being a positive integer

Closes #286

See merge request framasoft/mobilizon!440
2020-06-05 11:52:33 +02:00
Thomas Citharel
d76d60c0cb Validate number of places being a positive integer
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-05 11:38:49 +02:00
Thomas Citharel
c54fea9fc2 Merge branch 'event-address-update-trigger-change' into 'master'
Also send event updates if physical address changed

See merge request framasoft/mobilizon!438
2020-06-05 11:02:46 +02:00
Thomas Citharel
d0fbf11e4e Add weekly notification
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-05 10:27:02 +02:00
Thomas Citharel
2fbdf9ed6d Also send event updates if physical address changed
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-05 10:18:08 +02:00
Thomas Citharel
dbcc1c3633 Disable mix docs for now
Because of https://github.com/elixir-lang/ex_doc/issues/1172

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-04 10:58:27 +02:00
Thomas Citharel
083ed0ecdb Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-03 16:55:34 +02:00
Thomas Citharel
b36a9f1322 Introduce group basic federation, event new page and notifications
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-06-03 16:01:26 +02:00
Thomas Citharel
6fa768c2e9 Fix DateTime comparison
!420 used Date.compare/2 instead of DateTime.compare/2

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-04-14 17:50:17 +02:00
setop
d560c5d548 fix compare begin and end dates
this bug prevent from creating an event with the day of month of the begin date greater than the day of month of the end date, event if end date is effectively greater than begin date.

for example, if the begin date is '2020-04-28' and end date is '2020-05-13', these dates are valid but because 28 > 13, the validation fails.

this is better explained in this article ["Never compare dates in Elixir using < or >"](https://blog.leif.io/never-use-to-compare-dates/).

using Date.compare, as proposed in this PR fix the issue.
2020-04-03 23:37:56 +02:00
Thomas Citharel
acfe75768d Add ability to add message for participation and improve participation
management interface

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-03-06 09:00:48 +01:00
Thomas Citharel
4270c396a3 Blind key rotation and stale duration for profiles
See https://blog.dereferenced.org/the-case-for-blind-key-rotation

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-14 18:21:18 +01:00
Thomas Citharel
d6481a4540 Validate Date header in HTTPSignatures
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-14 09:22:17 +01:00
Thomas Citharel
3f24d79498 Allow to edit account email and delete account
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-13 16:21:26 +01:00
Thomas Citharel
1acdd82f7c Fix event link construction in emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-10 09:59:20 +01:00
Thomas Citharel
4f3b1d89b7 Fix event online URL AP attachment
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-07 18:41:36 +01:00
Thomas Citharel
e02f8f0012 Don't access remote events from non-federated instances when not logged
in

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-07 16:28:49 +01:00
Thomas Citharel
1bec806eb6 Add canonical link to the original event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-07 16:25:30 +01:00
Thomas Citharel
d93e941a17 Move configuration to traditional way
️ This is the way.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2020-02-06 16:12:13 +01:00
Thomas Citharel
2875d263d2 Add anonymous and remote participations 2020-01-29 17:28:11 +01:00
rustra
ca5a4fd83c Fix Credo code readability issues 2020-01-28 20:15:59 +01:00
rustra
bf2a36314b Implement Credo software design suggestions 2020-01-28 19:18:33 +01:00
rustra
c3358ca352 Fix mix format 2020-01-26 21:53:17 +01:00
rustra
55858805c1 Rename MobilizonWeb to Mobilizon.Web 2020-01-26 21:39:49 +01:00
rustra
3d73c4bdb6 Move API under GraphQL context 2020-01-26 21:15:04 +01:00
rustra
8a24c6127f Split GraphQL as separate context 2020-01-26 20:34:25 +01:00
rustra
5a439e493b Improve Federation boundaries 2020-01-24 22:02:10 +01:00
rustra
a239d1e0b0 Separate Web modules related to Federation 2020-01-23 01:03:33 +01:00
rustra
47d32d2b18 Put HTTPSignatures, WebFinger and ActivityStream alongside with ActivityPub 2020-01-22 22:40:40 +01:00
rustra
9726b91b12 Split Federation as separate context 2020-01-22 02:14:42 +01:00
Thomas Citharel
ca6ba4d084 Restrict follows to approved actors/instances
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-19 13:41:25 +01:00
Thomas Citharel
cece3c89e9 Fix comments URLs
Also remote comments were marked as local

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 18:25:40 +01:00
Thomas Citharel
6d50da12fe Add a mix mobilizon.actors task to list actors tasks
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 15:57:15 +01:00
Thomas Citharel
7ec15d56bf Use mix.exs version instead of config one
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 14:32:20 +01:00
Thomas Citharel
dc3353c608 Move from Schema.org Place to AS Place with Schema.org properties
See https://socialhub.activitypub.rocks/t/how-to-represent-places-in-an-event/413

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 11:03:04 +01:00
Thomas Citharel
8b27c729be Fix event html representation with no Accept header
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-18 10:15:58 +01:00
Thomas Citharel
32c1af35df Handle actor or object being AP Public string
Mastodon uses "https://www.w3.org/ns/activitystreams#Public" as object
when sending a `Follow` activity to a relay

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 13:36:45 +01:00
Thomas Citharel
153a4315ef Fix signatures for relay
The plugs were missing

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 13:36:25 +01:00
Thomas Citharel
69048089a5 Add a config option to whitelist users registration
Through whole email or domain email

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 12:09:24 +01:00
Thomas Citharel
4f9dc5f8c2 Fix comment visibility and local status
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 09:49:08 +01:00
Thomas Citharel
68af824fb7 Update demo warning message
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-17 09:20:40 +01:00
Thomas Citharel
205427007a Improve JSON-LD representation for Address and add it to the docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-16 11:47:57 +01:00
Thomas Citharel
8f6877c06d Clear AP cache when content is updated or deleted
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-16 11:47:31 +01:00
Thomas Citharel
56182343b8 Support pt:CommentsEnabled in addition to mz:repliesModeration
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-16 11:46:19 +01:00
Thomas Citharel
ce6f78b054 Add admin interface to manage instances subscriptions
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-12-15 21:56:16 +01:00
Thomas Citharel
c91f3c618b Introduce comments below events
Also add tomstones

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-28 12:33:58 +01:00
Thomas Citharel
00f8322e8b Merge branch 'master' into 'feature/add-a-demo-mode'
# Conflicts:
#   CHANGELOG.md
2019-11-21 16:28:53 +01:00
Thomas Citharel
1abdbce7b6 Added a demo mode to show or hide instance warnings that data is deleted
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-21 16:07:43 +01:00
Thomas Citharel
6cff9f46ce Added mix commands to manage users and view actors
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-21 15:51:13 +01:00
Thomas Citharel
19cb670cec Disable address autocomplete where required (nominatim)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-20 13:49:57 +01:00
Thomas Citharel
12d5d73361 Merge branch 'feature/add-pelias-geocoder' into 'master'
Feature/add pelias geocoder

See merge request framasoft/mobilizon!324
2019-11-19 20:19:02 +01:00
Thomas Citharel
eb28d5da45 Update docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 20:01:31 +01:00
Thomas Citharel
45439b7f78 Introduce support for Pelias geocoder
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 17:59:04 +01:00
Thomas Citharel
e2e2e157dd Fix duplicate tags when editing an event with tags in description
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 15:36:25 +01:00
Thomas Citharel
1a82a64411 Include sender mail in from: emails
Closes #277

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 11:12:59 +01:00
Thomas Citharel
b5e872a670 Handle missing geolix database
Close #313

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-19 10:47:48 +01:00
Thomas Citharel
c810468783 Validate ends_on being after begins_on
Closes #315

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-18 18:56:36 +01:00
Thomas Citharel
dffd70ec96 Validate username on backend side and refactor actor changeset
Closes #316

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-18 18:56:28 +01:00
Thomas Citharel
19c7756465 Fix #232 and #230
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-18 18:56:28 +01:00
Thomas Citharel
b876baa556 Introduce Mimirsbrunn geocoder and improve addresses & maps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-12 14:10:18 +01:00
Thomas Citharel
f41cf86fe9 Remove floor
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-08 19:39:02 +01:00
Thomas Citharel
56b804f64b Fixes with addresses and iCalendar
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-06 10:04:17 +01:00
Thomas Citharel
0fc79d1219 Fix for adding addresses
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-06 09:32:01 +01:00
Thomas Citharel
5bf50057f5 Fix issue when updating event and introduce background jobs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-11-04 16:40:36 +01:00
Thomas Citharel
b3b41ad777 Refactor Core things, including Ecto handling, ActivityPub & Transmogrifier modules
* Data doesn't need anymore to be converted to ActivityStream format to
be saved (this was taken from Pleroma and not at all a good idea here)
* Everything saved when creating an event is inserted into PostgreSQL in
a single transaction
2019-10-31 10:06:11 +01:00
Thomas Citharel
567d8ba555 Make inserting data into search table an async operation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-23 16:33:56 +02:00
Thomas Citharel
c6ce7f6795 Fix unrelated warning
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-23 15:27:11 +02:00
Thomas Citharel
75ec6afffc Implement search engine & service in backend
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-23 15:27:11 +02:00
Thomas Citharel
25e25d5537 Allow WebP and Gif pics
svg stays forbidden until we can be sure it's fine security-wise

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-21 13:43:06 +02:00
Thomas Citharel
74c12d6736 Add the optimize filter for uploaded pics
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-21 13:42:45 +02:00
Thomas Citharel
0f43a71eb0 Limit multipart upload to 10MB
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-18 14:10:39 +02:00
Thomas Citharel
60b9fa235b Add some backend changes and validation for field length
Closes #225 and #226

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-18 11:31:11 +02:00
Thomas Citharel
5d64299e42 Upgrade vue-cli to v4, change the way server params injection is made
and serve es6 modules

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-17 14:20:22 +02:00
Thomas Citharel
9901a26eb1 Merge branch 'bug/fix-XSS-on-event-title' into 'master'
Make sure title is properly sanitized

Closes #247

See merge request framasoft/mobilizon!281
2019-10-16 19:17:27 +02:00
Thomas Citharel
32b04755a8 Make sure title is properly sanitized
Close #247

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-16 19:03:31 +02:00
Thomas Citharel
6bdf44f60f Translate them and handle difference between user not found and user not
confirmed

Closes #212

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-16 17:07:49 +02:00
Damien
6c7bb75907 (Hopefully) improve grammar
[CI skip]
2019-10-15 21:38:49 +02:00
Thomas Citharel
71470cca9a set default to show event time
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 20:00:58 +02:00
Thomas Citharel
0dbde97fb5 Change link for Framacolibri
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 19:33:07 +02:00
Thomas Citharel
cc1e5ba24e Better handle datetime
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 19:29:18 +02:00
Thomas Citharel
fd3116a0a8 Properly update event ics export cache and fix export desc html
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 15:44:16 +02:00
Thomas Citharel
b28182d110 Prevent picture resend on event update, handle duplicate pictures
properly in backend and add a proper default picture

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 11:41:57 +02:00
Thomas Citharel
a1d2affbc0 Handle errors better
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-13 13:56:24 +02:00
Thomas Citharel
dcaf927b71 Participation fixes
Closes #208 and #210

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-13 10:51:22 +02:00
Thomas Citharel
f9de0f0d5d Merge branch 'test/add-cypress-on-event-creation' into 'master'
Add e2e seed and test event creation

See merge request framasoft/mobilizon!254
2019-10-12 19:47:19 +02:00
Thomas Citharel
88eee78123 Add e2e seed and test event creation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-12 19:34:16 +02:00
Thomas Citharel
78b9d6003c Add custom user-agent to geospatial calls
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-12 11:41:18 +02:00
Thomas Citharel
5e7c646225 Properly handle event status
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 16:34:03 +02:00
Thomas Citharel
a16832a446 Fix participation section, show how many places are available
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 15:26:16 +02:00
Thomas Citharel
69ea0f9721 Expose participants number through API
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 11:54:57 +02:00
Thomas Citharel
74fe9db43e Make sure people can't join an event with limited participants
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 11:50:06 +02:00
Thomas Citharel
896e6bf523 Add warning inside emails as well
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 10:44:53 +02:00
Thomas Citharel
ad8c681e95 Fix title & meta
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 17:28:32 +02:00
Thomas Citharel
206697891a Merge branch 'bug/email-logo-alt' into 'master'
Bug/email logo alt

See merge request framasoft/mobilizon!238
2019-10-10 14:57:07 +02:00
Thomas Citharel
5aab0e474c Replace email logo alternative text by instance name
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 14:27:06 +02:00
Thomas Citharel
29b3806471 Fix preview
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 12:25:32 +02:00
Thomas Citharel
3c07c8f7fb Fix editor related issues
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 11:05:53 +02:00