stream_settings: Add confirmation modal for changing privacy.

Fixes: #27916
This commit is contained in:
Vector73
2024-01-15 11:57:57 +05:30
committed by Tim Abbott
parent 925f5e8b67
commit 144c2c2f11
2 changed files with 25 additions and 1 deletions

View File

@@ -4,6 +4,7 @@ import $ from "jquery";
import render_settings_deactivation_stream_modal from "../templates/confirm_dialog/confirm_deactivate_stream.hbs";
import render_inline_decorated_stream_name from "../templates/inline_decorated_stream_name.hbs";
import render_change_stream_info_modal from "../templates/stream_settings/change_stream_info_modal.hbs";
import render_confirm_stream_privacy_change_modal from "../templates/stream_settings/confirm_stream_privacy_change_modal.hbs";
import render_copy_email_address_modal from "../templates/stream_settings/copy_email_address_modal.hbs";
import render_stream_description from "../templates/stream_settings/stream_description.hbs";
import render_stream_settings from "../templates/stream_settings/stream_settings.hbs";
@@ -683,7 +684,23 @@ export function initialize() {
const data = settings_org.populate_data_for_request($subsection_elem, false, sub);
const url = "/json/streams/" + stream_id;
settings_org.save_organization_settings(data, $save_button, url);
if (
data.is_private === undefined ||
stream_data.get_stream_privacy_policy(stream_id) !== "invite-only"
) {
settings_org.save_organization_settings(data, $save_button, url);
return;
}
dialog_widget.launch({
html_heading: $t_html({defaultMessage: "Confirm changing access permissions"}),
html_body: render_confirm_stream_privacy_change_modal,
id: "confirm_stream_privacy_change",
html_submit_button: $t_html({defaultMessage: "Confirm"}),
on_click() {
settings_org.save_organization_settings(data, $save_button, url);
},
close_on_submit: true,
});
},
);