Commit Graph

10096 Commits

Author SHA1 Message Date
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 1a11f0e453 Chats: Change id to flake id. 2020-06-07 14:25:30 +02:00
lain 0365053c8d AttachmentValidator: Check if the mime type is valid. 2020-06-07 09:19:00 +02:00
lain 40fc4e974e Notfication: Add validation of notification types 2020-06-06 16:59:08 +02:00
lain f4cf4ae16e ChatController: Use new oauth scope *:chats. 2020-06-06 16:48:02 +02:00
lain f77d4a302d Credo fixes. 2020-06-06 15:51:08 +02:00
lain 9189b489ee Migrations: Move Notification migration code to helper 2020-06-06 15:33:02 +02:00
lain 9fa3f0b156 Notification: Change type of `type` to an enum. 2020-06-06 13:08:45 +02:00
lain ca0e6e702b ChatMessageReference -> Chat.MessageReference 2020-06-06 11:51:10 +02:00
lain 137adef6e0 ChatMessageReference: Use FlakeId.Ecto.Type
No need for compat because this is brand new.
2020-06-06 10:42:24 +02:00
lain 239d03499e Chat: creation_cng -> changeset
Make our usage of this more uniform.
2020-06-06 10:38:45 +02:00
lain c5e3f2454c Docs: Unify parameters in examples. 2020-06-06 10:35:38 +02:00
lain 4e8c0eecd5 WebPush: Don't break on contentless chat messages. 2020-06-06 09:46:07 +02:00
lain f24d2f714f Credo fixes 2020-06-05 17:18:48 +02:00
lain a8ca030d85 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-05 16:53:56 +02:00
Haelwenn 657e1583f8 Merge branch 'features/put_if_present' into 'develop'
Create Pleroma.Maps.put_if_present(map, key, value, value_function // &{:ok, &1}) :: map

See merge request pleroma/pleroma!2436
2020-06-05 14:48:02 +00:00
Haelwenn 54bae06b4f Create Pleroma.Maps.put_if_present(map, key, value, value_fun // &{:ok, &1})
Unifies all the similar functions to one and simplify some blocks with it.
2020-06-05 14:48:02 +00:00
lain 115d08a754 Pipeline: Add a side effects step after the transaction finishes
This is to run things like streaming notifications out, which will
sometimes need data that is created by the transaction, but is
streamed out asynchronously.
2020-06-05 16:47:02 +02:00
lain 65689ba9bd If Credo fixes is so good, why is there no Credo fixes 2? 2020-06-05 13:10:48 +02:00
lain f3ea6ee2c8 Credo fixes. 2020-06-05 12:45:25 +02:00
lain 0efa8aa0b9 Transmogrifier: For follows, create notifications last.
As the notification type changes depending on the follow state,
the notification should not be created and streamed out before the
state settles. For this reason, the notification creation has been
delayed until it's clear if the user has been followed or not.

This is a bit hacky but it will be properly rewritten using the
pipeline soon.
2020-06-05 12:26:07 +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
lain aa2ac76510 Notification: Don't break on figuring out the type of old EmojiReactions 2020-06-04 20:40:46 +02:00
lain d44da91bbf SubscriptionOperation: Let chat mentions through. 2020-06-04 20:28:33 +02:00
lain 74edd4f391 Merge branch 'remake-remodel-dms' of git.pleroma.social:pleroma/pleroma into remake-remodel-dms 2020-06-04 19:24:07 +02:00
lain 56dfa0e0fb Transmogrifier: Update notification after accepting. 2020-06-04 19:22:49 +02:00
lain 9a53f619e0 Apply suggestion to test/chat_message_reference_test.exs 2020-06-04 15:16:15 +00:00
lain 41503b1673 Apply suggestion to test/web/activity_pub/transmogrifier/chat_message_test.exs 2020-06-04 15:16:10 +00:00
lain 00748e9650 ChatMessageReferences: Change seen -> unread 2020-06-04 17:14:42 +02:00
lain f5cb1f3616 Merge branch 'openapi/admin/config' into 'develop'
Add OpenAPI spec to AdminAPI.ConfigController

See merge request pleroma/pleroma!2606
2020-06-04 13:00:13 +00:00
lain 6e103a18af Docs: Document WebPush changes. 2020-06-04 14:49:36 +02:00
lain b952f3f379 WebPush: Push out chat message notications. 2020-06-04 14:49:10 +02:00
lain 5d7dda883e SideEffectsTest: More tests. 2020-06-04 14:46:41 +02:00
Egor Kislitsyn a8132690bd
Fix credo 2020-06-04 13:46:13 +04:00
Egor Kislitsyn b4d5bdd6f1
Merge branch 'develop' into openapi/admin/config 2020-06-04 13:28:00 +04:00
lain e46aecda55 Notification: Fix notifications backfill for compacted activities 2020-06-03 20:51:59 +02:00
lain e213e31577 Changelog: Add chats to changelog. 2020-06-03 19:25:57 +02:00
lain 286bd8eb83 Docs: Add `mark_message_as_read` to docs 2020-06-03 19:24:37 +02:00
lain b3407344d3 ChatController: Add function to mark single message as read. 2020-06-03 19:21:23 +02:00
lain d6693a9102 Merge branch 'openapi/admin/reports' into 'develop'
Add OpenAPI spec for AdminAPI.ReportController

See merge request pleroma/pleroma!2628
2020-06-03 17:00:59 +00:00
lain c020fd4352 ChatMessageReferenceView: Return read status as `unread`. 2020-06-03 18:58:58 +02:00
Egor Kislitsyn c16315d055
Add OpenAPI spec for AdminAPI.ReportController 2020-06-03 19:17:05 +04:00
Egor Kislitsyn 9d572f2f66
Move report actions to AdminAPI.ReportController 2020-06-03 19:17:04 +04:00
lain fb4ae9c720 Streamer, SideEffects: Stream out ChatMessageReferences
Saves us a few calles to fetch things from the DB that we already
have.
2020-06-03 16:45:04 +02:00
Haelwenn 18b050dfd1 Merge branch 'openapi/update-admin-api/status' into 'develop'
Update OpenAPI spec for AdminAPI.StatusController

See merge request pleroma/pleroma!2624
2020-06-03 14:04:12 +00:00
lain 903955b189 FollowingRelationship: Remove meaningless change 2020-06-03 14:40:44 +02:00
lain 7b79871e97 Migrations: Add chat_id, seen index to ChatMessageReferences
This ensures fast count of unseen messages
2020-06-03 14:34:33 +02:00
lain 1e9efcf7c3 Migrations: Fix migration module name 2020-06-03 14:27:54 +02:00
lain 7f5c5b11a5 Chats: Remove `unread` from the db, calculate from unseen messages. 2020-06-03 14:26:50 +02:00