From 2f189487630d42288453ca85d274d3dcbf0be867 Mon Sep 17 00:00:00 2001 From: Vortrex <3858226+VortrexFTW@users.noreply.github.com> Date: Sun, 25 Jul 2021 22:12:08 -0500 Subject: [PATCH] Fix clan save func, add missing logic --- scripts/server/clan.js | 46 ++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 17 deletions(-) diff --git a/scripts/server/clan.js b/scripts/server/clan.js index bdb2ee6c..902b9c4a 100644 --- a/scripts/server/clan.js +++ b/scripts/server/clan.js @@ -535,7 +535,7 @@ function createClan(name) { if(dbConnection) { escapedName = escapeDatabaseString(dbConnection, escapedName) queryDatabase(dbConnection, `INSERT INTO clan_main (clan_server, clan_name) VALUES (${getServerId()}, '${escapedName}')`); - let tempClan = new serverClasses.clanData(); + tempClan.databaseId = getDatabaseInsertId(dbConnection); tempClan.name = name; getServerData().clans.push(tempClan); @@ -566,13 +566,9 @@ function deleteClan(clanId) { // =========================================================================== function getClanData(clanId) { - let clans = getServerData().clans; - for(let i in clans) { - if(clans[i].databaseId == clanId) { - return clans[i]; - } + if(typeof getServerData().clans[clanId] != null) { + return getServerData().clans[clanId]; } - return false; } @@ -622,11 +618,23 @@ function saveClansToDatabase() { function saveClanToDatabase(clanData) { let dbConnection = connectToDatabase(); if(dbConnection) { - let safeClanName = escapeDatabaseString(dbConnection, clanData.name); - let dbQueryString = `UPDATE clan_main SET clan_name = '${safeClanName}', clan_owner = ${clanData.ownerId} WHERE clan_id = ${clanData.databaseId}`; + let safeName = escapeDatabaseString(dbConnection, clanData.name); + let safeTag = escapeDatabaseString(dbConnection, clanData.tag); + let safeMOTD = escapeDatabaseString(dbConnection, clanData.motd); + + let dbQueryString = ` + UPDATE clan_main SET + clan_name='${safeName}', + clan_owner=${clanData.ownerId}, + clan_tag='${safeTag}', + clan_motd='${safeMOTD}', + WHERE clan_id=${clanData.databaseId}`; + + //dbQueryString = dbQueryString.trim(); + dbQueryString = dbQueryString.replace(/(?:\r\n|\r|\n|\t)/g, ""); let dbQuery = queryDatabase(dbConnection, dbQueryString); freeDatabaseQuery(dbQuery); - disconnectFromDatabase(dbConnection); + dbQuery = null; return true; } @@ -647,20 +655,20 @@ function setClanOwner(clanId, ownerId) { // =========================================================================== -function setClanMemberTag(memberId, tag) { - // finish this later, need to query db +function setClanMemberTag(clanId, memberId, tag) { + getClanData(clanId).members[memberId].customTag = tag; } // =========================================================================== -function setClanMemberFlags(memberId, flags) { - // finish this later, need to query db +function setClanMemberFlags(clan, memberId, flags) { + getClanData(clanId).members[memberId].flags = flags; } // =========================================================================== -function setClanMemberTitle(memberId, title) { - // finish this later, need to query db +function setClanMemberTitle(clan, memberId, title) { + getClanData(clanId).members[memberId].customTitle = customTitle; } // =========================================================================== @@ -717,4 +725,8 @@ function arePlayersInSameClan(client1, client2) { return false; } -// =========================================================================== \ No newline at end of file +// =========================================================================== + +function getPlayerClanRank(client) { + return +} \ No newline at end of file