[Character] Convert NoRentExpired to Repositories (#3860)

* [Character] Convert NoRentExpired to Repositories

- Create a custom `GetSecondsSinceLastLogin` repository method to use in `NoRentExpired`.

* Update character_data_repository.h
This commit is contained in:
Alex King
2024-01-07 01:25:58 -05:00
committed by GitHub
parent 44d63c47d9
commit 20778ad7d9
4 changed files with 29 additions and 16 deletions
@@ -46,6 +46,24 @@ public:
*/
// Custom extended repository methods here
static uint32 GetSecondsSinceLastLogin(Database &db, const std::string& name)
{
auto results = db.QueryDatabase(
fmt::format(
"SELECT (UNIX_TIMESTAMP(NOW()) - last_login) FROM {} WHERE name = '{}'",
TableName(),
Strings::Escape(name)
)
);
if (!results.RowCount() || !results.Success()) {
return 0;
}
auto row = results.begin();
return Strings::ToUnsignedInt(row[0]);
}
};
#endif //EQEMU_CHARACTER_DATA_REPOSITORY_H