diff --git a/app/assets/javascripts/backbone/plugins/emojis.js.coffee.erb b/app/assets/javascripts/backbone/plugins/emojis.js.coffee.erb index a2ba4298..6a51e90b 100644 --- a/app/assets/javascripts/backbone/plugins/emojis.js.coffee.erb +++ b/app/assets/javascripts/backbone/plugins/emojis.js.coffee.erb @@ -13,7 +13,7 @@ class Kandan.Plugins.Emojis } @attachToChatbox: -> - $(".chat-input").atwho ':([a-zA-Z0-9_+-]+)', + $(".chat-input").atwho '(?:^|\\s):', data: @emojis tpl: @options.atWhoTemplate limit: 10 diff --git a/app/assets/javascripts/backbone/plugins/mentions.coffee b/app/assets/javascripts/backbone/plugins/mentions.coffee index 1cdee879..7cade9f3 100644 --- a/app/assets/javascripts/backbone/plugins/mentions.coffee +++ b/app/assets/javascripts/backbone/plugins/mentions.coffee @@ -7,19 +7,19 @@ class Kandan.Plugins.Mentions template: _.template '''<%= mention %>''' @init: ()-> - Kandan.Data.ActiveUsers.registerCallback "change", (data)=> + Kandan.Data.ActiveUsers.registerCallback "change", (data)=> @initUsersMentions(data.extra.active_users) Kandan.Modifiers.register @options.regex, (message, state) => for mention in message.content.match(@options.regex) - replacement = @options.template({mention: mention}) - message.content = message.content.replace(mention, replacement) + replacement = @options.template({mention: mention}) + message.content = message.content.replace(mention, replacement) + + return Kandan.Helpers.Activities.buildFromMessageTemplate(message) - return Kandan.Helpers.Activities.buildFromMessageTemplate(message) - @initUsersMentions: (activeUsers)-> - users = _.map activeUsers, (user)-> - user.username - users.push "all" - $(".chat-input").atwho("@", {data: users}) - return + users = _.map activeUsers, (user)-> + user.username + users.push "all" + $(".chat-input").atwho("(?:^|\\s)@", {data: users}) + return