mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-10 16:43:31 +01:00
Handle unavailable guild, fix default getChannelLogs limit
This commit is contained in:
@@ -167,12 +167,17 @@ export default class Client extends EventEmitter {
|
||||
}
|
||||
|
||||
// def getChannelLogs
|
||||
getChannelLogs(where, limit = 500, options = {}, callback = (/*err, logs*/) => { }) {
|
||||
getChannelLogs(where, limit = 50, options = {}, callback = (/*err, logs*/) => { }) {
|
||||
if (typeof options === "function") {
|
||||
// options is the callback
|
||||
callback = options;
|
||||
options = {};
|
||||
}
|
||||
else if (typeof limit === "function") {
|
||||
// options is the callback
|
||||
callback = limit;
|
||||
limit = 50;
|
||||
}
|
||||
|
||||
return this.internal.getChannelLogs(where, limit, options)
|
||||
.then(dataCallback(callback), errorCallback(callback));
|
||||
|
||||
@@ -86,7 +86,7 @@ export default class InternalClient {
|
||||
return reject(error);
|
||||
}
|
||||
}else{
|
||||
resolve(data.body);
|
||||
resolve(data.body);
|
||||
}
|
||||
});
|
||||
});
|
||||
@@ -472,7 +472,7 @@ export default class InternalClient {
|
||||
}
|
||||
|
||||
// def getChannelLogs
|
||||
getChannelLogs(_channel, limit = 500, options = {}) {
|
||||
getChannelLogs(_channel, limit = 50, options = {}) {
|
||||
return this.resolver.resolveChannel(_channel)
|
||||
.then(channel => {
|
||||
var qsObject = {limit};
|
||||
@@ -1187,7 +1187,7 @@ export default class InternalClient {
|
||||
break;
|
||||
case PacketType.SERVER_CREATE:
|
||||
var server = self.servers.get("id", data.id);
|
||||
if (!server) {
|
||||
if (!server && !data.unavailable) {
|
||||
server = new Server(data, client)
|
||||
self.servers.add(server);
|
||||
client.emit("serverCreated", server);
|
||||
@@ -1195,8 +1195,7 @@ export default class InternalClient {
|
||||
break;
|
||||
case PacketType.SERVER_DELETE:
|
||||
var server = self.servers.get("id", data.id);
|
||||
if (server) {
|
||||
|
||||
if (server && !data.unavailable) {
|
||||
for (var channel of server.channels) {
|
||||
self.channels.remove(channel);
|
||||
}
|
||||
|
||||
@@ -35,36 +35,30 @@ export default class Server extends Equality {
|
||||
|
||||
var self = this;
|
||||
|
||||
if (data.roles) {
|
||||
data.roles.forEach((dataRole) => {
|
||||
this.roles.add(new Role(dataRole, this, client));
|
||||
});
|
||||
}
|
||||
data.roles.forEach((dataRole) => {
|
||||
this.roles.add(new Role(dataRole, this, client));
|
||||
});
|
||||
|
||||
if (data.members) {
|
||||
data.members.forEach((dataUser) => {
|
||||
this.memberMap[dataUser.user.id] = {
|
||||
roles: dataUser.roles.map((pid) => self.roles.get("id", pid)),
|
||||
mute: dataUser.mute,
|
||||
deaf: dataUser.deaf,
|
||||
joinedAt: Date.parse(dataUser.joined_at)
|
||||
};
|
||||
var user = client.internal.users.add(new User(dataUser.user, client));
|
||||
this.members.add(user);
|
||||
});
|
||||
}
|
||||
data.members.forEach((dataUser) => {
|
||||
this.memberMap[dataUser.user.id] = {
|
||||
roles: dataUser.roles.map((pid) => self.roles.get("id", pid)),
|
||||
mute: dataUser.mute,
|
||||
deaf: dataUser.deaf,
|
||||
joinedAt: Date.parse(dataUser.joined_at)
|
||||
};
|
||||
var user = client.internal.users.add(new User(dataUser.user, client));
|
||||
this.members.add(user);
|
||||
});
|
||||
|
||||
if (data.channels) {
|
||||
data.channels.forEach((dataChannel) => {
|
||||
if (dataChannel.type === "text") {
|
||||
var channel = client.internal.channels.add(new TextChannel(dataChannel, client, this));
|
||||
this.channels.add(channel);
|
||||
} else {
|
||||
var channel = client.internal.channels.add(new VoiceChannel(dataChannel, client, this));
|
||||
this.channels.add(channel);
|
||||
}
|
||||
});
|
||||
}
|
||||
data.channels.forEach((dataChannel) => {
|
||||
if (dataChannel.type === "text") {
|
||||
var channel = client.internal.channels.add(new TextChannel(dataChannel, client, this));
|
||||
this.channels.add(channel);
|
||||
} else {
|
||||
var channel = client.internal.channels.add(new VoiceChannel(dataChannel, client, this));
|
||||
this.channels.add(channel);
|
||||
}
|
||||
});
|
||||
|
||||
if (data.presences) {
|
||||
for (var presence of data.presences) {
|
||||
|
||||
Reference in New Issue
Block a user