Commit Graph

508 Commits

Author SHA1 Message Date
Thomas Citharel afa3bb1eff
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 d1fb90eece
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 c16ef05d88
Limit multipart upload to 10MB
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-18 14:10:39 +02:00
Thomas Citharel 342506bac0
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 6718dd8e69
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 4dcbf85d9a 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 8094f1d80a
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 de9b26df2d
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 b98a86184b (Hopefully) improve grammar
[CI skip]
2019-10-15 21:38:49 +02:00
Thomas Citharel 5e9ca2f2f3
set default to show event time
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 20:00:58 +02:00
Thomas Citharel 7b296e01da
Change link for Framacolibri
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 19:33:07 +02:00
Thomas Citharel d93561742a
Better handle datetime
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-14 19:29:18 +02:00
Thomas Citharel cc701f8994
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 cbe1dd2868
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 33e51a05ec
Handle errors better
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-13 13:56:24 +02:00
Thomas Citharel 57f0b5dad1
Participation fixes
Closes #208 and #210

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-13 10:51:22 +02:00
Thomas Citharel 2577a2a27b 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 5e75daa732
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 d3a5b1f3e5
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 534ff09674
Properly handle event status
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 16:34:03 +02:00
Thomas Citharel 4499fb2f31
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 98472e7222
Expose participants number through API
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 11:54:57 +02:00
Thomas Citharel bf25d22786
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 210b348b46
Add warning inside emails as well
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-11 10:44:53 +02:00
Thomas Citharel 040faf4451
Fix title & meta
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 17:28:32 +02:00
Thomas Citharel 5a56c47360 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 aa233f43a7
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 ac35e4b923
Fix preview
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 12:25:32 +02:00
Thomas Citharel eca8b9ec7c
Fix editor related issues
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-10 11:05:53 +02:00
Thomas Citharel 5b1b7ee164
Make sure featured events have currently happening events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-09 16:37:39 +02:00
Thomas Citharel 7a453b4329
Fix unavailable access to an event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-08 21:31:47 +02:00
Thomas Citharel bff00dea21
Properly handle account deleted
Close #191

Also fix an issue with public events not being accessible when requested
as another logged-in user.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-08 18:13:06 +02:00
Thomas Citharel 77d286ebb6
Introduce Cypress
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-06 18:28:18 +02:00
Thomas Citharel 471e8ac472
Redirect to profile creation when user has no identities
Also load persons by ID instead of preferred_username

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-06 12:36:42 +02:00
Thomas Citharel 442a011490
Add draft feature
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-02 18:23:32 +02:00
Thomas Citharel a84cfb5910
Save user locale and use it to translate things
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-10-01 13:08:09 +02:00
Thomas Citharel 5fd38ace2e
Notifications on event update
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-30 19:01:46 +02:00
Thomas Citharel 5b4f1c271a
Send email notifications when a participation is approved/rejected
Also handles participant status :rejected instead of deleting the
participation

Closes #164

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-30 18:45:29 +02:00
Thomas Citharel 65b49e247f
Add config option to disable federation
Closes #148

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-27 16:18:29 +02:00
Thomas Citharel 8dc2fbcf98
Fix rebase issue
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-26 18:10:11 +02:00
miffigriffi 0a0d07cf38
Fix software design suggestions 2019-09-26 17:45:47 +02:00
miffigriffi aed824f1aa
Fix code readability issues 2019-09-26 17:45:47 +02:00
miffigriffi 20dfce5c83
Fix refactoring opportunities 2019-09-26 17:45:33 +02:00
Thomas Citharel 4d4fdaaffe Merge branch 'feature/participate-dropdown' into 'master'
Add a dropdown on participate menu, disallow listing participations

Closes #174

See merge request framasoft/mobilizon!200
2019-09-26 17:41:14 +02:00
Thomas Citharel 757d2cabec
Add a dropdown on participate menu, disallow listing participations
Now requires quering the person endpoint to know if an actor
participates in an event, organizers can make authenticated requests to
event { participants { } } to see the pending / approved participants.

Also closes #174

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-26 17:00:01 +02:00
Thomas Citharel d4a7b6fe0d
Remove unneeded Markdown converter (earmark)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-26 16:49:49 +02:00
Thomas Citharel f129d4137d
[Backend] Allow to change your password
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-24 18:08:33 +02:00
Thomas Citharel 8006b8e0f3
Fixes for email
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-24 12:09:43 +02:00
Thomas Citharel 6a41b13446
🎨 Add fancy html emails
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-23 19:50:33 +02:00
Thomas Citharel 9abb2f3526
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-23 10:26:23 +02:00
Chocobozzz 5520e2e5f9
Exhaustive create/update event tests 2019-09-22 19:36:43 +02:00
Thomas Citharel eaf424e79f
Fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 11:22:16 +02:00
Thomas Citharel 246555a768
Couple of fixes, and introducing Explore section
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 10:40:18 +02:00
Thomas Citharel abf3a58657
Allow to accept / reject participants
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 10:40:12 +02:00
Thomas Citharel ffa4ec9209
Work on dashboard
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 09:42:54 +02:00
Thomas Citharel 2d087fb810
Move Mobilizon.Events.Activity to Mobilizon.Service.ActivityPub.Activity
It's only used for ActivityPub stuff, nothing DB related.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-22 09:24:18 +02:00
miffigriffi 4c74248a04 Merge branch 'master' into refactoring-based-on-credo-and-dialyzer 2019-09-22 00:40:53 +02:00
miffigriffi 64f42d412b mix credo warnings in Mobilizon context 2019-09-18 00:37:31 +02:00
miffigriffi eaff073cd2 Remove Dataloader related code from Mobilizon context 2019-09-18 00:18:45 +02:00
miffigriffi 48dbec51f5 Move caching to MobilizonWeb 2019-09-18 00:01:16 +02:00
miffigriffi 8f580ce10c Returm generation of URL by usage of MobilizonWeb.Endpoint 2019-09-17 22:10:22 +02:00
miffigriffi da97c29340 Move Email context under MobilizonWeb 2019-09-17 02:45:32 +02:00
miffigriffi ac77a7d28a Refactoring of Events context 2019-09-17 02:22:54 +02:00
miffigriffi 6372599493 Refactoring of Application module 2019-09-16 01:43:06 +02:00
miffigriffy f6800665e7 Apply formatting 2019-09-13 02:28:09 +02:00
miffigriffy 5967b30bb1 Clean specs 2019-09-13 02:15:04 +02:00
miffigriffy 56efb0acb1 Move MIME under MobilizonWeb context 2019-09-13 01:35:56 +02:00
miffigriffy d3f3553ae7 Move Activity under Events context 2019-09-13 01:35:03 +02:00
miffigriffy e358dcce77 Refactoring of Events context 2019-09-13 01:01:17 +02:00
Thomas Citharel c3b03a2e6b
Show number of participants
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-12 12:18:57 +02:00
miffigriffy e4a446003d Refactoring of Actors context 2019-09-11 23:36:14 +02:00
Thomas Citharel 27f2597b07
Add admin dashboard, event reporting, moderation report screens, moderation log
Close #156 and #158

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-09 20:53:16 +02:00
Chocobozzz 82df0526ec
Edit events fixes and update cache 2019-09-09 14:41:19 +02:00
Thomas Citharel 8f50e88e1e
Fix failing test on updating actor
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-09 09:55:08 +02:00
Thomas Citharel cc4a59ad1f
Run mix format and fix a credo check
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-09 09:35:50 +02:00
miffigriffy 4418275223 Refactoring of Actors context 2019-09-09 00:52:49 +02:00
miffy 3a4a006c44 Refactoring of Adresses context 2019-09-08 03:05:30 +02:00
miffy 2a9605c66a Refactoring of Admin context 2019-09-08 02:06:28 +02:00
miffy fa037fd683 Separating of Storage context 2019-09-08 01:49:56 +02:00
miffy a32ab590ab Refactoring of config wrapper 2019-09-08 00:05:54 +02:00
miffy 96f51d3a27 Refactoring of Email context 2019-09-07 23:58:53 +02:00
miffy f316f0a940 Refactoring of Users context 2019-09-07 19:55:45 +02:00
miffy d0c9974558 Refactoring of Reports context 2019-09-07 18:54:30 +02:00
miffy c2b4fb6cff Refactoring of Media context 2019-09-07 02:36:37 +02:00
miffy 4a0c1ea42e Add separate module for pagination of queries 2019-09-07 02:32:23 +02:00
Thomas Citharel f5c3dbf128
Correctly handle event update
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-05 13:59:52 +02:00
Thomas Citharel 6845825db2
Split ActivityPub.insert to create activity & insert object
So that when we're not inserting anything no need to call method

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-03 09:11:41 +02:00
Chocobozzz dc9ef9c1b5
Improve create event and prepare update event 2019-09-03 09:11:41 +02:00
Thomas Citharel cb96b807a0
Improve event creation form by introducting EventOptions
It's a subentity that holds additional metadata in a map database type

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-09-02 17:11:27 +02:00
Thomas Citharel 925f7bbb02 Merge branch 'feature/group-create' into 'master'
Prepare create group

See merge request framasoft/mobilizon!173
2019-09-02 12:10:23 +02:00
Chocobozzz 18b2854d99
Prepare create group 2019-09-02 11:51:42 +02:00
Chocobozzz f21c79cf6a
Don't delete the last admin of a group 2019-08-26 15:44:02 +02:00
Thomas Citharel 0e0b68445b
Reuse existing addresses when creating an event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-22 16:20:42 +02:00
Thomas Citharel 641129dc74
Federate participations
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-20 10:17:28 +02:00
Thomas Citharel 8f31beb0fb
Make category optionnal and hide it from the form
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-13 11:15:19 +02:00
Thomas Citharel c51115bdbe
Introduce relay
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-08-13 11:15:13 +02:00
Chocobozzz a007160480
Fix lint 2019-08-13 10:59:12 +02:00
Chocobozzz ac1dab0fc0
Fix guardian db hook when refresh the access token 2019-08-12 17:41:41 +02:00
Chocobozzz 6d221212ef
Remove apollo link state 2019-08-12 16:04:32 +02:00
Thomas Citharel 5fbaf42cad
Add address input and refactor federation stuff
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-30 10:35:29 +02:00
Thomas Citharel 6d80bf43ea
Refactor adding tags to an event
Also refactor extracting tags from content, now uses Pleroma's Formatter

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-26 12:06:26 +02:00
Thomas Citharel c3cca5d613
Fix credo style reports following it's update
Mainly transform `with` into `case`

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-23 18:12:26 +02:00
Thomas Citharel 1cd511f440
Front end deps upgrades and fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-23 17:14:03 +02:00
Thomas Citharel aef841e192 Introduce backend for reports
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-23 13:49:22 +02:00
Thomas Citharel 33a8da4570 Merge branch 'add-node-info-2.0-support' into 'master'
Add NodeInfo 2.0 support (in addition to 2.1)

See merge request framasoft/mobilizon!155
2019-07-09 10:01:55 +02:00
Thomas Citharel 661b31d822
Add NodeInfo 2.0 support (in addition to 2.1) and fix validation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-09 09:43:13 +02:00
Thomas Citharel b52fc33d97
Fix 404s on RSS feeds
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-08 16:53:54 +02:00
Chocobozzz 0e485b2388
Add ability to update/create/delete identities 2019-07-08 16:32:22 +02:00
Thomas Citharel 49f38c8924
Final fixes for build
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-05 16:59:25 +02:00
Thomas Citharel d609ccfb51
Upload pictures fixes
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-04 17:43:23 +02:00
Thomas Citharel 2749989a28
Drop the eex template and directly use the webpack index.html
Partly reverts ff7fd460

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-04 17:43:18 +02:00
Thomas Citharel 449baabe3c
Upgrade Elixir deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-07-03 17:30:22 +02:00
Thomas Citharel e8cabd38d4
Delete files when updating parent identities
Closes #127

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-06-07 15:01:10 +02:00
Thomas Citharel 87bc5f8352
Add filesize to file entity, expose it to GraphQL API
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-06-03 17:13:47 +02:00
Thomas Citharel 5b3831b4bf
Attach actor to pictures entity 2019-05-31 18:07:37 +02:00
Thomas Citharel d4d295eae1
Add proxy route and proxify pics everywhere
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-05-28 10:55:13 +02:00
Thomas Citharel f90089e1bf
Refactor media upload
Use Upload Media logic from Pleroma

Backend changes for picture upload

Move AS <-> Model conversion to separate module

Front changes

Downgrade apollo-client: https://github.com/Akryum/vue-apollo/issues/577

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-05-24 17:29:51 +02:00
Julien Lavergne a2c181f7fe Update NodeInfo support to 2.1 (#79) 2019-05-24 09:18:19 +02:00
Vincent 7f31121880
Simplify PageController 2019-05-02 13:54:06 +02:00
Vincent 3f71ddfe5b Move eventos to mobilizon 2019-05-02 11:38:44 +02:00
Thomas Citharel e97be0b814
Fix tests for FeedController
And remove useless Fallbacks in Fallback controller

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-30 14:30:26 +02:00
Thomas Citharel 7c8f1a56af
Fix warning
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-30 14:04:00 +02:00
Thomas Citharel f8ed5cd779
Fix Docker setup and add back back an entrypoint
* Also add special deps for argon2 support inside the Alpine image
* Make sure yarn install is triggered

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-30 13:56:20 +02:00
Vincent ff7fd460f0
add make test and Remove vue-cli serve 2019-04-30 13:56:07 +02:00
Chocobozzz 25153d2ae1
Only render public comments 2019-04-26 10:03:46 +02:00
Thomas Citharel 12116ba6fa
Add visibility to actors
Also use url helpers to generate urls properly

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-25 19:05:05 +02:00
Thomas Citharel 10bfc17306 Merge branch 'feature/related_events' into 'master'
Feature/related events

See merge request framasoft/mobilizon!113
2019-04-23 11:31:20 +02:00
Thomas Citharel f5b02ed154
Show related events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-23 11:23:18 +02:00
Thomas Citharel a877e4d7d9
Implement related events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-23 11:22:36 +02:00
Chocobozzz d66bbc5414
Add ability to search on Group, Person or Event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-23 10:53:04 +02:00
Vincent 4c0a43b4d4 Minor change on web_finger_controller 2019-04-17 17:33:36 +02:00
Thomas Citharel ddad462076
Add description slug field for events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-11 14:45:31 +02:00
Thomas Citharel da2a0593ca
Various UI stuff (mainly implement mookup)
Fix lint

Disable modern mode

Fixes

UI fixes

Fixes

Ignore .po~ files

Fixes

Fix homepage

Fixes

Fixes

Mix format

Fix tests

Fix tests (yeah…)

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-11 11:58:13 +02:00
Thomas Citharel fc0214c633 Merge branch 'feature/event-maps' into 'master'
Feature/event maps

See merge request framasoft/mobilizon!105
2019-04-01 17:26:33 +02:00
Thomas Citharel ccd705bc4f
Add timeline events you're going to
Mix format

Fix chocobozzz feedback

Only show upcoming events on feed

Remove console log calls

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-01 17:07:00 +02:00
Thomas Citharel 0c8d2f7e00
Work around Addresses to bring them properly through GraphQL
Got caught with https://github.com/absinthe-graphql/absinthe/issues/601
at some point, that's why fields are renamed

Fix tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-01 16:51:15 +02:00
Chocobozzz 4fa78d7cd2
Get config and display/hide register button 2019-03-22 15:26:58 +01:00
Chocobozzz e864b38ec6
Add config endpoint 2019-03-22 13:58:57 +01:00
Thomas Citharel 2fe33aa470
ℹ Improve docs and documentation (again)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-19 11:16:03 +01:00
Thomas Citharel bba6629046
Better docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Nicer docs

No 3rd stage

Add mix.deps get before docs

Add :ex_doc on test env so that it runs into CI
2019-03-18 12:10:29 +01:00
Thomas Citharel 6ca0b5f915
Add GraphQL methods and test
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Finish

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-15 16:37:46 +01:00
Thomas Citharel 98b7618338
Add GeoSpatial backends for geocoding
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Geospatial Backend

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-15 16:37:43 +01:00
Thomas Citharel 99ac6ef100
Add GraphQL support to handle FeedTokens
Closes #88

Automatically create tokens for new users and actors

Closes #89

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-08 18:52:27 +01:00
Thomas Citharel c61c75163f
Add backend and endpoints for Feed Tokens
Closes #19 #86 #87

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-08 14:57:05 +01:00
Chocobozzz 5a8ad3ab52
Add join/leave group 2019-03-08 14:43:45 +01:00
Thomas Citharel cb0808dbad
Introduce admin and moderator role, check role on list_users action
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Add test for guards
2019-03-07 14:18:11 +01:00
Thomas Citharel d3e2f28b49
Implement public actor ICS endpoint and event ICS export
Closes #83 and #84

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-06 17:07:42 +01:00
Thomas Citharel c689406114
Extract User from Actors context
Mobilizon.Actors.User -> Mobilizon.Users.User
Also Mobilizon.Actors.Service now become Mobilizon.User.Service
And Mobilizon.Users and Mobilizon.UsersTest is introduced.

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 17:23:05 +01:00
Thomas Citharel 0f107606b1
Make accept the default content-type on AP/HTML routes
Fixes case with Accept: */* getting AP instead of HTML

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 12:24:29 +01:00
Thomas Citharel bacd1bfb02 Merge branch 'feature/list-users' into 'master'
Add ability to list users

See merge request framasoft/mobilizon!83
2019-03-05 12:19:40 +01:00
Thomas Citharel 9c98f34b5c
Invert list users sort direction (make it desc)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 12:14:31 +01:00
Thomas Citharel c1f07122d1
Fix routing between BE & FE and fix event creation
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 12:07:58 +01:00
Thomas Citharel f08b6334f0
Add @moduledoc to new module
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 10:41:23 +01:00
Chocobozzz a0123459b3
Add ability to list users 2019-03-05 10:41:23 +01:00
Thomas Citharel 9a60704ed9
Add and fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 10:13:19 +01:00
Thomas Citharel 6de839dec2
Add JSON-LD schema
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-04 18:38:30 +01:00
Thomas Citharel 66e67aa816
Redirect properly to correct endpoint depending on content-type
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-04 17:20:18 +01:00
Thomas Citharel a3ffc08e57
Add Activity Pub endpoints cache
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-01 18:30:46 +01:00
Thomas Citharel b3a3001e90
Fix render/4 -> render/3 calls
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-01 14:54:02 +01:00
Thomas Citharel 5713670ac9
Refactor Atom feed caching
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fixes
Fix tests
Fix tests
2019-03-01 14:53:56 +01:00
Thomas Citharel 02d1cea2d7
Add cached RSS feeds for actors endpoints 2019-02-27 18:30:01 +01:00
Thomas Citharel 976186a18d Merge branch 'make-sure-actor-usernames-are-unique' into 'master'
Make sure actor usernames are unique

Closes #72

See merge request framasoft/mobilizon!81
2019-02-25 18:41:26 +01:00
Thomas Citharel 8efb1af306
Make sure actor usernames are unique
Closes #72

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-25 18:35:00 +01:00
Thomas Citharel c4e327508b
Front-end fixes and updates
Especially Join/Leave event, Vue-Markdown replacement

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-25 17:20:06 +01:00
Thomas Citharel 7086fe8389
Make Categories a predefined list
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Allow null values for categories for now

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-25 15:31:04 +01:00
Thomas Citharel 75554cd3f5 Merge branch 'improve-tests' into 'master'
Improve tests

See merge request framasoft/mobilizon!78
2019-02-22 18:13:01 +01:00
Thomas Citharel 8bba35e60b
Improve tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-22 18:07:20 +01:00
Thomas Citharel d37c873b04
A few fixes comming from Dialyser
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fixes

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-22 16:57:12 +01:00
Thomas Citharel 7dd7e8fc36
Fix mix format and format migrations too
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix credo warnings

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Show elixir version

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Also lint migrations

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Reset allow failure to false

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-22 14:53:09 +01:00
Thomas Citharel 4ec40d601b
Implement search with PostgreSQL trigrams
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Rename function to reflect that we only get one result

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Add loggers and make Ecto call parallels during search

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Implement trigrams for events & replace pg similarity operator % with <%

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-22 13:53:10 +01:00
Thomas Citharel 256d50e855
Allow tag relations + bump ecto deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-21 16:58:14 +01:00
Thomas Citharel dfa25e0d21
Events with only one event creator participant can't be left
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 17:57:49 +01:00
Thomas Citharel d1d3beeb35
Base default participant role on event join_options instead of visbility
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 17:09:04 +01:00
Chocobozzz 250f0b3bd1
Add API to join and leave an event 2019-02-07 16:56:59 +01:00
Thomas Citharel 4bac5a07bd
Move Participant role from integer to enum
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 16:37:40 +01:00
Thomas Citharel 7b83682b26 Merge branch 'split-event-visibility-and-join' into 'master'
Split event visibility and join options

Closes #56

See merge request framasoft/mobilizon!54
2019-02-07 14:07:16 +01:00
Thomas Citharel a2070b1d54
Split event visibility and join options
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix format

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 11:49:14 +01:00
Chocobozzz ec961aa5e6
Add group resolver tests 2019-02-07 10:29:01 +01:00
Thomas Citharel f3d37325fa
Add missing @moduledoc for MobilizonWeb.Schema.Utils
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-07 10:27:54 +01:00
Thomas Citharel ce65c992d3
Handle validated users without profiles
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Format

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-30 15:59:30 +01:00
Thomas Citharel 681653e035
Introduce registerPerson mutation
To register a profile from an unactivated user

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

👤 Fix Person interface use

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Change host function for data property

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-30 15:59:27 +01:00
Thomas Citharel c55ae19f84
Move queries and mutations to submodules
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-30 10:54:58 +01:00
Thomas Citharel 0c2931c10b
Make register/1 only create an user
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Credo fix

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix rebase

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-30 10:53:40 +01:00
Chocobozzz dd174f2446
Add ability to delete an event 2019-01-25 17:07:36 +01:00
Chocobozzz 8388240957
Add ability to delete a group 2019-01-25 16:08:06 +01:00
Thomas Citharel c660210439
Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-24 15:36:09 +01:00
Thomas Citharel 90fd0ff6b6
Replace Vuetify with Bulma
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Remove vuetify and add Bulma

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-24 15:35:57 +01:00
Thomas Citharel 289ba03960
Remove address_type and rename phone to phone_address
An event can indeed have several address types

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 17:48:08 +01:00
Thomas Citharel b0bc8dfa5d
✂️ Split GraphQL schema into several files
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 17:13:17 +01:00
Thomas Citharel 2ece62bfb8
Add visibility to comments
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 16:21:13 +01:00
Thomas Citharel ab56d3e607
🔍 Implement basic event visibility
See https://framagit.org/framasoft/mobilizon/wikis/spec/Event#visibility

Also brings support for event status (tentative/confirmed/cancelled)

Closes #56

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 15:56:07 +01:00
Chocobozzz df4d3892c3
Fix reset password component 2019-01-11 13:58:29 +01:00
Thomas Citharel 2f2c538cc9
Add Credo checks and refactor code
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Make Logger.debug calls lazy

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Add missing @moduledocs

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Refactor according to credo

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Final fixes and add credo to CI

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Closes #52
2019-01-03 15:52:48 +01:00
Thomas Citharel ea82d392e9 Merge branch 'feature/improve_test_config' into 'master'
Feature/improve test config

See merge request framasoft/mobilizon!39
2019-01-03 11:40:40 +01:00
Thomas Citharel 8d943f950f
New generate config task from Pleroma upstream & move tasks namespace
Little fixes and tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-03 11:34:31 +01:00
Thomas Citharel 6885c73aa8
Change configuration and docker compose
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-03 11:33:52 +01:00
Chocobozzz d8dde92c86
Fix user registration and validation 2018-12-28 16:19:21 +01:00
Thomas Citharel d5eac1df6c
Comment Webfinger controller properly
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-27 11:31:06 +01:00
Thomas Citharel caae6d0c0a
Add links to upstream Pleroma files
(rename AP tests module names too)

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-27 11:24:04 +01:00
Thomas Citharel a8311d508e
Remove warnings on two unused variables
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-27 08:26:16 +01:00
William Pitcock 0b9e19965d add pleroma copyright attributions where appropriate 2018-12-24 06:34:45 -06:00
Thomas Citharel bee896a485
Test paginated event list
Introduce an event number limit for…limits

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-21 11:45:55 +01:00
Thomas Citharel 5a140bef35
📧 [AP] Set correct "to" when creating a comment instead of always
targetting public

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-21 09:03:10 +01:00
Thomas Citharel 0f31535cf3
Comment out Earmark-related code (no markdown for now)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-20 18:30:51 +01:00
Thomas Citharel c1e6612405
[WIP] Test transmogrifier
Introduce MobilizonWeb.API namespace

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Format

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

WIP

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

remove unneeded code

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix tests

Signed-off-by: Thomas Citharel <tcit@tcit.fr>

Fix warnings

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-20 17:44:33 +01:00
Chocobozzz 48eb72cd4c
Add pagination to events, groups, partipants to an event and categories
lists
2018-12-14 11:36:22 +01:00
Chocobozzz fa0f47d8e1
Add digest, date and request-target in HTTP signature 2018-12-07 16:13:30 +01:00
Thomas Citharel ace427c223
Add test for find_close_events/4
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-04 12:06:34 +01:00
Thomas Citharel c6e6a61000
Event changeset more cleaner
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-03 12:29:31 +01:00
Thomas Citharel dd87ad4f7e
Mix format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-03 12:08:18 +01:00
Thomas Citharel fd0dba62e0
Work on actors
* Implement group GraphQL APIs
* Change Actors changeset to properly set urls
* Remove old actors indexes and add some new ones

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-03 11:58:57 +01:00
Thomas Citharel 5aaf291bc9
Remove aliases that don't do anything
Thx @chocobozzz

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-29 17:46:28 +01:00
Thomas Citharel 51aa511101
Changes to the actor - user relation
Now the GraphQL API replies mostly with users which have the default_actor
property filled to show profile information

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-29 17:43:22 +01:00
Thomas Citharel 6f15127cb0
Remove unused files
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 18:23:19 +01:00
Thomas Citharel 909833c2bb
Remove unused alias
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 18:00:08 +01:00
Thomas Citharel 534138f775
More test stuff
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 17:16:23 +01:00
Thomas Citharel afb9b797ba Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 15:00:15 +01:00
Thomas Citharel 0cb39de01e Add more tests for user
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 14:48:55 +01:00
Thomas Citharel c9f58ea899 A few more tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 10:49:16 +01:00
Thomas Citharel 3ddd5ee485 Add test to WebFinger controller
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 18:42:56 +01:00
Thomas Citharel da378633ac Moar coverage
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 17:54:54 +01:00
Thomas Citharel b99625afab Add test to the follow backend
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 14:02:51 +01:00
Thomas Citharel d5318a37e1 Remove old channels files
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 11:30:11 +01:00
Thomas Citharel 9f9113f094 Change schema a bit
Closes #29

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-23 15:03:53 +01:00
Thomas Citharel 403a32e996 Improve overall configuration and support
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-15 17:35:47 +01:00
Thomas Citharel 06709ee46b Update GraphQL Absinthe schema
Remove unneeded things
Update descriptions

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-14 16:51:47 +01:00
Thomas Citharel e32ce85f0f Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-12 23:36:51 +01:00
Thomas Citharel 2939485321 Fix all warnings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-12 23:30:47 +01:00
Thomas Citharel a04dfc5293 Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-12 18:17:53 +01:00
Thomas Citharel 0900eb730e Add back inReplyTo fixes and cleanup some uneeded things
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-12 09:06:44 +01:00
Thomas Citharel 5721c5fe05 Toot 2018-11-12 09:05:31 +01:00
Thomas Citharel 6e691640de Insert :origin_comment_id too
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 18:03:53 +01:00
Thomas Citharel 20e47add28 Add debug to special case
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 17:48:05 +01:00
Thomas Citharel 263c7d7de5 Missing Logger require
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 17:41:47 +01:00
Thomas Citharel 26548cdfaa Refactor and add logging to insert comment fct
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 17:40:26 +01:00
Thomas Citharel acf110a761 Typo
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 17:19:41 +01:00
Thomas Citharel af8b3a7173 inReplyTo can be empty
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 17:17:35 +01:00
Thomas Citharel b2db190056 Forgot an {:ok} tuple
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 16:26:14 +01:00
Thomas Citharel fdef983125 Missing aliases
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 16:13:47 +01:00
Thomas Citharel c7ccbf1c47 Handle user gone and fix more public key stuff
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 16:11:23 +01:00
Thomas Citharel 04e342c897 Fix things with in_reply_to_comment_id
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-08 15:57:46 +01:00
Thomas Citharel 537736a98e Remove duplicated bad function
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 19:16:35 +01:00
Thomas Citharel 9161df71ba Format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 19:15:11 +01:00
Thomas Citharel d3ae4e5909 Add more helpers
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 19:14:59 +01:00
Thomas Citharel 911cbcdac5 Add a logger for comment creation failure
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 19:14:31 +01:00
Thomas Citharel 023d802746 Make remote comments non local
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 18:48:00 +01:00
Thomas Citharel 4afd657338 Add error log to follow activity
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 18:31:44 +01:00
Thomas Citharel 0343a408f4 Typo
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 18:25:45 +01:00
Thomas Citharel e020075a85 Investigate activities
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 18:24:38 +01:00
Thomas Citharel 6b4860b217 Fix issue with host header parsing
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 18:16:57 +01:00