forked from cory/tildefriends
Fixed some messages not finding their root.
git-svn-id: https://www.unprompted.com/svn/projects/tildefriends/trunk@3736 ed5197a5-7fde-0310-b194-c3ffbd925b24
This commit is contained in:
@ -25,28 +25,30 @@ function processMessages() {
|
||||
for (let event of g_message_queue) {
|
||||
var key = Object.keys(event.data)[0];
|
||||
if (key == 'message') {
|
||||
event.data[key].children = [];
|
||||
var new_message = event.data.message;
|
||||
new_message.children = [];
|
||||
var found = false;
|
||||
var root = JSON.parse(event.data[key].content).root;
|
||||
var root = JSON.parse(new_message.content).root;
|
||||
if (root) {
|
||||
for (let message of g_data.messages) {
|
||||
if (root == message.id) {
|
||||
message.children.push(event.data[key]);
|
||||
message.children.push(new_message);
|
||||
message.children.sort((x, y) => y.timestamp - x.timestamp);
|
||||
found = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
var removed = {};
|
||||
for (let message of g_data.messages) {
|
||||
if (JSON.parse(message.content).root == event.data[key].id) {
|
||||
event.data[key].children.push(message);
|
||||
event.data[key].children.sort((x, y) => y.timestamp - x.timestamp);
|
||||
g_data.messages.splice(g_data.messages.indexOf(message), 1);
|
||||
break;
|
||||
if (JSON.parse(message.content).root == new_message.id) {
|
||||
new_message.children.push(message);
|
||||
new_message.children.sort((x, y) => y.timestamp - x.timestamp);
|
||||
removed[message.id] = true;
|
||||
}
|
||||
}
|
||||
g_data.messages = g_data.messages.filter(x => !removed[x.id]);
|
||||
if (!found) {
|
||||
g_data.messages.push(event.data[key]);
|
||||
g_data.messages.push(new_message);
|
||||
g_data.messages.sort((x, y) => y.timestamp - x.timestamp);
|
||||
}
|
||||
} else if (key + 's' in g_data && Array.isArray(g_data[key + 's'])) {
|
||||
|
Reference in New Issue
Block a user