Added leave server

This commit is contained in:
hydrabolt
2015-08-25 13:05:41 +01:00
parent fb3bdcf079
commit 659fdf5bff
2 changed files with 66 additions and 12 deletions

View File

@@ -212,6 +212,29 @@ var Client = (function () {
});
});
}
}, {
key: "leaveServer",
value: function leaveServer(server) {
var callback = arguments.length <= 1 || arguments[1] === undefined ? function (err, server) {} : arguments[1];
var self = this;
return new Promise(function (resolve, reject) {
request.del(Endpoints.SERVERS + "/" + self.resolveServerID(server)).set("authorization", self.token).end(function (err, res) {
if (err) {
callback(err);
reject(err);
} else {
var srv = self.getServer("id", self.resolveServerID(server));
callback(null, srv);
resolve(srv);
self.serverCache.splice(self.serverCache.indexOf(srv), 1);
}
});
});
}
//def createws
}, {
@@ -294,6 +317,7 @@ var Client = (function () {
self.debug("received message");
var mentions = [];
data.mentions = data.mentions || []; //for some reason this was not defined at some point?
var _iteratorNormalCompletion2 = true;
var _didIteratorError2 = false;
var _iteratorError2 = undefined;
@@ -320,9 +344,10 @@ var Client = (function () {
}
var channel = self.getChannel("id", data.channel_id);
if (channel) {
var msg = channel.addMessage(new Message(data, channel, mentions, self.addUser(data.author)));
self.trigger("message", msg);
}
break;
case "MESSAGE_DELETE":

View File

@@ -236,6 +236,33 @@ class Client {
}
leaveServer(server, callback = function (err, server) { }) {
var self = this;
return new Promise(function (resolve, reject) {
request
.del(`${Endpoints.SERVERS}/${self.resolveServerID(server) }`)
.set("authorization", self.token)
.end(function (err, res) {
if (err) {
callback(err);
reject(err);
} else {
var srv = self.getServer("id", self.resolveServerID(server));
callback(null, srv);
resolve(srv);
self.serverCache.splice(self.serverCache.indexOf(srv), 1);
}
});
});
}
//def createws
createws() {
if (this.websocket)
@@ -295,14 +322,16 @@ class Client {
self.debug("received message");
var mentions = [];
data.mentions = data.mentions || []; //for some reason this was not defined at some point?
for (var mention of data.mentions) {
mentions.push(self.addUser(mention));
}
var channel = self.getChannel("id", data.channel_id);
if (channel) {
var msg = channel.addMessage(new Message(data, channel, mentions, self.addUser(data.author)));
self.trigger("message", msg);
}
break;
case "MESSAGE_DELETE":