mirror of
https://github.com/zulip/zulip.git
synced 2025-11-04 14:03:30 +00:00
settings: Include ignored deactivated users in result banner.
This introduces the ignored deactivated user messages in the channel and user group subscription banners. Related: https://chat.zulip.org/#narrow/channel/101-design/topic/New.20channel.2Fgroup.20UX.20changes/near/2215785 Fixes #34347. Signed-off-by: apoorvapendse <apoorvavpendse@gmail.com>
This commit is contained in:
committed by
Tim Abbott
parent
3c26086c4b
commit
0908f0ac30
@@ -73,9 +73,11 @@ function get_sub(stream_id: number): StreamSubscription | undefined {
|
||||
function generate_subscribe_success_messages(
|
||||
subscribed_users: User[],
|
||||
already_subscribed_users: User[],
|
||||
ignored_deactivated_users: User[],
|
||||
): {
|
||||
subscribed_users_message: string;
|
||||
already_subscribed_users_message: string;
|
||||
ignored_deactivated_users_message: string;
|
||||
} {
|
||||
const subscribed_user_links = subscribed_users.map(
|
||||
(user) =>
|
||||
@@ -85,6 +87,10 @@ function generate_subscribe_success_messages(
|
||||
(user) =>
|
||||
`<a data-user-id="${user.user_id}" class="view_user_profile">${Handlebars.Utils.escapeExpression(user.full_name)}</a>`,
|
||||
);
|
||||
const ignored_deactivated_user_links = ignored_deactivated_users.map(
|
||||
(user) =>
|
||||
`<a data-user-id="${user.user_id}" class="view_user_profile">${Handlebars.Utils.escapeExpression(user.full_name)}</a>`,
|
||||
);
|
||||
|
||||
const subscribed_users_message = util.format_array_as_list_with_conjunction(
|
||||
subscribed_user_links,
|
||||
@@ -94,9 +100,14 @@ function generate_subscribe_success_messages(
|
||||
already_subscribed_user_links,
|
||||
"long",
|
||||
);
|
||||
const ignored_deactivated_users_message = util.format_array_as_list_with_conjunction(
|
||||
ignored_deactivated_user_links,
|
||||
"long",
|
||||
);
|
||||
return {
|
||||
subscribed_users_message,
|
||||
already_subscribed_users_message,
|
||||
ignored_deactivated_users_message,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -121,8 +132,10 @@ function show_stream_subscription_request_success_result({
|
||||
}): void {
|
||||
const subscribed_users_count = subscribed_users.length;
|
||||
const already_subscribed_users_count = already_subscribed_users.length;
|
||||
const ignored_deactivated_users_count = ignored_deactivated_users.length;
|
||||
const is_total_subscriber_more_than_five =
|
||||
subscribed_users_count + already_subscribed_users_count > 5;
|
||||
subscribed_users_count + already_subscribed_users_count + ignored_deactivated_users_count >
|
||||
5;
|
||||
|
||||
const $stream_subscription_req_result_elem = $(
|
||||
".stream_subscription_request_result",
|
||||
@@ -133,6 +146,7 @@ function show_stream_subscription_request_success_result({
|
||||
subscribe_success_messages = generate_subscribe_success_messages(
|
||||
subscribed_users,
|
||||
already_subscribed_users,
|
||||
ignored_deactivated_users,
|
||||
);
|
||||
}
|
||||
const html = render_stream_subscription_request_result({
|
||||
@@ -143,6 +157,7 @@ function show_stream_subscription_request_success_result({
|
||||
already_subscribed_users_count,
|
||||
is_total_subscriber_more_than_five,
|
||||
ignored_deactivated_users,
|
||||
ignored_deactivated_users_count,
|
||||
});
|
||||
scroll_util.get_content_element($stream_subscription_req_result_elem).html(html);
|
||||
}
|
||||
|
||||
@@ -195,14 +195,22 @@ function generate_members_added_success_messages(
|
||||
newly_added_subgroups: UserGroup[],
|
||||
already_added_users: User[],
|
||||
already_added_subgroups: UserGroup[],
|
||||
ignored_deactivated_groups: UserGroup[],
|
||||
ignored_deactivated_users: User[],
|
||||
): {
|
||||
newly_added_members_message: string;
|
||||
already_added_members_message: string;
|
||||
ignored_deactivated_users_message: string;
|
||||
ignored_deactivated_groups_message: string;
|
||||
} {
|
||||
const new_user_links = newly_added_users.map((user) => generate_user_link(user));
|
||||
const new_group_links = newly_added_subgroups.map((group) => generate_group_link(group));
|
||||
const old_user_links = already_added_users.map((user) => generate_user_link(user));
|
||||
const old_group_links = already_added_subgroups.map((group) => generate_group_link(group));
|
||||
const ignored_group_links = ignored_deactivated_groups.map((group) =>
|
||||
generate_group_link(group),
|
||||
);
|
||||
const ignored_user_links = ignored_deactivated_users.map((user) => generate_user_link(user));
|
||||
|
||||
const newly_added_members_message = util.format_array_as_list_with_conjunction(
|
||||
[...new_user_links, ...new_group_links],
|
||||
@@ -212,9 +220,19 @@ function generate_members_added_success_messages(
|
||||
[...old_user_links, ...old_group_links],
|
||||
"long",
|
||||
);
|
||||
const ignored_deactivated_users_message = util.format_array_as_list_with_conjunction(
|
||||
ignored_user_links,
|
||||
"long",
|
||||
);
|
||||
const ignored_deactivated_groups_message = util.format_array_as_list_with_conjunction(
|
||||
ignored_group_links,
|
||||
"long",
|
||||
);
|
||||
return {
|
||||
newly_added_members_message,
|
||||
already_added_members_message,
|
||||
ignored_deactivated_users_message,
|
||||
ignored_deactivated_groups_message,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -247,16 +265,22 @@ function show_user_group_membership_request_success_result({
|
||||
const newly_added_subgroups_count = newly_added_subgroups.length;
|
||||
const already_added_user_count = already_added_users.length;
|
||||
const already_added_subgroups_count = already_added_subgroups.length;
|
||||
const ignored_deactivated_groups_count = ignored_deactivated_groups.length;
|
||||
const ignored_deactivated_users_count = ignored_deactivated_users.length;
|
||||
|
||||
const total_member_count_exceeds_five =
|
||||
newly_added_user_count +
|
||||
newly_added_subgroups_count +
|
||||
already_added_user_count +
|
||||
already_added_subgroups_count >
|
||||
already_added_subgroups_count +
|
||||
ignored_deactivated_groups_count +
|
||||
ignored_deactivated_users_count >
|
||||
5;
|
||||
|
||||
const newly_added_member_count = newly_added_user_count + newly_added_subgroups_count;
|
||||
const already_added_member_count = already_added_user_count + already_added_subgroups_count;
|
||||
const ignored_deactivated_member_count =
|
||||
ignored_deactivated_users_count + ignored_deactivated_groups_count;
|
||||
let addition_success_messages;
|
||||
if (!total_member_count_exceeds_five) {
|
||||
addition_success_messages = generate_members_added_success_messages(
|
||||
@@ -264,6 +288,8 @@ function show_user_group_membership_request_success_result({
|
||||
newly_added_subgroups,
|
||||
already_added_users,
|
||||
already_added_subgroups,
|
||||
ignored_deactivated_groups,
|
||||
ignored_deactivated_users,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -278,11 +304,10 @@ function show_user_group_membership_request_success_result({
|
||||
newly_added_subgroups_count,
|
||||
already_added_user_count,
|
||||
already_added_subgroups_count,
|
||||
already_added_users,
|
||||
ignored_deactivated_users,
|
||||
already_added_subgroups,
|
||||
ignored_deactivated_groups,
|
||||
total_member_count_exceeds_five,
|
||||
ignored_deactivated_groups_count,
|
||||
ignored_deactivated_users_count,
|
||||
ignored_deactivated_member_count,
|
||||
});
|
||||
scroll_util.get_content_element($user_group_subscription_req_result_elem).html(html);
|
||||
}
|
||||
|
||||
@@ -10,7 +10,9 @@
|
||||
<div class="banner-wrapper">
|
||||
<div class="banner banner-success">
|
||||
<span class="banner-label">
|
||||
{{#if (eq subscribed_users_count 0)}}
|
||||
{{!-- We want to show ignored deactivated users message even when there are
|
||||
no new subscribers --}}
|
||||
{{#if (and (eq subscribed_users_count 0) (eq ignored_deactivated_users_count 0))}}
|
||||
{{t "All users were already subscribed."}}
|
||||
{{else}}
|
||||
{{#if (not is_total_subscriber_more_than_five) }}
|
||||
@@ -20,6 +22,9 @@
|
||||
{{#if already_subscribed_users}}
|
||||
{{t "Already a subscriber:" }} {{{subscribe_success_messages.already_subscribed_users_message}}}.
|
||||
{{/if}}
|
||||
{{#if ignored_deactivated_users}}
|
||||
{{t "Ignored deactivated users:" }} {{{subscribe_success_messages.ignored_deactivated_users_message}}}.
|
||||
{{/if}}
|
||||
{{else}}
|
||||
{{#if subscribed_users}}
|
||||
{{t "{subscribed_users_count, plural,
|
||||
@@ -31,6 +36,12 @@
|
||||
{{t "{already_subscribed_users_count, plural,
|
||||
one {Already subscribed: {already_subscribed_users_count} user.}
|
||||
other {Already subscribed: {already_subscribed_users_count} users.}
|
||||
}"}}
|
||||
{{/if}}
|
||||
{{#if ignored_deactivated_users}}
|
||||
{{t "{ignored_deactivated_users_count, plural,
|
||||
one {Ignored deactivated: {ignored_deactivated_users_count} user.}
|
||||
other {Ignored deactivated: {ignored_deactivated_users_count} users.}
|
||||
}"}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
@@ -39,11 +50,3 @@
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
{{#if ignored_deactivated_users}}
|
||||
{{#each ignored_deactivated_users}}
|
||||
{{#if @first}}
|
||||
{{t "Ignored deactivated users:" }}
|
||||
{{/if}}
|
||||
<a data-user-id="{{user_id}}" class="view_user_profile">{{full_name}}</a>{{#unless @last}},{{else}}.{{/unless}}
|
||||
{{/each}}
|
||||
{{/if}}
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
<div class="banner-wrapper">
|
||||
<div class="banner banner-success">
|
||||
<span class="banner-label">
|
||||
{{#if (eq newly_added_member_count 0)}}
|
||||
{{#if (and (eq newly_added_member_count 0) (eq ignored_deactivated_member_count 0))}}
|
||||
{{#if (and already_added_user_count already_added_subgroups_count)}}
|
||||
{{t "All users and groups were already members."}}
|
||||
{{else if already_added_user_count}}
|
||||
@@ -26,6 +26,12 @@
|
||||
{{#if addition_success_messages.already_added_members_message}}
|
||||
{{t "Already a member:"}} {{{addition_success_messages.already_added_members_message}}}.
|
||||
{{/if}}
|
||||
{{#if addition_success_messages.ignored_deactivated_users_message}}
|
||||
{{t "Ignored deactivated users:"}} {{{addition_success_messages.ignored_deactivated_users_message}}}.
|
||||
{{/if}}
|
||||
{{#if addition_success_messages.ignored_deactivated_groups_message}}
|
||||
{{t "Ignored deactivated groups:"}} {{{addition_success_messages.ignored_deactivated_groups_message}}}.
|
||||
{{/if}}
|
||||
{{else}}
|
||||
{{#if newly_added_member_count}}
|
||||
{{t "Added:"}}
|
||||
@@ -47,27 +53,19 @@
|
||||
{{t "{already_added_subgroups_count, plural, one {# group.} other {# groups.}}"}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{#if ignored_deactivated_member_count}}
|
||||
{{t "Ignored deactivated:"}}
|
||||
{{#if (and ignored_deactivated_users_count ignored_deactivated_groups_count)}}
|
||||
{{t "{ignored_deactivated_users_count, plural, one {# user} other {# users}} and {ignored_deactivated_groups_count, plural, one {# group.} other {# groups.}}"}}
|
||||
{{else if ignored_deactivated_users_count}}
|
||||
{{t "{ignored_deactivated_users_count, plural, one {# user.} other {# users.}}"}}
|
||||
{{else if ignored_deactivated_groups_count}}
|
||||
{{t "{ignored_deactivated_groups_count, plural, one {# group.} other {# groups.}}"}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
|
||||
{{#if ignored_deactivated_users}}
|
||||
{{#each ignored_deactivated_users}}
|
||||
{{#if @first}}
|
||||
{{t "Ignored deactivated users:" }}
|
||||
{{/if}}
|
||||
<a data-user-id="{{user_id}}" class="view_user_profile">{{full_name}}</a>{{#unless @last}},{{else}}.{{/unless}}
|
||||
{{/each}}
|
||||
<br />
|
||||
{{/if}}
|
||||
{{#if ignored_deactivated_groups}}
|
||||
{{#each ignored_deactivated_groups}}
|
||||
{{#if @first}}
|
||||
{{t "Ignored deactivated groups:" }}
|
||||
{{/if}}
|
||||
<a data-user-group-id="{{id}}" class="view_user_group">{{name}}</a>{{#unless @last}},{{else}}.{{/unless}}
|
||||
{{/each}}
|
||||
{{/if}}
|
||||
|
||||
Reference in New Issue
Block a user