mirror of
				https://github.com/DarkflameUniverse/DarkflameServer.git
				synced 2025-10-26 18:11:59 +00:00 
			
		
		
		
	 b798da8ef8
			
		
	
	b798da8ef8
	
	
	
		
			
			* Update mute expiry from database * Address review comments * Address review comment Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com> --------- Co-authored-by: David Markowitz <39972741+EmosewaMC@users.noreply.github.com>
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef __IACCOUNTS__H__
 | |
| #define __IACCOUNTS__H__
 | |
| 
 | |
| #include <cstdint>
 | |
| #include <optional>
 | |
| #include <string>
 | |
| #include <string_view>
 | |
| 
 | |
| enum class eGameMasterLevel : uint8_t;
 | |
| 
 | |
| class IAccounts {
 | |
| public:
 | |
| 	struct Info {
 | |
| 		std::string bcryptPassword;
 | |
| 		uint32_t id{};
 | |
| 		uint32_t playKeyId{};
 | |
| 		uint64_t muteExpire{};
 | |
| 		bool banned{};
 | |
| 		bool locked{};
 | |
| 		eGameMasterLevel maxGmLevel{};
 | |
| 	};
 | |
| 
 | |
| 	// Get the account info for the given username.
 | |
| 	virtual std::optional<IAccounts::Info> GetAccountInfo(const std::string_view username) = 0;
 | |
| 
 | |
| 	// Update the account's unmute time.
 | |
| 	virtual void UpdateAccountUnmuteTime(const uint32_t accountId, const uint64_t timeToUnmute) = 0;
 | |
| 
 | |
| 	// Update the account's ban status.
 | |
| 	virtual void UpdateAccountBan(const uint32_t accountId, const bool banned) = 0;
 | |
| 
 | |
| 	// Update the account's password.
 | |
| 	virtual void UpdateAccountPassword(const uint32_t accountId, const std::string_view bcryptpassword) = 0;
 | |
| 
 | |
| 	// Add a new account to the database.
 | |
| 	virtual void InsertNewAccount(const std::string_view username, const std::string_view bcryptpassword) = 0;
 | |
| 
 | |
| 	// Update the GameMaster level of an account.
 | |
| 	virtual void UpdateAccountGmLevel(const uint32_t accountId, const eGameMasterLevel gmLevel) = 0;
 | |
| 
 | |
| 	virtual uint32_t GetAccountCount() = 0;
 | |
| };
 | |
| 
 | |
| #endif  //!__IACCOUNTS__H__
 |