summary refs log tree commit diff
path: root/libs/datajob.js
blob: 3453bcd664ed38465a43d90c097b8a0622686112 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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;");
	}
}