Check if parts of server data exist

This commit is contained in:
abalabahaha
2016-01-16 17:09:25 -08:00
parent 345d0da72b
commit 94f067cc51
2 changed files with 58 additions and 46 deletions

View File

@@ -67,32 +67,38 @@ var Server = (function (_Equality) {
var self = this;
data.roles.forEach(function (dataRole) {
_this.roles.add(new _Role2["default"](dataRole, _this, client));
});
if (data.roles) {
data.roles.forEach(function (dataRole) {
_this.roles.add(new _Role2["default"](dataRole, _this, client));
});
}
data.members.forEach(function (dataUser) {
_this.memberMap[dataUser.user.id] = {
roles: dataUser.roles.map(function (pid) {
return self.roles.get("id", pid);
}),
mute: dataUser.mute,
deaf: dataUser.deaf,
joinedAt: Date.parse(dataUser.joined_at)
};
var user = client.internal.users.add(new _User2["default"](dataUser.user, client));
_this.members.add(user);
});
if (data.members) {
data.members.forEach(function (dataUser) {
_this.memberMap[dataUser.user.id] = {
roles: dataUser.roles.map(function (pid) {
return self.roles.get("id", pid);
}),
mute: dataUser.mute,
deaf: dataUser.deaf,
joinedAt: Date.parse(dataUser.joined_at)
};
var user = client.internal.users.add(new _User2["default"](dataUser.user, client));
_this.members.add(user);
});
}
data.channels.forEach(function (dataChannel) {
if (dataChannel.type === "text") {
var channel = client.internal.channels.add(new _TextChannel2["default"](dataChannel, client, _this));
_this.channels.add(channel);
} else {
var channel = client.internal.channels.add(new _VoiceChannel2["default"](dataChannel, client, _this));
_this.channels.add(channel);
}
});
if (data.channels) {
data.channels.forEach(function (dataChannel) {
if (dataChannel.type === "text") {
var channel = client.internal.channels.add(new _TextChannel2["default"](dataChannel, client, _this));
_this.channels.add(channel);
} else {
var channel = client.internal.channels.add(new _VoiceChannel2["default"](dataChannel, client, _this));
_this.channels.add(channel);
}
});
}
if (data.presences) {
for (var _iterator = data.presences, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {

View File

@@ -35,30 +35,36 @@ export default class Server extends Equality {
var self = this;
data.roles.forEach((dataRole) => {
this.roles.add(new Role(dataRole, this, client));
});
if (data.roles) {
data.roles.forEach((dataRole) => {
this.roles.add(new Role(dataRole, this, client));
});
}
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.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.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.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);
}
});
}
if (data.presences) {
for (var presence of data.presences) {