Fix link modal not shown after access upgrade (#12411)
* Fix link modal not shown after access upgrade We dont show the modal since there was a mistake in the isRoomJoinable function. It used a state variable instead of reacomputing the join rule with room.getJoinRule() The state is a captured variable that from before the link share click -> does not update at that time. * dont shadow varpull/28217/head
parent
14cc44e820
commit
313b556044
|
@ -79,7 +79,6 @@ export const CallGuestLinkButton: React.FC<{ room: Room }> = ({ room }) => {
|
|||
// If the user cannot invite the Knocking is not given as an option.
|
||||
canInvite,
|
||||
}).finished.then(() => {
|
||||
// we need to use the function here because the callback got called before the state was updated.
|
||||
if (isRoomJoinable()) showLinkModal();
|
||||
});
|
||||
}
|
||||
|
|
|
@ -52,7 +52,10 @@ export const useGuestAccessInformation = (room: Room): GuestAccessInformation =>
|
|||
[canChangeJoinRule, isRoomJoinable, guestSpaUrl],
|
||||
);
|
||||
|
||||
const isRoomJoinableFunction = (): boolean =>
|
||||
room.getJoinRule() === JoinRule.Public || (joinRule === JoinRule.Knock && room.canInvite(room.myUserId));
|
||||
const isRoomJoinableFunction = (): boolean => {
|
||||
const join = room.getJoinRule();
|
||||
return join === JoinRule.Public || (join === JoinRule.Knock && room.canInvite(room.myUserId));
|
||||
};
|
||||
|
||||
return { canInviteGuests, guestSpaUrl, isRoomJoinable: isRoomJoinableFunction, canInvite };
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue