summaryrefslogtreecommitdiffstats
path: root/client/components/main/editor.js
diff options
context:
space:
mode:
Diffstat (limited to 'client/components/main/editor.js')
-rw-r--r--client/components/main/editor.js22
1 files changed, 12 insertions, 10 deletions
diff --git a/client/components/main/editor.js b/client/components/main/editor.js
index a30a5e1d..bf92e9a0 100644
--- a/client/components/main/editor.js
+++ b/client/components/main/editor.js
@@ -61,18 +61,20 @@ Blaze.Template.registerHelper('mentions', new Template('mentions', function() {
const mentionRegex = /\B@(\w*)/gi;
let content = Blaze.toHTML(view.templateContentBlock);
- let currentMention, knowedUser, linkClass, linkValue, link;
- while (Boolean(currentMention = mentionRegex.exec(content))) {
-
- knowedUser = _.findWhere(knowedUsers, { username: currentMention[1] });
- if (!knowedUser)
+ let currentMention;
+ while ((currentMention = mentionRegex.exec(content)) !== null) {
+ const [fullMention, username] = currentMention;
+ const knowedUser = _.findWhere(knowedUsers, { username });
+ if (!knowedUser) {
continue;
+ }
- linkValue = [' ', at, knowedUser.username];
- linkClass = 'atMention js-open-member';
- if (knowedUser.userId === Meteor.userId())
+ const linkValue = [' ', at, knowedUser.username];
+ let linkClass = 'atMention js-open-member';
+ if (knowedUser.userId === Meteor.userId()) {
linkClass += ' me';
- link = HTML.A({
+ }
+ const link = HTML.A({
'class': linkClass,
// XXX Hack. Since we stringify this render function result below with
// `Blaze.toHTML` we can't rely on blaze data contexts to pass the
@@ -81,7 +83,7 @@ Blaze.Template.registerHelper('mentions', new Template('mentions', function() {
'data-userId': knowedUser.userId,
}, linkValue);
- content = content.replace(currentMention[0], Blaze.toHTML(link));
+ content = content.replace(fullMention, Blaze.toHTML(link));
}
return HTML.Raw(content);