discourse/plugins/chat/app/services/chat
Charles Lechasseur 0fa180beed
FIX: In chat messages, filter uploads by UserUpload, not by Upload.user (#34596)
When creating or updating a chat message, uploads attached to the
message are filtered so as to only keep uploads created by the message
creator using `Upload.user`. This field, however, only points to the
_original_ user that created the upload, but since uploads are
de-duplicated, other users might have also uploaded the file. This PR
fixes this by looking at the `UserUpload`s instead (as suggested by
@SamSaffron).

Reported here: https://meta.discourse.org/t/chat-upload-bug/379253
2025-09-01 20:06:27 +10:00
..
action DEV: Refactor Chat::LookupChannelThreads to follow best practices 2025-05-22 12:06:54 +02:00
channel/policy DEV: Refactor Chat::ListChannelMessages service a bit 2025-06-23 14:18:49 +02:00
direct_message_channel/policy DEV: Introduce a Service::ActionBase class for service actions 2024-09-18 17:02:46 +02:00
thread/policy DEV: Refactor Chat::ListChannelThreadMessages a bit (#33380) 2025-08-08 14:05:38 +02:00
add_users_to_channel.rb SECURITY: Enforce DM limits properly 2025-04-29 12:06:33 +08:00
auto_join_channels.rb FIX: Catch possible PG exception from Chat::AutoJoinChannels (#34132) 2025-08-07 12:50:22 +02:00
auto_leave_channels.rb PERF: optimize chat user membership cleanup when removing a single user (#29833) 2024-11-20 09:21:02 +01:00
create_category_channel.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
create_direct_message_channel.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
create_message.rb FIX: In chat messages, filter uploads by UserUpload, not by Upload.user (#34596) 2025-09-01 20:06:27 +10:00
create_message_interaction.rb DEV: adds blocks support to chat messages (#29782) 2024-11-19 07:07:58 +01:00
create_thread.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
flag_message.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
invite_users_to_channel.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
leave_channel.rb FIX: Error when leaving group DM channel (#31537) 2025-02-27 14:26:07 +10:00
list_channel_messages.rb DEV: Unify ListChannelMessages/ListChannelThreadMessages behaviors 2025-08-25 13:48:02 +02:00
list_channel_thread_messages.rb DEV: Refactor Chat::ListChannelThreadMessages a bit (#33380) 2025-08-08 14:05:38 +02:00
list_user_channels.rb FIX: show chat thread notifications for direct message channels (#29414) 2024-10-31 10:50:11 +04:00
lookup_channel_threads.rb DEV: Refactor Chat::LookupChannelThreads to follow best practices 2025-05-22 12:06:54 +02:00
lookup_thread.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
lookup_user_threads.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
mark_all_user_channels_read.rb DEV: Provide user input to services using params key 2024-10-25 09:57:59 +02:00
mark_thread_title_prompt_seen.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
message_destroyer.rb DEV: Add last_message_id to channel and thread (#22488) 2023-07-13 10:28:11 +10:00
publisher.rb PERF: auto join & leave chat channels (#29193) 2024-11-12 15:00:59 +11:00
remove_user_from_channel.rb FIX: Error when leaving group DM channel (#31537) 2025-02-27 14:26:07 +10:00
restore_message.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
search_chatable.rb FIX: prevent group chat when cannot see group members (#34571) 2025-08-27 14:54:47 +04:00
start_reply.rb DEV: Refactor StartReply & StopReply services a bit 2025-04-30 11:50:22 +02:00
stop_message_streaming.rb DEV: Remove hash-like access from service contracts 2024-10-29 16:02:51 +01:00
stop_reply.rb DEV: Refactor StartReply & StopReply services a bit 2025-04-30 11:50:22 +02:00
tracking_state.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
trash_channel.rb FEATURE: trigger an event when chat channel is trashed (#32844) 2025-05-22 09:48:32 +05:30
trash_message.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
trash_messages.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
unfollow_channel.rb FIX: Error when leaving group DM channel (#31537) 2025-02-27 14:26:07 +10:00
update_channel.rb DEV: Unify params access in services 2024-12-13 11:13:18 +01:00
update_channel_status.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
update_message.rb FIX: In chat messages, filter uploads by UserUpload, not by Upload.user (#34596) 2025-09-01 20:06:27 +10:00
update_thread.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
update_thread_notification_settings.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00
update_user_channel_last_read.rb DEV: Remove hash-like access from service contracts 2024-10-29 16:02:51 +01:00
update_user_thread_last_read.rb DEV: Remove hash-like access from service contracts 2024-10-29 16:02:51 +01:00
upsert_draft.rb DEV: Apply new Rubocop linting on services 2024-12-02 17:31:36 +01:00