mirror of
https://github.com/zulip/zulip.git
synced 2025-11-03 21:43:21 +00:00
user_groups: Do not show deactivated users in members list.
This commit adds code to now show deactivated users in the members list in "#groups" UI and the user group popover.
This commit is contained in:
@@ -187,9 +187,8 @@ export function handle_member_edit_event(group_id, user_ids) {
|
|||||||
const group = user_groups.get_user_group_from_id(group_id);
|
const group = user_groups.get_user_group_from_id(group_id);
|
||||||
|
|
||||||
// update members list if currently rendered.
|
// update members list if currently rendered.
|
||||||
const members = [...group.members];
|
|
||||||
if (is_editing_group(group_id)) {
|
if (is_editing_group(group_id)) {
|
||||||
user_group_edit_members.update_member_list_widget(group_id, members);
|
user_group_edit_members.update_member_list_widget(group);
|
||||||
if (user_ids.includes(people.my_current_user_id())) {
|
if (user_ids.includes(people.my_current_user_id())) {
|
||||||
update_group_membership_button(group_id);
|
update_group_membership_button(group_id);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,9 +36,15 @@ function get_potential_members() {
|
|||||||
return people.filter_all_users(is_potential_member);
|
return people.filter_all_users(is_potential_member);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function update_member_list_widget(group_id, member_ids) {
|
function get_user_group_members(group) {
|
||||||
assert(group_id === current_group_id, "Unexpected group rerendering members list");
|
const member_ids = [...group.members];
|
||||||
const users = people.get_users_from_ids(member_ids);
|
const active_member_ids = member_ids.filter((user_id) => people.is_person_active(user_id));
|
||||||
|
return people.get_users_from_ids(active_member_ids);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function update_member_list_widget(group) {
|
||||||
|
assert(group.id === current_group_id, "Unexpected group rerendering members list");
|
||||||
|
const users = get_user_group_members(group);
|
||||||
people.sort_but_pin_current_user_on_top(users);
|
people.sort_but_pin_current_user_on_top(users);
|
||||||
member_list_widget.replace_list_data(users);
|
member_list_widget.replace_list_data(users);
|
||||||
}
|
}
|
||||||
@@ -54,8 +60,7 @@ function format_member_list_elem(person) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function make_list_widget({$parent_container, name, user_ids}) {
|
function make_list_widget({$parent_container, name, users}) {
|
||||||
const users = people.get_users_from_ids(user_ids);
|
|
||||||
people.sort_but_pin_current_user_on_top(users);
|
people.sort_but_pin_current_user_on_top(users);
|
||||||
|
|
||||||
const $list_container = $parent_container.find(".member_table");
|
const $list_container = $parent_container.find(".member_table");
|
||||||
@@ -104,7 +109,7 @@ export function enable_member_management({group, $parent_container}) {
|
|||||||
member_list_widget = make_list_widget({
|
member_list_widget = make_list_widget({
|
||||||
$parent_container,
|
$parent_container,
|
||||||
name: "user_group_members",
|
name: "user_group_members",
|
||||||
user_ids: [...group.members],
|
users: get_user_group_members(group),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -119,11 +119,10 @@ export function register_click_handlers() {
|
|||||||
function fetch_group_members(member_ids) {
|
function fetch_group_members(member_ids) {
|
||||||
return member_ids
|
return member_ids
|
||||||
.map((m) => people.maybe_get_user_by_id(m))
|
.map((m) => people.maybe_get_user_by_id(m))
|
||||||
.filter((m) => m !== undefined)
|
.filter((m) => m !== undefined && people.is_active_user_for_popover(m.user_id))
|
||||||
.map((p) => ({
|
.map((p) => ({
|
||||||
...p,
|
...p,
|
||||||
user_circle_class: buddy_data.get_user_circle_class(p.user_id),
|
user_circle_class: buddy_data.get_user_circle_class(p.user_id),
|
||||||
is_active: people.is_active_user_for_popover(p.user_id),
|
|
||||||
user_last_seen_time_status: buddy_data.user_last_seen_time_status(p.user_id),
|
user_last_seen_time_status: buddy_data.user_last_seen_time_status(p.user_id),
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,12 +10,10 @@
|
|||||||
<ul class="nav nav-list member-list" data-simplebar data-simplebar-auto-hide="false">
|
<ul class="nav nav-list member-list" data-simplebar data-simplebar-auto-hide="false">
|
||||||
{{#each members}}
|
{{#each members}}
|
||||||
<li>
|
<li>
|
||||||
{{#if is_active }}
|
{{#if is_bot}}
|
||||||
{{#if is_bot}}
|
<i class="zulip-icon zulip-icon-bot" aria-hidden="true"></i>
|
||||||
<i class="zulip-icon zulip-icon-bot" aria-hidden="true"></i>
|
{{else}}
|
||||||
{{else}}
|
<span class="user_circle {{user_circle_class}} popover_user_presence" title="{{user_last_seen_time_status}}"></span>
|
||||||
<span class="user_circle {{user_circle_class}} popover_user_presence" title="{{user_last_seen_time_status}}"></span>
|
|
||||||
{{/if}}
|
|
||||||
{{/if}}
|
{{/if}}
|
||||||
<span>{{full_name}}</span>
|
<span>{{full_name}}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|||||||
Reference in New Issue
Block a user