Fixed so name searching only returns the last account logged in with that name.
This commit is contained in:
parent
a7407d8b8c
commit
d3e5dd9c8a
@ -38,7 +38,7 @@ public class AccountRepository extends RepositoryBase
|
|||||||
private static String UPDATE_ACCOUNT_RANK_DONOR_PERM = "UPDATE accounts SET rank=?, donorRank=?, rankPerm=true WHERE uuid = ?;";
|
private static String UPDATE_ACCOUNT_RANK_DONOR_PERM = "UPDATE accounts SET rank=?, donorRank=?, rankPerm=true WHERE uuid = ?;";
|
||||||
private static String UPDATE_ACCOUNT_NULL_RANK = "UPDATE accounts SET rank=?, donorRank=?, rankPerm=?, rankExpire=? WHERE uuid = ? AND rank IS NULL;";
|
private static String UPDATE_ACCOUNT_NULL_RANK = "UPDATE accounts SET rank=?, donorRank=?, rankPerm=?, rankExpire=? WHERE uuid = ? AND rank IS NULL;";
|
||||||
|
|
||||||
private static String SELECT_ACCOUNT_UUID_BY_NAME = "SELECT uuid FROM accounts WHERE name = ?;";
|
private static String SELECT_ACCOUNT_UUID_BY_NAME = "SELECT uuid FROM accounts WHERE name = ? ORDER BY lastLogin DESC;";
|
||||||
|
|
||||||
private String _webAddress;
|
private String _webAddress;
|
||||||
|
|
||||||
|
@ -59,10 +59,17 @@
|
|||||||
|
|
||||||
public List<String> GetAllAccountNamesMatching(string name)
|
public List<String> GetAllAccountNamesMatching(string name)
|
||||||
{
|
{
|
||||||
|
var accounts = new List<String>();
|
||||||
|
|
||||||
using (var repository = _repositoryFactory.CreateRepository())
|
using (var repository = _repositoryFactory.CreateRepository())
|
||||||
{
|
{
|
||||||
return repository.GetAll<Account>().Where(c => c.Name == name).Select(y => y.Name).ToList();
|
var account = repository.Where<Account>(x => x.Name == name).OrderByDescending(y => y.LastLogin).FirstOrDefault();
|
||||||
|
|
||||||
|
if (account != null)
|
||||||
|
accounts.Add(account.Name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return accounts;
|
||||||
}
|
}
|
||||||
|
|
||||||
private object getAccountLock(string name)
|
private object getAccountLock(string name)
|
||||||
@ -801,7 +808,7 @@
|
|||||||
|
|
||||||
protected Account GetAccountByName(string name, IRepository repository)
|
protected Account GetAccountByName(string name, IRepository repository)
|
||||||
{
|
{
|
||||||
var account = repository.Where<Account>(x => x.Name == name).FirstOrDefault();
|
var account = repository.Where<Account>(x => x.Name == name).OrderByDescending(y => y.LastLogin).FirstOrDefault();
|
||||||
account.LoadNavigationProperties(repository.Context);
|
account.LoadNavigationProperties(repository.Context);
|
||||||
|
|
||||||
return account;
|
return account;
|
||||||
|
Loading…
Reference in New Issue
Block a user