diff --git a/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareMember.tsx b/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareMember.tsx index ddc4b596..97370b54 100644 --- a/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareMember.tsx +++ b/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareMember.tsx @@ -144,7 +144,9 @@ export const QuickSearchGroupMember = ({ group={membersData} renderElement={(access) => { const hasMismatch = keyMismatchUserIds?.has(access.user.id); - const hasNoEncryptionKey = false; + const hasNoEncryptionKey = + doc.is_encrypted && + !doc.accesses_fingerprints_per_user?.[access.user.id]; let suffix: string | undefined; if (hasMismatch) { @@ -165,7 +167,9 @@ export const QuickSearchGroupMember = ({ ? () => setMismatchUserId(access.user.id) : undefined } - fingerprintKey={undefined} + fingerprintKey={ + doc.accesses_fingerprints_per_user?.[access.user.id] + } /> ); }} diff --git a/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareModal.tsx b/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareModal.tsx index f3f7a7e3..fe4983d5 100644 --- a/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareModal.tsx +++ b/src/frontend/apps/impress/src/features/docs/doc-share/components/DocShareModal.tsx @@ -407,6 +407,7 @@ export const DocShareModal = ({ {!showMemberSection && canShare && ( void; searchUsersRawData: User[] | undefined; userQuery: string; @@ -444,6 +446,7 @@ interface QuickSearchInviteInputSectionProps { } const QuickSearchInviteInputSection = ({ + doc, onSelect, searchUsersRawData, userQuery, @@ -467,7 +470,7 @@ const QuickSearchInviteInputSection = ({ const handleSelect = useCallback( (user: User) => { - if (false) { + if (isEncrypted && !doc.accesses_fingerprints_per_user?.[user.id]) { setShowNoKeyModal(true); return; } @@ -477,7 +480,7 @@ const QuickSearchInviteInputSection = ({ } onSelect(user); }, - [isEncrypted, keyMismatchUserIds, onSelect], + [isEncrypted, doc.accesses_fingerprints_per_user, keyMismatchUserIds, onSelect], ); const searchUserData: QuickSearchData = useMemo(() => { @@ -516,12 +519,12 @@ const QuickSearchInviteInputSection = ({ if (keyMismatchUserIds?.has(user.id)) { return t('DIFFERENT PUBLIC KEY, PLEASE VERIFY'); } - if (false) { + if (isEncrypted && !doc.accesses_fingerprints_per_user?.[user.id]) { return t(`(encryption not enabled)`); } return undefined; }, - [isEncrypted, keyMismatchUserIds, t], + [isEncrypted, doc.accesses_fingerprints_per_user, keyMismatchUserIds, t], ); return ( @@ -536,7 +539,7 @@ const QuickSearchInviteInputSection = ({ )} />