Usernames should be able to include dots (.)

This commit is contained in:
Jonas Oberg 2017-08-25 08:22:20 +02:00
parent 1b40c42cab
commit fe5ea60847
3 changed files with 4 additions and 4 deletions

View file

@ -180,7 +180,7 @@ BlazeComponent.extendComponent({
$textarea.escapeableTextComplete([ $textarea.escapeableTextComplete([
// User mentions // User mentions
{ {
match: /\B@(\w*)$/, match: /\B@([\w.]*)$/,
search(term, callback) { search(term, callback) {
const currentBoard = Boards.findOne(Session.get('currentBoard')); const currentBoard = Boards.findOne(Session.get('currentBoard'));
callback($.map(currentBoard.activeMembers(), (member) => { callback($.map(currentBoard.activeMembers(), (member) => {

View file

@ -25,7 +25,7 @@ Template.editor.onRendered(() => {
// User mentions // User mentions
{ {
match: /\B@(\w*)$/, match: /\B@([\w.]*)$/,
search(term, callback) { search(term, callback) {
const currentBoard = Boards.findOne(Session.get('currentBoard')); const currentBoard = Boards.findOne(Session.get('currentBoard'));
callback(currentBoard.activeMembers().map((member) => { callback(currentBoard.activeMembers().map((member) => {
@ -60,7 +60,7 @@ Blaze.Template.registerHelper('mentions', new Template('mentions', function() {
member.username = Users.findOne(member.userId).username; member.username = Users.findOne(member.userId).username;
return member; return member;
}); });
const mentionRegex = /\B@(\w*)/gi; const mentionRegex = /\B@([\w.]*)/gi;
let content = Blaze.toHTML(view.templateContentBlock); let content = Blaze.toHTML(view.templateContentBlock);
let currentMention; let currentMention;

View file

@ -188,7 +188,7 @@ if (isSandstorm && Meteor.isServer) {
caption = { defaultText: comment.text }; caption = { defaultText: comment.text };
const activeMembers = const activeMembers =
_.pluck(Boards.findOne(sandstormBoard._id).activeMembers(), 'userId'); _.pluck(Boards.findOne(sandstormBoard._id).activeMembers(), 'userId');
(comment.text.match(/\B@(\w*)/g) || []).forEach((username) => { (comment.text.match(/\B@([\w.]*)/g) || []).forEach((username) => {
const user = Meteor.users.findOne({ username: username.slice(1)}); const user = Meteor.users.findOne({ username: username.slice(1)});
if (user && activeMembers.indexOf(user._id) !== -1) { if (user && activeMembers.indexOf(user._id) !== -1) {
mentionedUser(user._id); mentionedUser(user._id);