Fixed Bug 60170 - Rooms. New member not showing up in Info/Members panel after adding.

This commit is contained in:
Timofey Boyko 2022-12-16 13:56:47 +03:00
parent 0617a953d7
commit 620c44d834
3 changed files with 45 additions and 0 deletions

View File

@ -39,6 +39,8 @@ const InvitePanel = ({
inviteUsers,
setInfoPanelIsMobileHidden,
reloadSelectionParentRoom,
setUpdateRoomMembers,
roomsView,
}) => {
const [selectedRoom, setSelectedRoom] = useState(null);
const [hasErrors, setHasErrors] = useState(false);
@ -162,6 +164,8 @@ const InvitePanel = ({
roomId === -1
? await inviteUsers(data)
: await setRoomSecurity(roomId, data);
if (roomsView === "info_members") setUpdateRoomMembers(true);
onClose();
toastr.success(t("Common:UsersInvited"));
reloadSelectionParentRoom();
@ -249,8 +253,13 @@ export default inject(({ auth, peopleStore, filesStore, dialogsStore }) => {
const {
setIsMobileHidden: setInfoPanelIsMobileHidden,
reloadSelectionParentRoom,
setUpdateRoomMembers,
roomsView,
filesView,
} = auth.infoPanelStore;
console.log(roomsView, filesView);
const {
getPortalInviteLinks,
userLink,
@ -292,6 +301,8 @@ export default inject(({ auth, peopleStore, filesStore, dialogsStore }) => {
inviteUsers,
setInfoPanelIsMobileHidden,
reloadSelectionParentRoom,
setUpdateRoomMembers,
roomsView,
};
})(
withTranslation([

View File

@ -22,6 +22,9 @@ const Members = ({
selection,
setIsMobileHidden,
updateRoomMembers,
setUpdateRoomMembers,
selectionParentRoom,
setSelectionParentRoom,
@ -65,6 +68,7 @@ const Members = ({
});
setShowLoader(false);
setUpdateRoomMembers(false);
return {
inRoom: inRoomMembers,
expected: expectedMembers,
@ -96,6 +100,23 @@ const Members = ({
});
}, [selection]);
useEffect(async () => {
if (!selection.isRoom || !updateRoomMembers) return;
const fetchedMembers = await fetchMembers(selection.id);
setSelectionParentRoom({
...selectionParentRoom,
members: fetchedMembers,
});
setMembers(fetchedMembers);
}, [
selectionParentRoom,
selection?.isRoom,
selection?.id,
updateRoomMembers,
]);
const onClickInviteUsers = () => {
setIsMobileHidden(true);
const parentRoomId = selectionParentRoom.id;
@ -211,6 +232,10 @@ export default inject(
setIsMobileHidden,
selectionParentRoom,
setSelectionParentRoom,
roomsView,
updateRoomMembers,
setUpdateRoomMembers,
} = auth.infoPanelStore;
const {
getRoomMembers,
@ -234,6 +259,9 @@ export default inject(
getRoomMembers,
updateRoomMemberRole,
updateRoomMembers,
setUpdateRoomMembers,
isOwner,
isAdmin,
selfId,

View File

@ -27,6 +27,8 @@ class InfoPanelStore {
roomsView = "info_details";
fileView = "info_history";
updateRoomMembers = null;
authStore = null;
settingsStore = null;
peopleStore = null;
@ -59,6 +61,10 @@ class InfoPanelStore {
this.fileView = view === "info_members" ? "info_history" : view;
};
setUpdateRoomMembers = (updateRoomMembers) => {
this.updateRoomMembers = updateRoomMembers;
};
// Selection helpers //
getSelectedItems = () => {