MCPcopy Index your code
hub / github.com/codebymitch/TitanBot / getUserLevelData

Function getUserLevelData

src/utils/database.js:775–811  ·  view source on GitHub ↗
(client, guildId, userId)

Source from the content-addressed store, hash-verified

773}
774
775export async function getUserLevelData(client, guildId, userId) {
776 const key = getUserLevelKey(guildId, userId);
777 try {
778 const data = await getFromDb(key, null);
779 if (!data) {
780 return {
781 xp: 0,
782 level: 0,
783 totalXp: 0,
784 lastMessage: 0,
785 rank: 0,
786 xpToNextLevel: getXpForLevel(1)
787 };
788 }
789
790 const levelData = {
791 xp: data.xp || 0,
792 level: data.level || 0,
793 totalXp: data.totalXp || 0,
794 lastMessage: data.lastMessage || 0,
795 rank: data.rank || 0,
796 xpToNextLevel: getXpForLevel((data.level || 0) + 1)
797 };
798
799 return levelData;
800 } catch (error) {
801 logger.error(`Error getting level data for user ${userId} in guild ${guildId}:`, error);
802 return {
803 xp: 0,
804 level: 0,
805 totalXp: 0,
806 lastMessage: 0,
807 rank: 0,
808 xpToNextLevel: getXpForLevel(1)
809 };
810 }
811}
812
813export async function saveUserLevelData(client, guildId, userId, data) {
814 const key = getUserLevelKey(guildId, userId);

Callers 3

executeFunction · 0.90
executeFunction · 0.90
handleLevelingFunction · 0.90

Calls 3

getUserLevelKeyFunction · 0.85
getFromDbFunction · 0.85
getXpForLevelFunction · 0.70

Tested by

no test coverage detected