diff --git a/config.json b/config.json index ec18bf4..1b476b0 100644 --- a/config.json +++ b/config.json @@ -1,8 +1,8 @@ { "prefix": "stp ", - "guildId": "866357715566460958", + "guildId": "859466350217134100", "clientId": "859496133562073109", - "teamChannelId": "868461848398278716", + "teamChannelId": "868866705663852554", "publicKey": "fcc3a0170458d88e0efe714528104b0e20104021d2218a9028f87d6859ca73b8", "botChannelFilter": true } diff --git a/src/commands/verification/verify.js b/src/commands/verification/verify.js index 22a1d75..31c5b58 100644 --- a/src/commands/verification/verify.js +++ b/src/commands/verification/verify.js @@ -1,23 +1,25 @@ -const { Embed } = require("../../lib/Embed") +const Embed = require('../../lib/Embed') module.exports = { - name: 'verify', - description: 'verify your account with Eventpop reference code', - slash: { - registerData: { - data: { - name: 'verify', - description: 'verify your account with Eventpop reference code', - }, - }, - }, - async execute({ send, member }) { - send(`Sent instructions in your DM, ${member}`) - member.createDM().then((channel) => { - channel.send(Embed.Embed( - 'Verify', - 'enter Eventpop reference code ``#XXXXX-XXXXXXX`` in THIS channel', - )) - }) - }, + name: 'verify', + description: 'verify your account with Eventpop reference code', + slash: { + registerData: { + data: { + name: 'verify', + description: 'verify your account with Eventpop reference code', + }, + }, + }, + async execute({ send, member }) { + send(`Sent instructions in your DM, ${member}`) + member.createDM().then((channel) => { + channel.send( + Embed.Embed( + 'Verify', + 'enter Eventpop reference code ``#XXXXX-XXXXXXX`` in THIS channel', + ), + ) + }) + }, } diff --git a/src/lib/Authentication.js b/src/lib/Authentication.js index 911acee..2af3d2c 100644 --- a/src/lib/Authentication.js +++ b/src/lib/Authentication.js @@ -5,101 +5,104 @@ const Embed = require('./Embed') module.exports = Authenticate async function Authenticate(client, refCode, message) { - if (!client.database) { - return message.channel.send('Database unavaiable') - } - - const docId = 'g86J49lbnaDIYxEnn0Om' - - const attendeeCollection = client.database - .collection('refcode') - .doc(docId) - .collection('attendees') - const participantCollection = client.database - .collection('refcode') - .doc(docId) - .collection('participants') - - const attendeeDocRef = attendeeCollection.doc(refCode) - const attendeeDocSnapshot = await attendeeDocRef.get() - const participantDocRef = participantCollection.doc(refCode) - const participantSnapshot = await participantDocRef.get() - - if (attendeeDocSnapshot.exists) { - const { used } = attendeeDocSnapshot.data() - - if (used) { - return message.channel.send( - Embed.SendError( - 'Error', - 'This code is already used. Please contact staff', - ), - ) - } - - try { - await attendeeDocRef.set({ - used: true, - used_by: message.author.id, - used_at: firebase.firestore.FieldValue.serverTimestamp(), - }) - - const guild = await client.guilds.fetch(guildId) - const participantRole = guild.roles.cache.find( - (e) => e.name === 'Attendee', - ) - const guildMember = guild.members.cache.find( - (e) => e.id === message.author.id, - ) - - await guildMember.roles.add(participantRole) - - await message.channel.send( - Embed.SendSuccess('Attendee Role Granted', 'Enjoy Hackathon!'), - ) - } catch (e) { - console.error(e) - message.channel.send(Embed.SendError('Error', 'Please contact staff')) - } - } - - if (participantSnapshot.exists) { - const { used } = participantSnapshot.data() - - if (used) { - return message.channel.send( - Embed.SendError( - 'Error', - 'This code is already used. Please contact staff', - ), - ) - } - - try { - await docRef.set({ - used: true, - used_by: message.author.id, - used_at: firebase.firestore.FieldValue.serverTimestamp(), - }) - - const guild = await client.guilds.fetch(guildId) - const participantRole = guild.roles.cache.find( - (e) => e.name === 'Participant', - ) - const guildMember = guild.members.cache.find( - (e) => e.id === message.author.id, - ) - - await guildMember.roles.add(participantRole) - - await message.channel.send( - Embed.SendSuccess('Participant Role Granted', 'Enjoy Hackathon!'), - ) - } catch (e) { - console.error(e) - message.channel.send(Embed.SendError('Error', 'Please contact staff')) - } - } - - return send(Embed.SendError('Failed', 'Invalid reference code')) + if (!client.database) { + return message.channel.send('Database unavaiable') + } + + const docId = 'g86J49lbnaDIYxEnn0Om' + + const attendeeCollection = client.database + .collection('refcode') + .doc(docId) + .collection('attendees') + const participantCollection = client.database + .collection('refcode') + .doc(docId) + .collection('participants') + + const attendeeDocRef = attendeeCollection.doc(refCode) + const attendeeDocSnapshot = await attendeeDocRef.get() + const participantDocRef = participantCollection.doc(refCode) + const participantSnapshot = await participantDocRef.get() + + if (attendeeDocSnapshot.exists) { + const { used } = attendeeDocSnapshot.data() + + if (used) { + return message.channel.send( + Embed.SendError( + 'Error', + 'This code is already used. Please contact staff', + ), + ) + } + + try { + await attendeeDocRef.set({ + used: true, + used_by: message.author.id, + used_at: firebase.firestore.FieldValue.serverTimestamp(), + }) + + const guild = await client.guilds.fetch(guildId) + const attendeeRole = guild.roles.cache.find((e) => e.name === 'Attendee') + + const guildMember = guild.members.cache.find( + (e) => e.id === message.author.id, + ) + + await guildMember.roles.add(attendeeRole) + + await message.channel.send( + Embed.SendSuccess('Attendee Role Granted', 'Enjoy Hackathon!'), + ) + } catch (e) { + console.error(e) + message.channel.send(Embed.SendError('Error', 'Please contact staff')) + } + } + + if (participantSnapshot.exists) { + const { used } = participantSnapshot.data() + + if (used) { + return message.channel.send( + Embed.SendError( + 'Error', + 'This code is already used. Please contact staff', + ), + ) + } + + try { + await docRef.set({ + used: true, + used_by: message.author.id, + used_at: firebase.firestore.FieldValue.serverTimestamp(), + }) + + const guild = await client.guilds.fetch(guildId) + const participantRole = guild.roles.cache.find( + (e) => e.name === 'Participant', + ) + const guildMember = guild.members.cache.find( + (e) => e.id === message.author.id, + ) + + console.log(participantRole) + + await guildMember.roles.add(participantRole) + + await message.channel.send( + Embed.SendSuccess('Participant Role Granted', 'Enjoy Hackathon!'), + ) + } catch (e) { + console.error(e) + message.channel.send(Embed.SendError('Error', 'Please contact staff')) + } + } else { + return message.channel.send( + Embed.SendError('Failed', 'Invalid reference code'), + ) + } }