message_move: Disable stream select dropdown for unprivileged users.

This commit disables the stream-select dropdown in the "Move message"
modal if the user is not allowed to move messages between streams, and
adds a tooltip for clarification when the dropdown is disabled.

 Fixes #28345.
This commit is contained in:
Vector73 2024-02-14 10:39:45 +05:30 committed by Tim Abbott
parent 23baabba86
commit 6801ea33ba
3 changed files with 24 additions and 0 deletions

View File

@ -555,6 +555,9 @@ export async function build_move_topic_to_stream_popover(
render_selected_stream();
$("#move_topic_to_stream_widget").prop("disabled", disable_stream_input);
if (disable_stream_input) {
$stream_header_colorblock.addClass("disabled");
}
$("#move_topic_modal .move_messages_edit_topic").on("input", () => {
update_submit_button_disabled_state(stream_widget_value);
});

View File

@ -520,4 +520,21 @@ export function initialize(): void {
placement: "bottom",
appendTo: () => document.body,
});
delegate("body", {
target: "#move_topic_to_stream_widget_wrapper",
onShow(instance) {
if ($("#move_topic_to_stream_widget").prop("disabled")) {
instance.setContent(
$t({
defaultMessage:
"You do not have permission to move messages to another stream in this organization.",
}),
);
return undefined;
}
return false;
},
appendTo: () => document.body,
});
}

View File

@ -378,6 +378,10 @@
}
}
.stream_header_colorblock.disabled {
filter: brightness(50%);
}
/* this one is because in the app we have blue and in dark-theme it should be white. */
.popover a {
color: inherit;