function queryAw(connection, id, key, value) { connection.query("INSERT INTO amygdala_profile(timestamp, userID, key, value) VALUES ($1, $2, $3, $4);", [Date.now(), id, key, value]); } module.exports = { async saveUserData(connection, userId) { let userData = client.users.cache.get(userId); if (userData === undefined) { userData = await client.users.fetch(userId); } await connection.query("BEGIN;"); try { if (userData.globalName !== null) await queryAw(connection, userId, "discord_globalName", userData.globalName); if (userData.avatar !== null) await queryAw(connection, userId, "discord_avatar", userData.avatar); await queryAw(connection, userId, "discord_username", userData.username); await queryAw(connection, userId, "discord_discriminator", userData.discriminator); } catch (e) { await connection.query("ROLLBACK;"); throw e; } await connection.query("COMMIT;"); } }