Commit Graph

289 Commits

Author SHA1 Message Date
Alexander Strizhakov 3becdafd33
emoji packs pagination 2020-06-18 14:32:21 +03:00
href 39f7fc5b8e Update majic & call plug before OpenApiSpex 2020-06-16 19:00:54 +02:00
href f124f68205 Switch from gen_magic to majic, use Majic.Plug, remove Pleroma.MIME 2020-06-16 15:27:27 +02:00
lain 3b5282bef2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-08 11:19:18 +02:00
lain 89b85f6529 ChatController: Remove nonsensical pagination. 2020-06-08 11:09:53 +02:00
lain fe2a5d0614 ChatController: Make last_read_id mandatory. 2020-06-07 20:22:08 +02:00
lain 801e668a97 ChatController: Add `last_read_id` option to mark_as_read. 2020-06-07 15:38:33 +02:00
lain 2cdaac4330 SideEffects: Move streaming of chats to after the transaction. 2020-06-07 14:52:56 +02:00
lain f4cf4ae16e ChatController: Use new oauth scope *:chats. 2020-06-06 16:48:02 +02:00
lain ca0e6e702b ChatMessageReference -> Chat.MessageReference 2020-06-06 11:51:10 +02:00
lain cc8a7dc205 SideEffects / ChatView: Add an unread cache.
This is to prevent wrong values in the stream.
2020-06-05 12:01:33 +02:00
Egor Kislitsyn 317e2b8d61
Use atoms as keys in `ActivityPub.fetch_*` functions options 2020-06-04 21:36:26 +04:00
lain 00748e9650 ChatMessageReferences: Change seen -> unread 2020-06-04 17:14:42 +02:00
lain b3407344d3 ChatController: Add function to mark single message as read. 2020-06-03 19:21:23 +02:00
lain c020fd4352 ChatMessageReferenceView: Return read status as `unread`. 2020-06-03 18:58:58 +02:00
lain 7f5c5b11a5 Chats: Remove `unread` from the db, calculate from unseen messages. 2020-06-03 14:26:50 +02:00
lain 73127cff75 Credo fixes. 2020-06-03 13:17:29 +02:00
lain f3ccd50a33 ChatMessageReferences: Adjust views 2020-06-03 12:49:53 +02:00
lain aa22fce8f4 ChatMessageReference: Introduce and switch in chat controller. 2020-06-03 12:30:12 +02:00
lain 767ce8b803 StreamerView: Actually send Chats, not ChatMessages. 2020-05-29 16:02:45 +02:00
lain af6d01ec93 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-29 12:36:17 +02:00
Mark Felder 95f6240889 Fix minor spelling error 2020-05-27 14:34:37 -05:00
lain ee35bb5ac2 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-25 13:57:27 +02:00
rinpatch 1fa7aa9fc5 Merge branch 'emoji-react-better-errors' into 'develop'
EmojiReactionController: Return more appropriate error.

See merge request pleroma/pleroma!2569
2020-05-22 14:36:08 +00:00
Egor Kislitsyn ba106aa9c8
Fix notifications mark as read API 2020-05-22 18:15:36 +04:00
lain bcb549531f EmojiReactionController: Return more appropriate error. 2020-05-22 14:38:28 +02:00
lain 578ed3a37f Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-21 15:35:13 +02:00
lain f166316f50 Merge branch 'openapi/pleroma-api/pleroma' into 'develop'
Add OpenAPI spec for PleromaAPI.PleromaAPIController

See merge request pleroma/pleroma!2564
2020-05-21 13:30:09 +00:00
lain 814c3e5171 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-21 15:00:05 +02:00
lain 265746b21f Merge branch 'openapi/pleroma-api/emojis' into 'develop'
Add OpenAPI spec for EmojiPackController

See merge request pleroma/pleroma!2549
2020-05-20 12:08:28 +00:00
Egor Kislitsyn 5ba6e1c322
Move notification actions to PleromaAPI.NotificationController 2020-05-20 15:15:13 +04:00
Egor Kislitsyn f3fc8b22b1
Move conversation actions to PleromaAPI.ConversationController 2020-05-20 15:15:13 +04:00
Egor Kislitsyn 9a5de0f454
Move reaction actions to EmojiReactionController 2020-05-20 15:15:13 +04:00
Egor Kislitsyn 490a3a34b6
Add OpenAPI spec for PleromaAPI.PleromaAPIController 2020-05-20 15:15:13 +04:00
Egor Kislitsyn 6609714d66
Move Scrobble views to ScrobbleView 2020-05-19 16:26:06 +04:00
Egor Kislitsyn 524d04d921
Add OpenAPI spec for PleromaAPI.ScrobbleController 2020-05-19 16:26:06 +04:00
Egor Kislitsyn fe5d423b43
Add OpenAPI spec for MascotController 2020-05-18 22:01:18 +04:00
lain 0d417e005d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-18 18:38:32 +02:00
Egor Kislitsyn aef31c69df
Rename EmojiAPIController to EmojiPackController 2020-05-18 19:43:25 +04:00
Egor Kislitsyn 8bde8dfec2
Cleanup Pleroma.Emoji.Pack 2020-05-18 19:43:23 +04:00
Egor Kislitsyn 6e4de715b3
Add OpenAPI spec for PleromaAPI.EmojiAPIController 2020-05-18 19:28:46 +04:00
Alexander Strizhakov 215daabdb4
copyright update 2020-05-18 15:15:51 +03:00
lain 9c17109765 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-17 12:14:49 +02:00
lain 4b28d812cf Merge branch 'restricted-relations-embedding' into 'develop'
Restricted support for embedded relationships

See merge request pleroma/pleroma!2456
2020-05-17 07:26:51 +00:00
lain f012c3a202 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-15 13:33:04 +02:00
lain 3342846ac2 ChatView: Add update_at field. 2020-05-14 13:20:28 +02:00
Egor Kislitsyn 6802dc28ba
Add OpenAPI spec for PleromaAPI.AccountController 2020-05-13 19:06:46 +04:00
lain 0f0acc740d Chat: Allow posting without content if an attachment is present. 2020-05-13 15:31:28 +02:00
lain c0ea5c60e4 ChatController: Don't return chats for user you've blocked. 2020-05-12 16:43:04 +02:00
lain ec72cba43e Chat Controller: Add basic error handling. 2020-05-12 13:23:09 +02:00
lain b5aa204eb8 ChatController: Support deletion of chat messages. 2020-05-12 13:13:03 +02:00
lain 8d5597ff68 ChatController: Add GET /chats/:id 2020-05-10 13:26:14 +02:00
lain f335e1404a ChatView: Add the last message to the view. 2020-05-10 13:00:01 +02:00
Ivan Tashkinov aee88d11be [#2456] Removed support for embedded relationships in account view. 2020-05-10 09:16:48 +03:00
Ivan Tashkinov 14a49a0483 [#2456] Dropped support for embedded `pleroma/account/relationship` in statuses and notifications. 2020-05-09 18:05:44 +03:00
Ivan Tashkinov b2924ab1fb Merge remote-tracking branch 'remotes/origin/develop' into restricted-relations-embedding 2020-05-08 21:37:55 +03:00
lain 7637ef4203 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-08 13:13:37 +02:00
lain ef55d24054 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/emojireactvalidator 2020-05-07 18:53:34 +02:00
lain fb2d284d28 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-07 15:05:40 +02:00
lain 7ac0cffb34 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/emojireactvalidator 2020-05-07 15:03:12 +02:00
lain f0c22df226 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into feature/undo-validator-reduced 2020-05-07 14:45:20 +02:00
Maksim 3d0c567fbc Pleroma.Web.TwitterAPI.TwoFactorAuthenticationController -> Pleroma.Web.PleromaAPI.TwoFactorAuthenticationController 2020-05-07 08:14:54 +00:00
lain 20baa2eaf0 ChatMessages: Add attachments. 2020-05-06 16:12:36 +02:00
lain b34debe615 Undoing: Move undoing reactions to the pipeline everywhere. 2020-05-05 16:17:09 +02:00
lain db55dc9445 ActivityPub: Remove `react_with_emoji`. 2020-05-05 12:28:28 +02:00
lain b04328c3de ChatController: Add mark_as_read 2020-05-04 13:10:36 +02:00
lain c40afe5ba0 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-05-04 10:43:20 +02:00
rinpatch e55876409b Deactivate local users on deletion instead of deleting the record
Prevents the possibility of re-registration, which allowed to read
DMs of the deleted account.

Also includes a migration that tries to find any already deleted
accounts and insert skeletons for them.

Closes pleroma/pleroma#1687
2020-05-02 19:05:13 +03:00
Ivan Tashkinov d5cdc907e3 Restricted embedding of relationships where applicable (statuses / notifications / accounts rendering).
Added support for :skip_notifications for accounts listing (index.json).
Adjusted tests.
2020-05-01 18:45:24 +03:00
Alexander Strizhakov 4a487e4d0b
fix for auth check 2020-04-30 17:50:57 +03:00
Alexander Strizhakov 36abeedf9f
error rename 2020-04-30 16:09:22 +03:00
Alexander Strizhakov ddb757f743
emoji api packs changes in routes with docs update 2020-04-30 16:09:18 +03:00
Alexander Strizhakov 342f55fb92
refactor emoji api with fixes 2020-04-30 15:45:52 +03:00
Alexander Strizhakov 5839e67eb8
return data only for updated emoji 2020-04-30 15:24:02 +03:00
lain 145d35ff70 Apply suggestion to lib/pleroma/web/pleroma_api/controllers/chat_controller.ex 2020-04-29 19:49:03 +00:00
lain 0c491b904d Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-29 13:19:04 +02:00
lain 3d040b1a87 Credo fixes. 2020-04-27 17:55:29 +02:00
lain ad82a216ff Chat API: Align more to Pleroma/Mastodon API. 2020-04-27 17:48:34 +02:00
lain 49e673dfea ChatView: Add actor_account_id 2020-04-27 16:08:03 +02:00
Ivan Tashkinov b4139cc547 [#2409] Made `GET /api/v1/accounts/:id/favourites` auth-optional, adjusted tests. 2020-04-24 22:25:27 +03:00
Ivan Tashkinov 00e62161f6 [#2409] Tested all auth setup configs in AuthTestControllerTest. Adjusted :skip_plug definitions for some endpoints. 2020-04-24 16:52:38 +03:00
Ivan Tashkinov 2958a7d246 Fixed OAuth restrictions for :api routes. Made auth info dropped for :api routes if OAuth check was neither performed nor explicitly skipped. 2020-04-22 18:50:25 +03:00
lain 66c2eb670b ChatController: Validate parameters. 2020-04-21 18:23:00 +02:00
Ivan Tashkinov f685cbd309 Automatic checks of authentication / instance publicity. Definition of missing OAuth scopes in AdminAPIController. Refactoring. 2020-04-21 16:29:19 +03:00
lain b5df4a98e4 ChatMessageView: Support emoji. 2020-04-20 14:38:53 +02:00
lain 970b74383b Credo fixes. 2020-04-20 12:29:19 +02:00
lain 8c2c325598 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-17 15:51:24 +02:00
lain 372614cfd3 ChatView: Add a mastodon api representation of the recipient. 2020-04-17 15:37:54 +02:00
lain d45ae64858 ChatController: Use OAuth scopes. 2020-04-17 13:04:46 +02:00
rinpatch badd888ccb Merge branch 'authenticated-api-oauth-check-enforcement' into 'develop'
Enforcement of OAuth scopes check for authenticated API endpoints

See merge request pleroma/pleroma!2349
2020-04-16 21:58:57 +00:00
rinpatch 942d7467ca Merge branch 'develop' into features/remove-user-source_data 2020-04-16 21:28:52 +03:00
lain f8c3ae7a62 ChatController: Handle pagination. 2020-04-16 18:43:31 +02:00
lain 6ace22b56a Chat: Add views, don't return them in timeline queries. 2020-04-15 18:23:16 +02:00
Ivan Tashkinov bedf92e064 Merge remote-tracking branch 'remotes/origin/develop' into authenticated-api-oauth-check-enforcement 2020-04-15 19:20:34 +03:00
lain 44bfb491ea Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-04-15 14:41:43 +02:00
Ivan Tashkinov a21baf89d8 Merge remote-tracking branch 'remotes/origin/develop' into output-of-relationships-in-statuses 2020-04-13 09:16:51 +03:00
Haelwenn (lanodan) Monnier 9172d719cc
profile emojis in User.emoji instead of source_data 2020-04-10 06:20:02 +02:00
lain 2cc6841424 ChatController: Basic message posting. 2020-04-09 17:18:31 +02:00
lain e8fd0dd689 ChatController: Basic support for returning messages. 2020-04-09 16:59:49 +02:00
lain 68abea313d ChatController: Add creation and return of chats. 2020-04-09 15:13:55 +02:00
Ivan Tashkinov fc81e5a49c Enforcement of OAuth scopes check for authenticated API endpoints, :skip_plug plug to mark a plug explicitly skipped (disabled). 2020-04-06 10:20:44 +03:00
Ivan Tashkinov 2f2bd7fe72 Ability to control the output of account/pleroma/relationship in statuses in order to improve the rendering performance.
See `[:extensions, output_relationships_in_statuses_by_default]` setting and `with_relationships` param.
2020-04-01 19:49:09 +03:00
Egor Kislitsyn 4a2538967c
Support pagination in conversations 2020-03-24 20:18:27 +04:00
Haelwenn (lanodan) Monnier 8f7bc07ebc pleroma_api_controller.ex: Improve conversations error reporting
Related: https://git.pleroma.social/pleroma/pleroma/issues/1594
2020-03-15 12:35:23 +01:00
Mark Felder 05da5f5cca Update Copyrights 2020-03-03 16:44:49 -06:00
Haelwenn (lanodan) Monnier 6da6540036
Bump copyright years of files changed after 2020-01-07
Done via the following command:
git diff fcd5dd259a --stat --name-only | xargs sed -i '/Pleroma Authors/c# Copyright © 2017-2020 Pleroma Authors <https:\/\/pleroma.social\/>'
2020-03-02 06:08:45 +01:00
Egor Kislitsyn 22018adae6
Fix Dialyzer warnings 2020-02-25 18:34:56 +04:00
lain 314928333a Pleroma API: Add endpoint to get reaction information on a single emoji 2020-02-19 17:16:45 +01:00
Lain Soykaf f875b9650a EmojiReactions: Add Mastodon-aligned reaction endpoints, change response 2020-02-07 14:52:13 +01:00
feld e2f2602fdc Merge branch 'emoji-api-errors' into 'develop'
Emoji api error if emoji dir is not writable

Closes admin-fe#62

See merge request pleroma/pleroma!2161
2020-01-30 14:13:40 +00:00
feld b3e9c87724 Update emoji_api_controller.ex 2020-01-30 14:09:41 +00:00
Alexander Strizhakov e7fee0d6fa
emoji api error on not writable dir 2020-01-29 15:31:34 +03:00
lain b3a877d6c9 Emoji Reactions: Correctly handle deleted users 2020-01-29 11:43:36 +01:00
lain a802e07241 Emoji Reactions: Add `reacted` field to emoji reactions 2020-01-29 11:39:06 +01:00
lain 347f3ed2c6 Emoji reactions: Change api format once more 2020-01-24 10:52:24 +01:00
lain dd3fc50ea4 Emoji reactions: Change cache and reply format 2020-01-22 13:57:42 +01:00
lain 5fddf988ea Pleroma API: `emoji_reactions_by` does not need authorization 2020-01-20 13:05:35 +01:00
Ivan Tashkinov 7973cbdb9f OAuthScopesPlug: disallowed nil token (unless with :fallback option). WIP: controller tests modification: OAuth scopes usage. 2019-12-15 22:32:42 +03:00
Ivan Tashkinov 835ac2157c Merge remote-tracking branch 'remotes/upstream/develop' into 1427-oauth-admin-scopes
# Conflicts:
#	CHANGELOG.md
2019-12-10 08:55:14 +03:00
Ivan Tashkinov 40e1817f70 [#1427] Fixes / improvements of admin scopes support. Added tests. 2019-12-06 20:33:47 +03:00
Ivan Tashkinov af42c00cff [#1427] Reworked admin scopes support.
Requalified users.is_admin flag as legacy accessor to admin actions in case token lacks admin scope(s).
2019-12-06 00:25:44 +03:00
Ivan Tashkinov 51111e286b [#1427] Initial support for OAuth admin scopes. 2019-11-29 18:57:19 +03:00
Ivan Tashkinov de892d2fe1 [#1335] Reorganized users.subscribers as UserRelationship. Added tests for UserRelationship-related functionality. 2019-11-20 15:46:11 +03:00
rinpatch 6085c71bd1 Merge branch 'reactions' into 'develop'
Emoji Reactions

See merge request pleroma/pleroma!1662
2019-11-14 08:47:10 +00:00
Steven Fuchs 94627baa5c New rate limiter 2019-11-11 12:13:06 +00:00
lain b22ee9d966 Merge remote-tracking branch 'origin/develop' into reactions 2019-11-08 13:27:11 +01:00
lain 2480200759 Merge branch 'refactor/following-relationships' into 'develop'
Move following relationships to a separate table

Closes #1233

See merge request pleroma/pleroma!1814
2019-10-28 07:27:45 +00:00
eugenijm 0580654485 Mark the conversations with the blocked user as read and update the blocking user's `unread_conversation_count`.
Since the conversations with the blocked user are invisible, they are excluded
from the blocking user's `unread_conversation_count`.
2019-10-26 02:29:18 +03:00
Egor Kislitsyn 4c1dd55c48 Merge remote-tracking branch 'upstream/develop' into refactor/following-relationships 2019-10-24 14:55:36 +07:00
Egor Kislitsyn 4ea1a61b00
Merge branch 'develop' into refactor/following-relationships 2019-10-21 14:19:15 +07:00
Ivan Tashkinov c6fdfbc4f1 Merge remote-tracking branch 'remotes/upstream/develop' into 1304-user-info-deprecation
# Conflicts:
#	CHANGELOG.md
#	lib/pleroma/notification.ex
#	lib/pleroma/user.ex
#	lib/pleroma/user/info.ex
#	lib/pleroma/web/activity_pub/activity_pub.ex
#	lib/pleroma/web/admin_api/admin_api_controller.ex
#	lib/pleroma/web/ostatus/handlers/follow_handler.ex
#	lib/pleroma/web/ostatus/ostatus.ex
#	lib/pleroma/web/salmon/salmon.ex
#	lib/pleroma/web/websub/websub.ex
#	test/web/admin_api/admin_api_controller_test.exs
#	test/web/federator_test.exs
#	test/web/mastodon_api/controllers/conversation_controller_test.exs
#	test/web/ostatus/ostatus_controller_test.exs
#	test/web/ostatus/ostatus_test.exs
#	test/web/salmon/salmon_test.exs
#	test/web/websub/websub_test.exs
2019-10-20 20:43:18 +03:00
eugenijm 52ed2f8f2d Pleroma API: `POST /api/v1/pleroma/conversations/read` to mark all user's conversations as read 2019-10-19 15:24:06 +03:00
Ivan Tashkinov 10ff01acd9 [#1304] Moved all non-mutes / non-blocks fields from User.Info to User. WIP. 2019-10-16 21:59:21 +03:00
Egor Kislitsyn 059005ff82
Replace `user.following` with Pleroma.FollowingRelationship 2019-10-11 02:35:32 +07:00
lain d580eedfe9 Linting. 2019-10-07 12:40:33 +02:00
lain 73b6512907 Merge remote-tracking branch 'origin/develop' into reactions 2019-10-07 12:30:59 +02:00
Ivan Tashkinov b93856874d [#1234] Merge remote-tracking branch 'remotes/upstream/develop' into 1234-mastodon-2-4-3-oauth-scopes
# Conflicts:
#	CHANGELOG.md
#	lib/pleroma/web/mastodon_api/controllers/mastodon_api_controller.ex
#	lib/pleroma/web/router.ex
2019-10-06 17:12:17 +03:00
Ivan Tashkinov 64095961fe [#1234] Merge remote-tracking branch 'remotes/upstream/develop' into 1234-mastodon-2-4-3-oauth-scopes
# Conflicts:
#	CHANGELOG.md
#	lib/pleroma/web/mastodon_api/controllers/mastodon_api_controller.ex
#	lib/pleroma/web/router.ex
2019-10-02 20:42:40 +03:00
lain 4cb603e1df PleromaAPI: Add unreacting. 2019-10-02 18:19:16 +02:00
lain 391c736292 PleromaAPI: Fix emoji_reactions_by 2019-10-02 18:13:10 +02:00
lain 557223b2b5 Merge remote-tracking branch 'origin/develop' into reactions 2019-10-02 13:27:55 +02:00
lain 6068d2254e PleromaAPIController: Fixes and refactoring. 2019-09-30 15:13:25 +02:00
Egor Kislitsyn 0c6009dd2e
Extract mascot actions from `MastodonAPIController` to MascotController 2019-09-30 19:32:43 +07:00
Egor Kislitsyn 3c5ecb70b4
Add PleromaAPI.AccountController 2019-09-30 19:10:55 +07:00
lain b923842e96 Merge remote-tracking branch 'origin/develop' into reactions 2019-09-30 13:57:54 +02:00
Ariadne Conill 1d7cbdaf7b change new scrobble endpoint 2019-09-30 10:39:48 +00:00
Ariadne Conill e653edd182 split scrobble functions into their own controller 2019-09-30 10:39:48 +00:00
Ariadne Conill a6e1469767 router: change scrobble timeline route from now-playing to scrobbles 2019-09-30 10:39:48 +00:00
Ariadne Conill 7cad6ea67a pleroma api: hook up scrobbler controller 2019-09-30 10:39:17 +00:00
rinpatch e9d1aa75d5 Revert subscription refactoring.
As discussed in pleroma-meta#2

This reverts commit eb9aa7aa10, reversing
changes made to c4fbb56984.
2019-09-29 18:43:27 +03:00