mirror of
https://github.com/veganhacktivists/arabot.git
synced 2025-11-03 03:29:49 +01:00
feat(verification): add IDs from utils
This commit is contained in:
parent
31199d9cd5
commit
ed5327aae2
@ -21,7 +21,8 @@ import { container, Listener } from '@sapphire/framework';
|
||||
import type {
|
||||
TextChannel, VoiceChannel, CategoryChannel, VoiceState,
|
||||
} from 'discord.js';
|
||||
import { maxVCs } from './config';
|
||||
import { maxVCs } from '../../utils/verificationConfig';
|
||||
import IDs from '../../utils/ids';
|
||||
|
||||
export class VerificationJoinVCListener extends Listener {
|
||||
public constructor(context: Listener.Context, options: Listener.Options) {
|
||||
@ -33,8 +34,8 @@ export class VerificationJoinVCListener extends Listener {
|
||||
|
||||
public async run(oldState: VoiceState, newState: VoiceState) {
|
||||
// If the event was not a user joining the channel
|
||||
if (oldState.channel?.parent?.id === '999431677006860409' // ID for Verification category
|
||||
|| newState.channel?.parent?.id !== '999431677006860409' // ID for Verification category
|
||||
if (oldState.channel?.parent?.id === IDs.categories.verification
|
||||
|| newState.channel?.parent?.id !== IDs.categories.verification
|
||||
) {
|
||||
return;
|
||||
}
|
||||
@ -43,7 +44,7 @@ export class VerificationJoinVCListener extends Listener {
|
||||
if (newState.channel.members.size === 2) {
|
||||
await newState.channel!.permissionOverwrites.set([
|
||||
{
|
||||
id: '999431675081666597', // verify-as-vegan
|
||||
id: IDs.categories.verification,
|
||||
allow: ['SEND_MESSAGES'],
|
||||
},
|
||||
]);
|
||||
@ -64,7 +65,7 @@ export class VerificationJoinVCListener extends Listener {
|
||||
const currentChannel = guild.channels.cache.get(newState.channel.id) as VoiceChannel;
|
||||
|
||||
// Check if the user has the verifiers role
|
||||
if (newState.member?.roles.cache.has('999431675123597406')) { // TODO add check if they are trial-verifiers
|
||||
if (newState.member?.roles.cache.has(IDs.roles.staff.verifier)) { // TODO add check if they are trial-verifiers
|
||||
await channel.setName('Verifier Meeting');
|
||||
} else {
|
||||
await channel.setName(`${newState.member?.displayName} - Verification`);
|
||||
@ -72,7 +73,7 @@ export class VerificationJoinVCListener extends Listener {
|
||||
}
|
||||
|
||||
// Check how many voice channels there are
|
||||
const category = guild.channels.cache.get('999431677006860409') as CategoryChannel;
|
||||
const category = guild.channels.cache.get(IDs.categories.verification) as CategoryChannel;
|
||||
const listVoiceChannels = category.children.filter((c) => c.type === 'GUILD_VOICE');
|
||||
|
||||
// Create a new channel for others to join
|
||||
@ -81,7 +82,7 @@ export class VerificationJoinVCListener extends Listener {
|
||||
if (listVoiceChannels.size > maxVCs - 1) {
|
||||
await guild.channels.create('Verification', {
|
||||
type: 'GUILD_VOICE',
|
||||
parent: '999431677006860409', // Verification topic
|
||||
parent: IDs.categories.verification,
|
||||
userLimit: 1,
|
||||
permissionOverwrites: [
|
||||
{
|
||||
@ -89,12 +90,12 @@ export class VerificationJoinVCListener extends Listener {
|
||||
deny: ['SEND_MESSAGES', 'VIEW_CHANNEL'],
|
||||
},
|
||||
{
|
||||
id: '999431675081666597', // verify-as-vegan
|
||||
id: IDs.roles.verifyingAsVegan,
|
||||
allow: ['VIEW_CHANNEL'],
|
||||
deny: ['CONNECT'],
|
||||
},
|
||||
{
|
||||
id: '999431675123597406', // Verifiers
|
||||
id: IDs.roles.staff.verifier,
|
||||
allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'],
|
||||
},
|
||||
],
|
||||
@ -102,7 +103,7 @@ export class VerificationJoinVCListener extends Listener {
|
||||
} else {
|
||||
await guild.channels.create('Verification', {
|
||||
type: 'GUILD_VOICE',
|
||||
parent: '999431677006860409', // Verification topic
|
||||
parent: IDs.categories.verification,
|
||||
userLimit: 1,
|
||||
permissionOverwrites: [
|
||||
{
|
||||
@ -110,11 +111,11 @@ export class VerificationJoinVCListener extends Listener {
|
||||
deny: ['SEND_MESSAGES', 'VIEW_CHANNEL'],
|
||||
},
|
||||
{
|
||||
id: '999431675081666597', // verify-as-vegan
|
||||
id: IDs.roles.verifyingAsVegan,
|
||||
allow: ['VIEW_CHANNEL'],
|
||||
},
|
||||
{
|
||||
id: '999431675123597406', // Verifiers
|
||||
id: IDs.roles.staff.verifier,
|
||||
allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'],
|
||||
},
|
||||
],
|
||||
@ -128,7 +129,7 @@ export class VerificationJoinVCListener extends Listener {
|
||||
deny: ['SEND_MESSAGES', 'VIEW_CHANNEL'],
|
||||
},
|
||||
{
|
||||
id: '999431675081666597', // verify-as-vegan
|
||||
id: IDs.roles.verifyingAsVegan,
|
||||
deny: ['VIEW_CHANNEL'],
|
||||
},
|
||||
{
|
||||
@ -139,7 +140,7 @@ export class VerificationJoinVCListener extends Listener {
|
||||
await currentChannel.setUserLimit(0);
|
||||
|
||||
// Send a message that someone wants to be verified
|
||||
const verifyChannel = client.channels.cache.get('999431677006860411') as TextChannel; // Verifiers channel
|
||||
verifyChannel.send(`${newState.member?.user} wants to be verified in ${newState.channel}`);
|
||||
const verifyChannel = client.channels.cache.get(IDs.channels.staff.verifiers) as TextChannel;
|
||||
await verifyChannel.send(`${newState.member?.user} wants to be verified in ${newState.channel}`);
|
||||
}
|
||||
}
|
||||
|
||||
@ -19,7 +19,8 @@
|
||||
|
||||
import { container, Listener } from '@sapphire/framework';
|
||||
import type { VoiceState, CategoryChannel, VoiceChannel } from 'discord.js';
|
||||
import { maxVCs } from './config';
|
||||
import { maxVCs } from '../../utils/verificationConfig';
|
||||
import IDs from '../../utils/ids';
|
||||
|
||||
export class VerificationLeaveVCListener extends Listener {
|
||||
public constructor(context: Listener.Context, options: Listener.Options) {
|
||||
@ -31,8 +32,8 @@ export class VerificationLeaveVCListener extends Listener {
|
||||
|
||||
public async run(oldState: VoiceState, newState: VoiceState) {
|
||||
// If the event was not a user joining the channel
|
||||
if (oldState.channel?.parent?.id !== '999431677006860409' // ID for Verification category
|
||||
|| newState.channel?.parent?.id === '999431677006860409' // ID for Verification category
|
||||
if (oldState.channel?.parent?.id !== IDs.categories.verification
|
||||
|| newState.channel?.parent?.id === IDs.categories.verification
|
||||
|| oldState.channel.members.size > 0
|
||||
) {
|
||||
return;
|
||||
@ -44,13 +45,13 @@ export class VerificationLeaveVCListener extends Listener {
|
||||
const user = guild.members.cache.get(oldState.member!.id)!;
|
||||
|
||||
// Remove verify as vegan and give non vegan role
|
||||
if (!user.roles.cache.has('999431675098447937')) { // If the user does not have vegan role
|
||||
await user.roles.remove('999431675081666597'); // Verify-as-vegan
|
||||
await user.roles.add('999431675081666598'); // Not vegan
|
||||
if (!user.roles.cache.has(IDs.roles.vegan.vegan)) {
|
||||
await user.roles.remove(IDs.roles.verifyingAsVegan);
|
||||
await user.roles.add(IDs.roles.nonvegan.nonvegan);
|
||||
}
|
||||
|
||||
// Check how many voice channels there are
|
||||
const category = guild.channels.cache.get('999431677006860409') as CategoryChannel;
|
||||
const category = guild.channels.cache.get(IDs.categories.verification) as CategoryChannel;
|
||||
const listVoiceChannels = category.children.filter((c) => c.type === 'GUILD_VOICE');
|
||||
|
||||
// Check that it is not deleting the 'Verification' channel (in case bot crashes)
|
||||
@ -64,7 +65,7 @@ export class VerificationLeaveVCListener extends Listener {
|
||||
// Create a verification channel
|
||||
await guild.channels.create('Verification', {
|
||||
type: 'GUILD_VOICE',
|
||||
parent: '999431677006860409', // Verification topic
|
||||
parent: IDs.categories.verification,
|
||||
userLimit: 1,
|
||||
permissionOverwrites: [
|
||||
{
|
||||
@ -72,11 +73,11 @@ export class VerificationLeaveVCListener extends Listener {
|
||||
deny: ['SEND_MESSAGES', 'VIEW_CHANNEL'],
|
||||
},
|
||||
{
|
||||
id: '999431675081666597', // verify-as-vegan
|
||||
id: IDs.roles.verifyingAsVegan,
|
||||
allow: ['VIEW_CHANNEL'],
|
||||
},
|
||||
{
|
||||
id: '999431675123597406', // Verifiers
|
||||
id: IDs.roles.staff.verifier,
|
||||
allow: ['SEND_MESSAGES', 'VIEW_CHANNEL'],
|
||||
},
|
||||
],
|
||||
@ -92,7 +93,7 @@ export class VerificationLeaveVCListener extends Listener {
|
||||
|
||||
await verification!.permissionOverwrites.set([
|
||||
{
|
||||
id: '999431675081666597', // verify-as-vegan
|
||||
id: IDs.roles.verifyingAsVegan,
|
||||
allow: ['VIEW_CHANNEL'],
|
||||
},
|
||||
]);
|
||||
|
||||
@ -55,6 +55,7 @@ export const devIDs = {
|
||||
staff: {
|
||||
coordinators: '999431676058927254',
|
||||
standup: '999431676289622183',
|
||||
verifiers: '999431677006860411',
|
||||
},
|
||||
diversity: {
|
||||
women: '999431679053660187',
|
||||
@ -64,6 +65,7 @@ export const devIDs = {
|
||||
},
|
||||
},
|
||||
categories: {
|
||||
verification: '999431677006860409',
|
||||
diversity: '999431679053660185',
|
||||
},
|
||||
};
|
||||
|
||||
@ -58,6 +58,7 @@ let IDs = {
|
||||
staff: {
|
||||
coordinators: '989249700353953843',
|
||||
standup: '996009201237233684',
|
||||
verifiers: '873215538627756072',
|
||||
},
|
||||
diversity: {
|
||||
women: '938808963544285324',
|
||||
@ -67,6 +68,7 @@ let IDs = {
|
||||
},
|
||||
},
|
||||
categories: {
|
||||
verification: '797505409073676299',
|
||||
diversity: '933078380394459146',
|
||||
},
|
||||
};
|
||||
@ -78,4 +80,4 @@ if (process.env.DEVELOPMENT === 'true') {
|
||||
IDs = devIDs;
|
||||
}
|
||||
|
||||
export default { IDs };
|
||||
export default IDs;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user