Added message deletion

This commit is contained in:
hydrabolt
2015-08-24 18:13:53 +01:00
parent 14cbcc4873
commit 090b9dbcff
5 changed files with 270 additions and 107 deletions

View File

@@ -9,6 +9,7 @@ var Endpoints = require("./Endpoints.js");
var User = require("./User.js");
var Server = require("./Server.js");
var Channel = require("./Channel.js");
var Message = require("./Message.js");
//node modules
var request = require("superagent");
@@ -237,6 +238,53 @@ var Client = (function () {
break;
case "MESSAGE_CREATE":
self.debug("received message");
var mentions = [];
var _iteratorNormalCompletion3 = true;
var _didIteratorError3 = false;
var _iteratorError3 = undefined;
try {
for (var _iterator3 = data.mentions[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
var mention = _step3.value;
mentions.push(self.addUser(mention));
}
} catch (err) {
_didIteratorError3 = true;
_iteratorError3 = err;
} finally {
try {
if (!_iteratorNormalCompletion3 && _iterator3["return"]) {
_iterator3["return"]();
}
} finally {
if (_didIteratorError3) {
throw _iteratorError3;
}
}
}
var channel = self.getChannel("id", data.channel_id);
var msg = channel.addMessage(new Message(data, channel, mentions, self.addUser(data.author)));
self.trigger("message", msg);
break;
case "MESSAGE_DELETE":
self.debug("message deleted");
var channel = self.getChannel("id", data.channel_id);
var message = channel.getMessage("id", data.id);
if (message) {
self.trigger("messageDelete", channel, message);
channel.messages.splice(channel.messages.indexOf(message), 1);
} else {
//don't have the cache of that message ;(
self.trigger("messageDelete", channel);
}
break;
default:
self.debug("received unknown packet");
@@ -281,50 +329,16 @@ var Client = (function () {
}, {
key: "getUser",
value: function getUser(key, value) {
var _iteratorNormalCompletion3 = true;
var _didIteratorError3 = false;
var _iteratorError3 = undefined;
try {
for (var _iterator3 = this.userCache[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
var user = _step3.value;
if (user[key] === value) {
return user;
}
}
} catch (err) {
_didIteratorError3 = true;
_iteratorError3 = err;
} finally {
try {
if (!_iteratorNormalCompletion3 && _iterator3["return"]) {
_iterator3["return"]();
}
} finally {
if (_didIteratorError3) {
throw _iteratorError3;
}
}
}
return null;
}
//def getChannel
}, {
key: "getChannel",
value: function getChannel(key, value) {
var _iteratorNormalCompletion4 = true;
var _didIteratorError4 = false;
var _iteratorError4 = undefined;
try {
for (var _iterator4 = this.channelCache[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
var channel = _step4.value;
for (var _iterator4 = this.userCache[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {
var user = _step4.value;
if (channel[key] === value) {
return channel;
if (user[key] === value) {
return user;
}
}
} catch (err) {
@@ -345,22 +359,20 @@ var Client = (function () {
return null;
}
//def getServer
//def getChannel
}, {
key: "getServer",
value: function getServer() {
var key = arguments.length <= 0 || arguments[0] === undefined ? "id" : arguments[0];
var value = arguments.length <= 1 || arguments[1] === undefined ? "abc123" : arguments[1];
key: "getChannel",
value: function getChannel(key, value) {
var _iteratorNormalCompletion5 = true;
var _didIteratorError5 = false;
var _iteratorError5 = undefined;
try {
for (var _iterator5 = this.serverCache[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
var server = _step5.value;
for (var _iterator5 = this.channelCache[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {
var channel = _step5.value;
if (server[key] === value) {
return server;
if (channel[key] === value) {
return channel;
}
}
} catch (err) {
@@ -381,6 +393,42 @@ var Client = (function () {
return null;
}
//def getServer
}, {
key: "getServer",
value: function getServer() {
var key = arguments.length <= 0 || arguments[0] === undefined ? "id" : arguments[0];
var value = arguments.length <= 1 || arguments[1] === undefined ? "abc123" : arguments[1];
var _iteratorNormalCompletion6 = true;
var _didIteratorError6 = false;
var _iteratorError6 = undefined;
try {
for (var _iterator6 = this.serverCache[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {
var server = _step6.value;
if (server[key] === value) {
return server;
}
}
} catch (err) {
_didIteratorError6 = true;
_iteratorError6 = err;
} finally {
try {
if (!_iteratorNormalCompletion6 && _iterator6["return"]) {
_iterator6["return"]();
}
} finally {
if (_didIteratorError6) {
throw _iteratorError6;
}
}
}
return null;
}
//def trySendConnData
}, {
key: "trySendConnData",
@@ -427,6 +475,38 @@ var Client = (function () {
get: function get() {
return this.userCache;
}
}, {
key: "messages",
get: function get() {
var msgs = [];
var _iteratorNormalCompletion7 = true;
var _didIteratorError7 = false;
var _iteratorError7 = undefined;
try {
for (var _iterator7 = this.channelCache[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {
var channel = _step7.value;
msgs = msgs.concat(channel.messages);
}
} catch (err) {
_didIteratorError7 = true;
_iteratorError7 = err;
} finally {
try {
if (!_iteratorNormalCompletion7 && _iterator7["return"]) {
_iterator7["return"]();
}
} finally {
if (_didIteratorError7) {
throw _iteratorError7;
}
}
}
return msgs;
}
}]);
return Client;