diff --git a/TShockAPI/DB/UserManager.cs b/TShockAPI/DB/UserManager.cs
index 29944e18..7ea6c63a 100644
--- a/TShockAPI/DB/UserManager.cs
+++ b/TShockAPI/DB/UserManager.cs
@@ -18,6 +18,7 @@ along with this program. If not, see .
using System;
using System.Data;
using System.IO;
+using System.Collections.Generic;
using MySql.Data.MySqlClient;
namespace TShockAPI.DB
@@ -256,14 +257,7 @@ namespace TShockAPI.DB
using (var reader = result)
{
if (reader.Read())
- {
- user.ID = reader.Get("ID");
- user.Group = reader.Get("Usergroup");
- user.Password = reader.Get("Password");
- user.Name = reader.Get("Username");
- user.Address = reader.Get("IP");
- return user;
- }
+ return LoadUserFromResult(user, result);
}
}
catch (Exception ex)
@@ -272,6 +266,37 @@ namespace TShockAPI.DB
}
throw new UserNotExistException(string.IsNullOrEmpty(user.Address) ? user.Name : user.Address);
}
+
+ public List GetUsers()
+ {
+ try
+ {
+ List users = new List();
+ using (var reader = database.QueryReader("SELECT * FROM Users"))
+ {
+ while (reader.Read())
+ {
+ users.Add(LoadUserFromResult(new User(), reader));
+ }
+ return users;
+ }
+ }
+ catch (Exception ex)
+ {
+ Log.Error(ex.ToString());
+ }
+ return null;
+ }
+
+ private User LoadUserFromResult(User user, QueryResult result)
+ {
+ user.ID = result.Get("ID");
+ user.Group = result.Get("Usergroup");
+ user.Password = result.Get("Password");
+ user.Name = result.Get("Username");
+ user.Address = result.Get("IP");
+ return user;
+ }
}
public class User