function handleMessage(msg) {
var html = '';
- var sender = Strophe.getResourceFromJid(msg.getAttribute('from'));
+ var sender = Strophe.xmlescape(Strophe.getResourceFromJid(msg.getAttribute('from')));
var type = msg.getAttribute('type');
- var body = Strophe.getText(msg.getElementsByTagName('body')[0]);
+ var body = Strophe.xmlescape(Strophe.getText(msg.getElementsByTagName('body')[0]));
html += '<div class="msg">';
if (sender) {
- html += '<span class="sender">';
- html += sender;
- html += ':</span> ';
- html += body + '</div>';
+ if (body.search(/^\/me/) == 0) {
+ body = body.replace(/^\/me/, sender);
+ html += '<span class="sender">';
+ html += body;
+ html += '</span></div>';
+ } else {
+ html += '<span class="sender">';
+ html += sender;
+ html += ':</span> ';
+ html += body + '</div>';
+ }
} else {
html += '<span class="server">';
html += body + '</span></div>';