Commit 5993fba1 authored by JC Brand's avatar JC Brand

Fix MAM issue. Messages weren't being queried for properly

because the archive ids of messages weren't being stored.
parent 12831769
...@@ -1166,7 +1166,7 @@ ...@@ -1166,7 +1166,7 @@
}); });
}, },
createMessage: function ($message, $delay) { createMessage: function ($message, $delay, original_stanza) {
$delay = $delay || $message.find('delay'); $delay = $delay || $message.find('delay');
var body = $message.children('body').text(), var body = $message.children('body').text(),
delayed = $delay.length > 0, delayed = $delay.length > 0,
...@@ -1312,7 +1312,7 @@ ...@@ -1312,7 +1312,7 @@
if (msgid && chatbox.messages.findWhere({msgid: msgid})) { if (msgid && chatbox.messages.findWhere({msgid: msgid})) {
return true; // We already have this message stored. return true; // We already have this message stored.
} }
chatbox.createMessage($message, $delay); chatbox.createMessage($message, $delay, message);
converse.roster.addResource(contact_jid, resource); converse.roster.addResource(contact_jid, resource);
converse.emit('message', message); converse.emit('message', message);
return true; return true;
......
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
'jid': from_jid, 'jid': from_jid,
'fullname': from_jid, 'fullname': from_jid,
'type': 'headline' 'type': 'headline'
}).createMessage($message); }).createMessage($message, undefined, message);
converse.emit('message', message); converse.emit('message', message);
} }
return true; return true;
......
...@@ -48,12 +48,13 @@ ...@@ -48,12 +48,13 @@
} }
}, },
ChatBoxes: { ChatBox: {
createMessage: function ($message, $delay) { createMessage: function ($message, $delay, original_stanza) {
var message = this._super.createMessage.apply(this, arguments); var message = this._super.createMessage.apply(this, arguments);
message.save({ message.save({
archive_id: $message.find('result[xmlns="'+Strophe.NS.MAM+'"]').attr('id') archive_id: $(original_stanza).find('result[xmlns="'+Strophe.NS.MAM+'"]').attr('id')
}); });
return message;
} }
}, },
......
...@@ -874,7 +874,7 @@ ...@@ -874,7 +874,7 @@
if (sender === '') { if (sender === '') {
return true; return true;
} }
this.model.createMessage($message, $delay); this.model.createMessage($message, $delay, message);
if (sender !== this.model.get('nick')) { if (sender !== this.model.get('nick')) {
// We only emit an event if it's not our own message // We only emit an event if it's not our own message
converse.emit('message', message); converse.emit('message', message);
......
...@@ -112,7 +112,7 @@ ...@@ -112,7 +112,7 @@
!(this.isOTRMessage($message) && !_.contains([UNVERIFIED, VERIFIED], this.get('otr_status'))); !(this.isOTRMessage($message) && !_.contains([UNVERIFIED, VERIFIED], this.get('otr_status')));
}, },
createMessage: function ($message, $delay, archive_id) { createMessage: function ($message, $delay, original_stanza) {
var converse = this._super.converse, var converse = this._super.converse,
$body = $message.children('body'), $body = $message.children('body'),
text = ($body.length > 0 ? $body.text() : undefined); text = ($body.length > 0 ? $body.text() : undefined);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment