mirror of
https://github.com/zulip/zulip.git
synced 2025-11-02 21:13:36 +00:00
user_groups: Live update members list if a member is deactivated.
This commit is contained in:
@@ -24,6 +24,7 @@ import * as settings_streams from "./settings_streams";
|
||||
import * as settings_users from "./settings_users";
|
||||
import {current_user, realm} from "./state_data";
|
||||
import * as stream_events from "./stream_events";
|
||||
import * as user_group_edit from "./user_group_edit";
|
||||
import * as user_profile from "./user_profile";
|
||||
|
||||
export const update_person = function update(person) {
|
||||
@@ -179,6 +180,7 @@ export const update_person = function update(person) {
|
||||
} else {
|
||||
people.deactivate(person_obj);
|
||||
stream_events.remove_deactivated_user_from_all_streams(person.user_id);
|
||||
user_group_edit.remove_deactivated_user_from_all_groups(person.user_id);
|
||||
settings_users.update_view_on_deactivate(person.user_id);
|
||||
buddy_list.maybe_remove_user_id({user_id: person.user_id});
|
||||
}
|
||||
|
||||
@@ -801,6 +801,21 @@ export function update_empty_left_panel_message() {
|
||||
$(".no-groups-to-show").show();
|
||||
}
|
||||
|
||||
export function remove_deactivated_user_from_all_groups(user_id) {
|
||||
const all_user_groups = user_groups.get_realm_user_groups(true);
|
||||
|
||||
for (const user_group of all_user_groups) {
|
||||
if (user_groups.is_direct_member_of(user_id, user_group.id)) {
|
||||
user_groups.remove_members(user_group.id, [user_id]);
|
||||
}
|
||||
|
||||
// update members list if currently rendered.
|
||||
if (overlays.groups_open() && is_editing_group(user_group.id)) {
|
||||
user_group_edit_members.update_member_list_widget(user_group);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export function setup_page(callback) {
|
||||
function initialize_components() {
|
||||
group_list_toggler = components.toggle({
|
||||
|
||||
Reference in New Issue
Block a user