Fix a bug that emoticon of '<3' and '>:)' cannot be displayed correctly in the message
This commit is contained in:
parent
40bc3ec55d
commit
f0bb123e7f
@ -60,6 +60,7 @@
|
||||
if (this.length > 0) {
|
||||
this.each(function(i, obj) {
|
||||
var text = $(obj).html();
|
||||
text = text.replace(/>:\)/g, '<span class="emoticon icon-evil"></span>');
|
||||
text = text.replace(/:\)/g, '<span class="emoticon icon-smiley"></span>');
|
||||
text = text.replace(/:\-\)/g, '<span class="emoticon icon-smiley"></span>');
|
||||
text = text.replace(/;\)/g, '<span class="emoticon icon-wink"></span>');
|
||||
@ -71,7 +72,6 @@
|
||||
text = text.replace(/:p/g, '<span class="emoticon icon-tongue"></span>');
|
||||
text = text.replace(/:\-p/g, '<span class="emoticon icon-tongue"></span>');
|
||||
text = text.replace(/8\)/g, '<span class="emoticon icon-cool"></span>');
|
||||
text = text.replace(/>:\)/g, '<span class="emoticon icon-evil"></span>');
|
||||
text = text.replace(/:S/g, '<span class="emoticon icon-confused"></span>');
|
||||
text = text.replace(/:\\/g, '<span class="emoticon icon-wondering"></span>');
|
||||
text = text.replace(/:\/ /g, '<span class="emoticon icon-wondering"></span>');
|
||||
@ -82,7 +82,7 @@
|
||||
text = text.replace(/:\-O/g, '<span class="emoticon icon-shocked"></span>');
|
||||
text = text.replace(/\=\-O/g, '<span class="emoticon icon-shocked"></span>');
|
||||
text = text.replace(/\(\^.\^\)b/g, '<span class="emoticon icon-thumbs-up"></span>');
|
||||
text = text.replace(/<3/g, '<span class="emoticon icon-heart"></span>');
|
||||
text = text.replace(/<3/g, '<span class="emoticon icon-heart"></span>');
|
||||
$(obj).html(text);
|
||||
});
|
||||
}
|
||||
|
@ -584,6 +584,28 @@
|
||||
expect(msg.text()).toEqual(message);
|
||||
expect(msg.html()).toEqual('This message contains a hyperlink: <a target="_blank" href="http://www.opkode.com">www.opkode.com</a>');
|
||||
}, converse));
|
||||
|
||||
it("should display emoticons correctly", $.proxy(function () {
|
||||
var contact_jid = mock.cur_names[0].replace(' ','.').toLowerCase() + '@localhost';
|
||||
utils.openChatBoxFor(contact_jid);
|
||||
var view = this.chatboxviews.get(contact_jid);
|
||||
var messages = [':)', ';)', ':D', ':P', '8)', '>:)', ':S', ':\\', '>:(', ':(', ':O', '(^.^)b', '<3'];
|
||||
var emoticons = ['<span class="emoticon icon-smiley"></span>', '<span class="emoticon icon-wink"></span>',
|
||||
'<span class="emoticon icon-grin"></span>', '<span class="emoticon icon-tongue"></span>',
|
||||
'<span class="emoticon icon-cool"></span>', '<span class="emoticon icon-evil"></span>',
|
||||
'<span class="emoticon icon-confused"></span>', '<span class="emoticon icon-wondering"></span>',
|
||||
'<span class="emoticon icon-angry"></span>', '<span class="emoticon icon-sad"></span>',
|
||||
'<span class="emoticon icon-shocked"></span>', '<span class="emoticon icon-thumbs-up"></span>',
|
||||
'<span class="emoticon icon-heart"></span>'];
|
||||
spyOn(view, 'sendMessage').andCallThrough();
|
||||
for (var i = 0; i < messages.length; i++) {
|
||||
var message = messages[i];
|
||||
utils.sendMessage(view, message);
|
||||
expect(view.sendMessage).toHaveBeenCalled();
|
||||
var msg = view.$el.find('.chat-content').find('.chat-message').last().find('.chat-message-content');
|
||||
expect(msg.html()).toEqual(emoticons[i]);
|
||||
}
|
||||
}, converse));
|
||||
|
||||
it("will have properly escaped URLs", $.proxy(function () {
|
||||
var contact_jid = mock.cur_names[0].replace(' ','.').toLowerCase() + '@localhost';
|
||||
|
Loading…
Reference in New Issue
Block a user