diff --git a/web/src/message_edit.ts b/web/src/message_edit.ts index 5f2637755a..5e4b77e304 100644 --- a/web/src/message_edit.ts +++ b/web/src/message_edit.ts @@ -102,6 +102,10 @@ export function is_topic_editable(message: Message, edit_limit_seconds_buffer = return false; } + if (message.type === "stream" && stream_data.is_stream_archived(message.stream_id)) { + return false; + } + if (!settings_data.user_can_move_messages_to_another_topic()) { return false; } @@ -206,6 +210,10 @@ export function is_message_sent_by_my_bot(message: Message): boolean { } export function get_deletability(message: Message): boolean { + if (message.type === "stream" && stream_data.is_stream_archived(message.stream_id)) { + return false; + } + if (settings_data.user_can_delete_any_message()) { return true; } @@ -243,6 +251,10 @@ export function is_stream_editable(message: Message, edit_limit_seconds_buffer = return false; } + if (message.type === "stream" && stream_data.is_stream_archived(message.stream_id)) { + return false; + } + if (!settings_data.user_can_move_messages_between_streams()) { return false; } diff --git a/web/src/popover_menus_data.ts b/web/src/popover_menus_data.ts index d33e22737a..5774796cab 100644 --- a/web/src/popover_menus_data.ts +++ b/web/src/popover_menus_data.ts @@ -206,7 +206,10 @@ export function get_actions_popover_content_context(message_id: number): ActionP // `media_breakpoints.sm_min`, we need to include the reaction button in the // popover if it is not displayed. const should_display_add_reaction_option = - !message.is_me_message && !is_add_reaction_icon_visible() && not_spectator; + !message.is_me_message && + !is_add_reaction_icon_visible() && + not_spectator && + !(stream_id && stream_data.is_stream_archived(stream_id)); return { message_id: message.id, diff --git a/web/styles/reactions.css b/web/styles/reactions.css index 9cdf169cf3..c0cc0a834d 100644 --- a/web/styles/reactions.css +++ b/web/styles/reactions.css @@ -6,6 +6,12 @@ margin-bottom: var(--message-box-markdown-aligned-vertical-space); } + .message_reaction_container { + &.disabled { + cursor: not-allowed; + } + } + .message_reaction { display: flex; /* Set a pixel and half padding to maintain @@ -39,6 +45,10 @@ box-shadow: none; } + &.disabled { + pointer-events: none; + } + &:hover { background-color: var(--color-message-reaction-background-hover); } diff --git a/web/templates/message_controls.hbs b/web/templates/message_controls.hbs index 1efbfbaf38..02ac760a68 100644 --- a/web/templates/message_controls.hbs +++ b/web/templates/message_controls.hbs @@ -1,13 +1,15 @@ -{{#if msg/sent_by_me}} -
-{{/if}} +{{#unless is_archived}} + {{#if msg/sent_by_me}} + + {{/if}} -{{#unless msg/sent_by_me}} -