A significant amount of reimplementation

This commit is contained in:
Bradley Bickford 2023-11-11 21:51:34 -05:00
parent ac672e73d0
commit 7c6389d421
3 changed files with 66 additions and 6 deletions

View File

@ -2,7 +2,8 @@ const fs = require('node:fs');
const path = require('node:path');
const { Client, Events, GatewayIntentBits, Collection } = require('discord.js');
const { token, mysql_username, mysql_password } = require('./config.json');
const sqlutil = require('./utilities/sqlutil')
const sqlutil = require('./utilities/sqlutil');
const { sql } = require('googleapis/build/src/apis/sql');
sqlutil.buildPool('breadbot_test')
@ -92,6 +93,20 @@ client.on(Events.GuildCreate, async guild => {
client.on(Events.MessageCreate, async message => {
console.log("Message Create Fired")
var channel_ok = await sqlutil.registerChannelIfMissing(message.channelId, message.channel.guild.id, message.channel.name)
var user_ok = await sqlutil.registerUserIfMissing(message.author.id, message.author.username, message.author.displayName)
if (channel_ok && user_ok) {
sqlutil.registerMessage(message.id, message.channelId, message.author.id, message.content, message.createdAt).then(message_add => {
if(message_add) {
console.log("Message Added")
} else {
console.log("Failed to log message")
}
})
}
/*
var channel_registered = sqlutil.isChannelRegistered(message.channelId)
var user_registered = sqlutil.isUserRegistered(message.author.id)
@ -112,7 +127,7 @@ client.on(Events.MessageCreate, async message => {
console.log(`Registering user ${message.author.username}`)
var user_registered_result = await sqlutil.registerUser(messsage.author.id, message.author.username, message.author.displayName)
if(user_registered_result.valueOf()) {
console.log(`User Registered ${message.author.username}`)
} else {
@ -127,7 +142,7 @@ client.on(Events.MessageCreate, async message => {
} else {
console.log("Failed to log message")
}
})
})*/
})
client.once(Events.ClientReady, c => {

View File

@ -15,4 +15,4 @@ connection_pool.query("SELECT * FROM servers").then(async ([rows, fields]) => {
console.log(rows)
return "SOME TEXT"
})
}).then(console.log)
}).catch(() => {return "SOME FAIL TEXT"}).then(console.log)

View File

@ -55,8 +55,18 @@ async function registerServer(server_snowflake, server_name, server_description)
}
async function registerServerIfMissing(server_snowflake, server_name, server_description) {
connection_pool.query(`SELECT * FROM servers WHERE server_snowflake = ?;` [server_snowflake] (error, results, fields) => {
return connection_pool.query("SELECT * FROM servers WHERE server_snowflake = ?;", [server_snowflake]).then(async ([rows, fields]) => {
if (rows) {
return true
} else {
return await connection_pool.query("INSERT INTO servers VALUES (?, ?, ?)", [server_snowflake, server_name, server_description]).then((rows, fields) => {
return true
})
}
}).catch((error) => {
console.log(error)
return false
})
}
@ -113,6 +123,22 @@ async function registerChannel(channel_snowflake, server_snowflake, channel_name
return result
}
async function registerChannelIfMissing(channel_snowflake, server_snowflake, channel_name) {
return connection_pool.query("SELECT * FROM channels WHERE channel_snowflake = ?;", [channel_snowflake]).then(async ([rows, fields]) => {
if (rows) {
return true
} else {
return await connection_pool.query("INSERT INTO channels VALUES (?, ?, ?)", [channel_snowflake, server_snowflake, channel_name]).then((rows, fields) => {
return true
})
}
}).catch((error) => {
console.log(error)
return false
})
}
async function isUserRegistered(user_snowflake) {
var resultLength = null
@ -150,6 +176,22 @@ async function registerUser(user_snowflake, user_name, user_displayname) {
return result
}
async function registerUserIfMissing(user_snowflake, user_name, user_displayname) {
return connection_pool.query("SELECT * FROM users WHERE user_snowflake = ?;", [user_snowflake]).then(async ([rows, fields]) => {
if (rows) {
return true
} else {
return await connection_pool.query("INSERT INTO users VALUES (?, ?, ?)", [user_snowflake, user_name, user_displayname]).then((rows, fields) => {
return true
})
}
}).catch((error) => {
console.log(error)
return false
})
}
async function registerMessage(message_snowflake, channel_snowflake, user_snowflake, message_content, message_timestamp) {
var sql = `INSERT INTO messages VALUES (?, ?, ?, ?, ?, 0, 0);`
var result = null
@ -176,5 +218,8 @@ module.exports = {
registerChannel,
isUserRegistered,
registerUser,
registerMessage
registerMessage,
registerServerIfMissing,
registerChannelIfMissing,
registerUserIfMissing
}