浏览代码

Add method hook for adding more attrs to send to the message template

JC Brand 9 年之前
父节点
当前提交
d6ef4fc5ca
共有 1 个文件被更改,包括 17 次插入9 次删除
  1. 17 9
      src/converse-chatview.js

+ 17 - 9
src/converse-chatview.js

@@ -254,6 +254,12 @@
                         )(this.renderMessage(attrs));
                 },
 
+                getExtraMessageTemplateAttributes: function (attrs) {
+                    // Provides a hook for sending more attributes to the
+                    // message template.
+                    return {};
+                },
+
                 renderMessage: function (attrs) {
                     /* Renders a chat message based on the passed in attributes.
                      *
@@ -286,15 +292,17 @@
                         // are mentioned.
                         extra_classes += ' mentioned';
                     }
-                    return $(template({
-                            msgid: attrs.msgid,
-                            'sender': attrs.sender,
-                            'time': msg_time.format('hh:mm'),
-                            'isodate': msg_time.format(),
-                            'username': username,
-                            'message': '',
-                            'extra_classes': extra_classes
-                        })).children('.chat-msg-content').first().text(text)
+                    return $(template(
+                            _.extend(this.getExtraMessageTemplateAttributes(attrs), {
+                                'msgid': attrs.msgid,
+                                'sender': attrs.sender,
+                                'time': msg_time.format('hh:mm'),
+                                'isodate': msg_time.format(),
+                                'username': username,
+                                'message': '',
+                                'extra_classes': extra_classes
+                            })
+                        )).children('.chat-msg-content').first().text(text)
                             .addHyperlinks()
                             .addEmoticons(converse.visible_toolbar_buttons.emoticons).parent();
                 },