From cb881a18091fed6c8e09902f41f291bdacd512d2 Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Wed, 8 Feb 2023 00:47:31 +0100 Subject: [PATCH] Management: Fix changing admin rights (#2504) --- src/components/right/management/ManageChatAdministrators.tsx | 4 +++- src/components/right/management/ManageGroupAdminRights.tsx | 4 ++++ src/components/right/management/ManageGroupMembers.tsx | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/components/right/management/ManageChatAdministrators.tsx b/src/components/right/management/ManageChatAdministrators.tsx index aad931005..fa27fc24c 100644 --- a/src/components/right/management/ManageChatAdministrators.tsx +++ b/src/components/right/management/ManageChatAdministrators.tsx @@ -48,6 +48,8 @@ const ManageChatAdministrators: FC = ({ onScreenSelect(ManagementScreens.GroupRecentActions); }, [onScreenSelect]); + const canAddNewAdmins = Boolean(chat.isCreator || chat.adminRights?.addAdmins); + const adminMembers = useMemo(() => { if (!chat.fullInfo?.adminMembersById) { return []; @@ -126,7 +128,7 @@ const ManageChatAdministrators: FC = ({ ))} diff --git a/src/components/right/management/ManageGroupAdminRights.tsx b/src/components/right/management/ManageGroupAdminRights.tsx index ff45c6255..a7ffade61 100644 --- a/src/components/right/management/ManageGroupAdminRights.tsx +++ b/src/components/right/management/ManageGroupAdminRights.tsx @@ -158,6 +158,10 @@ const ManageGroupAdminRights: FC = ({ return true; } + if (chat.isCreator) { + return false; + } + return !chat.adminRights![key]; }, [chat, isFormFullyDisabled]); diff --git a/src/components/right/management/ManageGroupMembers.tsx b/src/components/right/management/ManageGroupMembers.tsx index 071f0ab59..4200b26d3 100644 --- a/src/components/right/management/ManageGroupMembers.tsx +++ b/src/components/right/management/ManageGroupMembers.tsx @@ -135,7 +135,7 @@ const ManageGroupMembers: FC = ({ const handleMemberClick = useCallback((id: string) => { if (noAdmins) { - onChatMemberSelect!(id, false); + onChatMemberSelect!(id, true); onScreenSelect!(ManagementScreens.ChatNewAdminRights); } else { closeManagement();