diff --git a/src/pages/GroupJoinPage.tsx b/src/pages/GroupJoinPage.tsx index cc56fa4..3234163 100644 --- a/src/pages/GroupJoinPage.tsx +++ b/src/pages/GroupJoinPage.tsx @@ -41,6 +41,13 @@ const GroupJoinPage = () => { const groupId = searchParams.get('groupId'); const inviter = searchParams.get('inviterName') || 'Someone'; + // Debug logging + console.log('GroupJoinPage - URL Parameters:', { + groupId, + inviter, + allParams: Object.fromEntries(searchParams.entries()) + }); + setInviterName(inviter); if (groupId) { diff --git a/src/pages/InvitationPage.tsx b/src/pages/InvitationPage.tsx index 6b4016d..c9824b7 100644 --- a/src/pages/InvitationPage.tsx +++ b/src/pages/InvitationPage.tsx @@ -32,6 +32,7 @@ import { import { QRCodeSVG } from 'qrcode.react'; import { dataService } from '../services/dataService'; import type { Group } from '../types/group'; +import type { Contact } from '../types/contact'; const InvitationPage = () => { const [invitationUrl, setInvitationUrl] = useState(''); @@ -62,6 +63,23 @@ const InvitationPage = () => { inviterName: inviterName || undefined, relationshipType: relationshipType || undefined, }); + + // Auto-detect if invitee is an existing member by checking contacts + if (inviteeName) { + try { + const contacts: Contact[] = await dataService.getContacts(); + const isExistingContact = contacts.some(contact => + contact.name.toLowerCase() === inviteeName.toLowerCase() + ); + + if (isExistingContact) { + console.log(`Auto-detected ${inviteeName} as existing member`); + setIsExistingMember(true); + } + } catch (error) { + console.error('Failed to check contacts:', error); + } + } if (groupId) { setIsGroupInvite(true); diff --git a/src/pages/SocialContractPage.tsx b/src/pages/SocialContractPage.tsx index ce5c0bd..c999065 100644 --- a/src/pages/SocialContractPage.tsx +++ b/src/pages/SocialContractPage.tsx @@ -50,8 +50,17 @@ const SocialContractPage = () => { const inviteId = searchParams.get('invite'); const existingMember = searchParams.get('existingMember') === 'true'; + // Debug logging + console.log('SocialContract - URL Parameters:', { + groupId, + inviteId, + existingMember, + allParams: Object.fromEntries(searchParams.entries()) + }); + // If this is for an existing member and it's a group invite, redirect to group join page if (existingMember && groupId) { + console.log('Redirecting existing member to GroupJoinPage'); const joinParams = new URLSearchParams(searchParams); navigate(`/join-group?${joinParams.toString()}`); return;