|
@@ -547,35 +547,31 @@ namespace Discord |
|
|
} |
|
|
} |
|
|
public User GetUser(ulong id) |
|
|
public User GetUser(ulong id) |
|
|
{ |
|
|
{ |
|
|
if (!Client.Config.UsePermissionsCache) |
|
|
|
|
|
|
|
|
if (IsPrivate) |
|
|
{ |
|
|
{ |
|
|
if (Server != null) |
|
|
|
|
|
{ |
|
|
|
|
|
var user = Server.GetUser(id); |
|
|
|
|
|
if (user != null) |
|
|
|
|
|
{ |
|
|
|
|
|
ChannelPermissions perms = new ChannelPermissions(); |
|
|
|
|
|
UpdatePermissions(user, ref perms); |
|
|
|
|
|
if (perms.ReadMessages) |
|
|
|
|
|
return user; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
else |
|
|
|
|
|
|
|
|
if (id == Recipient.Id) |
|
|
|
|
|
return Recipient; |
|
|
|
|
|
else if (id == Client.PrivateUser.Id) |
|
|
|
|
|
return Client.PrivateUser; |
|
|
|
|
|
} |
|
|
|
|
|
else if (!Client.Config.UsePermissionsCache) |
|
|
|
|
|
{ |
|
|
|
|
|
var user = Server.GetUser(id); |
|
|
|
|
|
if (user != null) |
|
|
{ |
|
|
{ |
|
|
if (id == Recipient.Id) |
|
|
|
|
|
return Recipient; |
|
|
|
|
|
else if (id == Client.PrivateUser.Id) |
|
|
|
|
|
return Client.PrivateUser; |
|
|
|
|
|
|
|
|
ChannelPermissions perms = new ChannelPermissions(); |
|
|
|
|
|
UpdatePermissions(user, ref perms); |
|
|
|
|
|
if (perms.ReadMessages) |
|
|
|
|
|
return user; |
|
|
} |
|
|
} |
|
|
return null; |
|
|
|
|
|
} |
|
|
} |
|
|
else |
|
|
else |
|
|
{ |
|
|
{ |
|
|
Member result; |
|
|
Member result; |
|
|
if (_users.TryGetValue(id, out result)) |
|
|
if (_users.TryGetValue(id, out result)) |
|
|
return result.User; |
|
|
return result.User; |
|
|
return null; |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
return null; |
|
|
} |
|
|
} |
|
|
#endregion |
|
|
#endregion |
|
|
|
|
|
|
|
|