diff options
Diffstat (limited to 'src/game/AccountMgr.cpp')
-rw-r--r-- | src/game/AccountMgr.cpp | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/src/game/AccountMgr.cpp b/src/game/AccountMgr.cpp index b9bd00bb2cb..5deae7a75f9 100644 --- a/src/game/AccountMgr.cpp +++ b/src/game/AccountMgr.cpp @@ -18,7 +18,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#include "AccountMgr.h" +#include "AccountAccessor.h" #include "Database/DatabaseEnv.h" #include "ObjectMgr.h" #include "Player.h" @@ -81,7 +81,7 @@ AccountOpResult AccountMgr::DeleteAccount(uint32 accid) uint64 guid = MAKE_NEW_GUID(guidlo, 0, HIGHGUID_PLAYER); // kick if player currently - if(Player* p = objmgr.GetPlayer(guid)) + if(Player* p = ObjectAccessor::FindPlayer(guid)) { WorldSession* s = p->GetSession(); s->KickPlayer(); // mark session to remove at next session list update @@ -168,6 +168,32 @@ uint32 AccountMgr::GetId(std::string username) } } +uint32 AccountMgr::GetSecurity(uint32 acc_id) +{ + QueryResult *result = loginDatabase.PQuery("SELECT gmlevel FROM account WHERE id = '%u'", acc_id); + if(result) + { + uint32 sec = (*result)[0].GetUInt32(); + delete result; + return sec; + } + + return 0; +} + +bool AccountMgr::GetName(uint32 acc_id, std::string &name) +{ + QueryResult *result = loginDatabase.PQuery("SELECT username FROM account WHERE id = '%u'", acc_id); + if(result) + { + name = (*result)[0].GetCppString(); + delete result; + return true; + } + + return false; +} + bool AccountMgr::CheckPassword(uint32 accid, std::string passwd) { normilizeString(passwd); |