Commit Graph

259 Commits

Author SHA1 Message Date
Thomas Citharel
aa9c18cf3c 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
7ef4ef264b Attach actor to pictures entity 2019-05-31 18:07:37 +02:00
Thomas Citharel
3cb29be4fc 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
6657d3cc22 Update NodeInfo support to 2.1 (#79) 2019-05-24 09:18:19 +02:00
Thomas Citharel
5d60067747 Assert HTML contains opengraph content
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-05-02 13:54:12 +02:00
Vincent
5fbde60f0f Simplify PageController 2019-05-02 13:54:06 +02:00
Chocobozzz
fb072fc002 Only render public comments 2019-04-26 10:03:46 +02:00
Thomas Citharel
bf75335c2a 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
a3c90f1654 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
5ee97dfa43 Implement related events
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-23 11:22:36 +02:00
Chocobozzz
5d9186cfe1 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
Thomas Citharel
45dbf3a2c6 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
4df0ae055f 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
6814182ea2 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
9a881ed4d9 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
2b99736f5b Get config and display/hide register button 2019-03-22 15:26:58 +01:00
Chocobozzz
de4ddf1aca Add config endpoint 2019-03-22 13:58:57 +01:00
Thomas Citharel
ecb6d20d60 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
3cb58ab601 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
9f034990d8 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
ff6053927a 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
30a5811b36 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
aea9621fd9 Add join/leave group 2019-03-08 14:43:45 +01:00
Thomas Citharel
f27b6b9816 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
2428b99ad0 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
061cd74ca1 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
c7357cad55 Invert list users sort direction (make it desc)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 12:14:31 +01:00
Chocobozzz
29af7e3b82 Add ability to list users 2019-03-05 10:41:23 +01:00
Thomas Citharel
355dce9dd7 Add and fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-03-05 10:13:19 +01:00
Thomas Citharel
e5ea49daff 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
ad36e34b22 Add cached RSS feeds for actors endpoints 2019-02-27 18:30:01 +01:00
Thomas Citharel
ae1b97a3a0 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
c2a421eabd 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
b044924278 Improve tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-22 18:07:20 +01:00
Thomas Citharel
bf6da6cc55 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
8cd3217f3e Allow tag relations + bump ecto deps
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-02-21 16:58:14 +01:00
Thomas Citharel
eedbd15723 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
Chocobozzz
a9dcd13578 Add API to join and leave an event 2019-02-07 16:56:59 +01:00
Thomas Citharel
5b97eeaf80 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
c2cf83e588 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
d8131c21c0 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
7bbd143984 Add event resolver tests 2019-02-07 10:29:01 +01:00
Chocobozzz
e4c8222833 Add group resolver tests 2019-02-07 10:29:01 +01:00
Thomas Citharel
640bb878e8 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
7bc5589002 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
7f9f3d771e Add ability to delete an event 2019-01-25 17:07:36 +01:00
Chocobozzz
edf6dd9168 Add ability to delete a group 2019-01-25 16:08:06 +01:00
Thomas Citharel
42c8b8f602 Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-24 15:36:09 +01:00
Thomas Citharel
36cb5f5089 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
a1c4293cf4 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
ba8ba05761 Add visibility to comments
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-01-14 16:21:13 +01:00
Thomas Citharel
4a8f6a0824 🔍 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
290b31f031 Fix resend confirmation component 2019-01-11 14:35:14 +01:00
Thomas Citharel
165e0ea866 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
d6ef6a863d 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
ed6906e26c Comment Webfinger controller properly
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-27 11:31:06 +01:00
Thomas Citharel
1a9fd27304 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
db2cec7706 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
245a715fe4 [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
fc226f6c68 Add digest, date and request-target in HTTP signature 2018-12-07 16:13:30 +01:00
Thomas Citharel
26d57b6273 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
32a06cae87 Mix format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-12-03 12:08:18 +01:00
Thomas Citharel
bb060be708 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
8b3d0af04c 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
b8494dc3a1 More test stuff
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 17:16:23 +01:00
Thomas Citharel
2cb641be79 Add more tests for user
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 14:48:55 +01:00
Thomas Citharel
79d0367f70 A few more tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-28 10:49:16 +01:00
Thomas Citharel
56ea47f189 Add test to WebFinger controller
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 18:42:56 +01:00
Thomas Citharel
12c63c979a Moar coverage
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 17:54:54 +01:00
Thomas Citharel
25d95bed02 Add test to the follow backend
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-27 14:02:51 +01:00
Thomas Citharel
d54795a3ea Change schema a bit
Closes #29

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-23 15:03:53 +01:00
Thomas Citharel
7f651b9712 Add 2 tests and format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-13 12:40:09 +01:00
Thomas Citharel
e9d6f69e5f Use ex_vcr for tests
Which are now offline-only !

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-13 12:23:37 +01:00
Thomas Citharel
d9f29e7d7b Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-12 18:17:53 +01:00
Thomas Citharel
58c22d366f Handle trying to create a category if not loggedin
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-07 08:34:25 +01:00
Thomas Citharel
841120cbcd Format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-06 10:32:53 +01:00
Thomas Citharel
4441521994 Move to GraphQL
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-11-06 10:30:27 +01:00
Thomas Citharel
4bd2dd8a0e Format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-10-11 17:47:02 +02:00
Thomas Citharel
6c6f93038e Rename project to Mobilizon
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-10-11 17:37:39 +02:00
Thomas Citharel
5b9055dbab Better tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-10-09 17:01:45 +02:00
Thomas Citharel
708f5fa2e6 Friendica now supports ActivityPub !
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-10-09 16:07:31 +02:00
Thomas Citharel
7d37319c8a Fix nodeinfo path
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-09-03 17:53:31 +02:00
Thomas Citharel
a4deeb55d4 More tests 2018-08-24 11:34:00 +02:00
Thomas Citharel
5d5d48d523 Even more tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-08-03 11:08:51 +02:00
Thomas Citharel
af68e5af5a mix format
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-08-03 10:19:28 +02:00
Thomas Citharel
b00cbb420f Add some tests
Also add a unicity constraint on the followers table

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-08-03 10:16:22 +02:00
Thomas Citharel
682d6a38e9 Introduce follower, add tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-08-01 14:45:18 +02:00
Thomas Citharel
163f190142 Remove credo and use mix format, and lint everything
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-07-27 10:45:35 +02:00
Thomas Citharel
3566ece9fa Update tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-07-10 14:56:10 +02:00
Thomas Citharel
bcdfaab9bd Allow multiple identities (accounts actors) for one user.
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-07-10 10:00:07 +02:00
Thomas Citharel
fcff3dbc5d Fix tests
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-07-04 16:23:52 +02:00
Thomas Citharel
82a6c8a488 Fix credo issues
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-06-14 18:15:27 +02:00
Thomas Citharel
b1d48ac676 Make tests great again !
(Also use only one field for public/private key pem)
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-06-14 17:25:55 +02:00
Thomas Citharel
4c60f0ec51 Add groups back
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-06-06 18:16:39 +02:00
Thomas Citharel
91a3805a47 Search
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-06-06 18:16:14 +02:00
Thomas Citharel
1a3fbcf7f7 WIP
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-06-06 18:12:21 +02:00
Benjamin Bouvier
2c1abe5e19 Merge branch 'avatar' into 'master'
Introduce avatar and banner and fetch Gravatar to fill avatar during registration

Closes #7

See merge request tcit/eventos!10
2018-01-27 19:45:03 +01:00
Thomas Citharel
4b4ecec693 Introduce avatar and banner and fetch Gravatar to fill avatar during registration
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

typo

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

Rename avatar to avatar_url, same with header.

Add a comment to explain why the tweak with HTTPoison and TLS1.2

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

Rename avatar to avatar_url

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

rename old avatar properties in front-end to avatar_url

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

fix change gravatar from ?d= to ?default=

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

reorganize aliases and imports

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

set avatar url only when gravatar exists, add a test for that case

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-27 19:04:45 +01:00
Thomas Citharel
22093b8ca4 Fix some warnings
Signed-off-by: Thomas Citharel <tcit@tcit.fr>

fix error

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

Fix tests and warnings

Move process_geom/2 to addresses where it belongs
Create a special error view for invalid requests

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

credo fix

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-27 17:00:04 +01:00
Thomas Citharel
07382d6aca Add adresses
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-17 11:39:01 +01:00
Thomas Citharel
67ef32432e Fix front-end, allow events to be created by a group, allow to get sessions from an event
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-16 19:45:09 +01:00
Thomas Citharel
7a98674e59 Merge branch 'fix-categories' into 'master'
Fix categories and tags

See merge request tcit/eventos!3
2018-01-15 12:21:55 +01:00
Thomas Citharel
8b4d1ab4e4 Add categories properly
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-15 12:04:09 +01:00
Thomas Citharel
b71754224d Merge branch 'notify-on-tests' into 'master'
make tests watchable and notifies

See merge request tcit/eventos!2
2018-01-15 11:46:08 +01:00
Thomas Citharel
226df0d0ef make tests watchable and notifies
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-15 11:41:47 +01:00
Thomas Citharel
8414f9a098 Export an event though ics
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-15 11:40:01 +01:00
Thomas Citharel
1217361b6c fix some code style and add checks to ci
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-14 17:57:25 +01:00
Thomas Citharel
20cd1bb579 Change models, new migrations, fix front and make tests work
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2018-01-13 23:33:03 +01:00
Thomas Citharel
90ceb4f6fe initial commit
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-12-08 09:58:14 +01:00