diff --git a/src/listeners/verification/joinVC.ts b/src/listeners/verification/joinVC.ts index 8dfd570..25abe75 100644 --- a/src/listeners/verification/joinVC.ts +++ b/src/listeners/verification/joinVC.ts @@ -85,19 +85,12 @@ class VerificationJoinVCListener extends Listener { const roles = rolesToString(member.roles.cache.map((r) => r.id)); - // Checks if a verifier has joined - if (channel.members.size === 2) { - await newState.channel!.permissionOverwrites.set([ - { - id: guild.roles.everyone, - allow: ['SEND_MESSAGES'], - }, - ]); - return; - } - // Check if a verifier joined a verification VC and update database if (channel.members.size === 2) { + await channel.permissionOverwrites.edit(guild.roles.everyone, { + SEND_MESSAGES: true, + }); + if (!channel.name.includes(' - Verification')) { return; } @@ -165,6 +158,10 @@ class VerificationJoinVCListener extends Listener { id: IDs.roles.staff.verifier, allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], }, + { + id: IDs.roles.staff.trialVerifier, + allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], + }, ], }); @@ -215,6 +212,10 @@ class VerificationJoinVCListener extends Listener { id: IDs.roles.staff.verifier, allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], }, + { + id: IDs.roles.staff.trialVerifier, + allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], + }, ], }); } else { @@ -247,6 +248,10 @@ class VerificationJoinVCListener extends Listener { id: IDs.roles.staff.verifier, allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], }, + { + id: IDs.roles.staff.trialVerifier, + allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], + }, ], }); } @@ -258,12 +263,16 @@ class VerificationJoinVCListener extends Listener { deny: ['SEND_MESSAGES', 'VIEW_CHANNEL'], }, { - id: IDs.roles.nonvegan.nonvegan, - deny: ['VIEW_CHANNEL'], + id: IDs.roles.verifyBlock, + deny: ['VIEW_CHANNEL', 'CONNECT', 'SEND_MESSAGES'], }, { - id: IDs.roles.vegan.vegan, - deny: ['VIEW_CHANNEL'], + id: IDs.roles.staff.verifier, + allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], + }, + { + id: IDs.roles.staff.trialVerifier, + allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], }, { id: member.id, diff --git a/src/listeners/verification/leaveVC.ts b/src/listeners/verification/leaveVC.ts index 47a64c8..4292611 100644 --- a/src/listeners/verification/leaveVC.ts +++ b/src/listeners/verification/leaveVC.ts @@ -156,6 +156,10 @@ class VerificationLeaveVCListener extends Listener { id: IDs.roles.staff.verifier, allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], }, + { + id: IDs.roles.staff.trialVerifier, + allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'], + }, ], }); } @@ -165,18 +169,19 @@ class VerificationLeaveVCListener extends Listener { return; } - const verification = listVoiceChannels.last() as VoiceChannel; + const verification = listVoiceChannels.last() as VoiceChannel | undefined; - await verification!.permissionOverwrites.set([ - { - id: IDs.roles.nonvegan.nonvegan, - allow: ['VIEW_CHANNEL'], - }, - { - id: IDs.roles.vegan.vegan, - allow: ['VIEW_CHANNEL'], - }, - ]); + if (verification === undefined) { + console.error('Verification: Verification channel not found.'); + return; + } + + await verification.permissionOverwrites.edit(IDs.roles.nonvegan.nonvegan, { + VIEW_CHANNEL: true, + }); + await verification.permissionOverwrites.edit(IDs.roles.vegan.vegan, { + VIEW_CHANNEL: true, + }); } }