mirror of
https://github.com/ahmadk953/poixpixel-discord-bot.git
synced 2025-05-11 19:23:06 +00:00
Added code coments, refactored db.ts and redis.ts, and added two new commands
This commit is contained in:
parent
b3fbd2358b
commit
890ca26c78
30 changed files with 1899 additions and 462 deletions
|
@ -63,7 +63,7 @@ export default {
|
|||
if (!interaction.memberPermissions?.has('ModerateMembers')) {
|
||||
await interaction.reply({
|
||||
content: 'You do not have permission to approve facts.',
|
||||
ephemeral: true,
|
||||
flags: ['Ephemeral'],
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ export default {
|
|||
if (!interaction.memberPermissions?.has('ModerateMembers')) {
|
||||
await interaction.reply({
|
||||
content: 'You do not have permission to reject facts.',
|
||||
ephemeral: true,
|
||||
flags: ['Ephemeral'],
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -1,4 +1,10 @@
|
|||
import { Events, Guild, GuildMember, PartialGuildMember } from 'discord.js';
|
||||
import {
|
||||
Collection,
|
||||
Events,
|
||||
Guild,
|
||||
GuildMember,
|
||||
PartialGuildMember,
|
||||
} from 'discord.js';
|
||||
|
||||
import { updateMember, setMembers } from '../db/db.js';
|
||||
import { generateMemberBanner } from '../util/helpers.js';
|
||||
|
@ -19,12 +25,9 @@ export const memberJoin: Event<typeof Events.GuildMemberAdd> = {
|
|||
}
|
||||
|
||||
try {
|
||||
await setMembers([
|
||||
{
|
||||
discordId: member.user.id,
|
||||
discordUsername: member.user.username,
|
||||
},
|
||||
]);
|
||||
const memberCollection = new Collection<string, GuildMember>();
|
||||
memberCollection.set(member.user.id, member);
|
||||
await setMembers(memberCollection);
|
||||
|
||||
if (!member.user.bot) {
|
||||
const attachment = await generateMemberBanner({
|
||||
|
|
|
@ -84,7 +84,7 @@ export const messageCreate: Event<typeof Events.MessageCreate> = {
|
|||
advancementsChannelId,
|
||||
);
|
||||
|
||||
if (!advancementsChannel || !advancementsChannel.isTextBased()) {
|
||||
if (!advancementsChannel?.isTextBased()) {
|
||||
console.error(
|
||||
'Advancements channel not found or is not a text channel',
|
||||
);
|
||||
|
|
|
@ -1,16 +1,28 @@
|
|||
import { Client, Events } from 'discord.js';
|
||||
|
||||
import { setMembers } from '../db/db.js';
|
||||
import { ensureDbInitialized, setMembers } from '../db/db.js';
|
||||
import { loadConfig } from '../util/configLoader.js';
|
||||
import { Event } from '../types/EventTypes.js';
|
||||
import { scheduleFactOfTheDay } from '../util/factManager.js';
|
||||
|
||||
import {
|
||||
ensureRedisConnection,
|
||||
setDiscordClient as setRedisDiscordClient,
|
||||
} from '../db/redis.js';
|
||||
import { setDiscordClient as setDbDiscordClient } from '../db/db.js';
|
||||
|
||||
export default {
|
||||
name: Events.ClientReady,
|
||||
once: true,
|
||||
execute: async (client: Client) => {
|
||||
const config = loadConfig();
|
||||
try {
|
||||
setRedisDiscordClient(client);
|
||||
setDbDiscordClient(client);
|
||||
|
||||
await ensureDbInitialized();
|
||||
await ensureRedisConnection();
|
||||
|
||||
const guild = client.guilds.cache.find(
|
||||
(guilds) => guilds.id === config.guildId,
|
||||
);
|
||||
|
@ -25,7 +37,7 @@ export default {
|
|||
|
||||
await scheduleFactOfTheDay(client);
|
||||
} catch (error) {
|
||||
console.error('Failed to initialize members in database:', error);
|
||||
console.error('Failed to initialize the bot:', error);
|
||||
}
|
||||
|
||||
console.log(`Ready! Logged in as ${client.user?.tag}`);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue