mirror of
https://github.com/zulip/zulip.git
synced 2025-11-01 04:23:46 +00:00
stream_edit: Extract submit_add_subscriber_form.
This commit is contained in:
@@ -202,6 +202,47 @@ exports.invite_user_to_stream = function (user_ids, sub, success, failure) {
|
||||
});
|
||||
};
|
||||
|
||||
function submit_add_subscriber_form(e) {
|
||||
const settings_row = $(e.target).closest('.subscription_settings');
|
||||
const sub = get_sub_for_target(settings_row);
|
||||
if (!sub) {
|
||||
blueslip.error('.subscriber_list_add form submit fails');
|
||||
return;
|
||||
}
|
||||
|
||||
const user_ids = user_pill.get_user_ids(exports.pill_widget);
|
||||
const stream_subscription_info_elem = $('.stream_subscription_info').expectOne();
|
||||
|
||||
if (user_ids.length === 0) {
|
||||
stream_subscription_info_elem.text(i18n.t("No user to subscribe."))
|
||||
.addClass("text-error").removeClass("text-success");
|
||||
return;
|
||||
}
|
||||
|
||||
function invite_success(data) {
|
||||
exports.pill_widget.clear();
|
||||
if (!Object.entries(data.already_subscribed).length) {
|
||||
stream_subscription_info_elem.text(i18n.t("Subscribed successfully!"));
|
||||
// The rest of the work is done via the subscription -> add event we will get
|
||||
} else {
|
||||
stream_subscription_info_elem.text(i18n.t("User already subscribed."));
|
||||
const already_subscribed_users = Object.keys(data.already_subscribed).join(', ');
|
||||
stream_subscription_info_elem.text(i18n.t(
|
||||
" __already_subscribed_users__ are already subscribed.", {already_subscribed_users: already_subscribed_users}));
|
||||
}
|
||||
stream_subscription_info_elem.addClass("text-success")
|
||||
.removeClass("text-error");
|
||||
}
|
||||
|
||||
function invite_failure(xhr) {
|
||||
const error = JSON.parse(xhr.responseText);
|
||||
stream_subscription_info_elem.text(error.msg)
|
||||
.addClass("text-error").removeClass("text-success");
|
||||
}
|
||||
|
||||
exports.invite_user_to_stream(user_ids, sub, invite_success, invite_failure);
|
||||
}
|
||||
|
||||
exports.remove_user_from_stream = function (user_id, sub, success, failure) {
|
||||
// TODO: use stream_id when backend supports it
|
||||
const stream_name = sub.name;
|
||||
@@ -626,44 +667,7 @@ exports.initialize = function () {
|
||||
|
||||
$("#subscriptions_table").on("submit", ".subscriber_list_add form", function (e) {
|
||||
e.preventDefault();
|
||||
const settings_row = $(e.target).closest('.subscription_settings');
|
||||
const sub = get_sub_for_target(settings_row);
|
||||
if (!sub) {
|
||||
blueslip.error('.subscriber_list_add form submit fails');
|
||||
return;
|
||||
}
|
||||
|
||||
const user_ids = user_pill.get_user_ids(exports.pill_widget);
|
||||
const stream_subscription_info_elem = $('.stream_subscription_info').expectOne();
|
||||
|
||||
if (user_ids.length === 0) {
|
||||
stream_subscription_info_elem.text(i18n.t("No user to subscribe."))
|
||||
.addClass("text-error").removeClass("text-success");
|
||||
return;
|
||||
}
|
||||
|
||||
function invite_success(data) {
|
||||
exports.pill_widget.clear();
|
||||
if (!Object.entries(data.already_subscribed).length) {
|
||||
stream_subscription_info_elem.text(i18n.t("Subscribed successfully!"));
|
||||
// The rest of the work is done via the subscription -> add event we will get
|
||||
} else {
|
||||
stream_subscription_info_elem.text(i18n.t("User already subscribed."));
|
||||
const already_subscribed_users = Object.keys(data.already_subscribed).join(', ');
|
||||
stream_subscription_info_elem.text(i18n.t(
|
||||
" __already_subscribed_users__ are already subscribed.", {already_subscribed_users: already_subscribed_users}));
|
||||
}
|
||||
stream_subscription_info_elem.addClass("text-success")
|
||||
.removeClass("text-error");
|
||||
}
|
||||
|
||||
function invite_failure(xhr) {
|
||||
const error = JSON.parse(xhr.responseText);
|
||||
stream_subscription_info_elem.text(error.msg)
|
||||
.addClass("text-error").removeClass("text-success");
|
||||
}
|
||||
|
||||
exports.invite_user_to_stream(user_ids, sub, invite_success, invite_failure);
|
||||
submit_add_subscriber_form(e);
|
||||
});
|
||||
|
||||
$("#subscriptions_table").on("submit", ".subscriber_list_remove form", function (e) {
|
||||
|
||||
Reference in New Issue
Block a user