|
@@ -180,7 +180,7 @@ BlazeComponent.extendComponent({
|
|
|
integration,
|
|
|
'CardSelected',
|
|
|
params,
|
|
|
- () => {},
|
|
|
+ () => { },
|
|
|
);
|
|
|
});
|
|
|
}
|
|
@@ -541,8 +541,8 @@ BlazeComponent.extendComponent({
|
|
|
}).register('exportCardPopup');
|
|
|
|
|
|
// only allow number input
|
|
|
-Template.editCardSortOrderForm.onRendered(function() {
|
|
|
- this.$('input').on("keypress paste", function(event) {
|
|
|
+Template.editCardSortOrderForm.onRendered(function () {
|
|
|
+ this.$('input').on("keypress paste", function (event) {
|
|
|
let keyCode = event.keyCode;
|
|
|
let charCode = String.fromCharCode(keyCode);
|
|
|
let regex = new RegExp('[-0-9.]');
|
|
@@ -667,6 +667,40 @@ Template.editCardTitleForm.onRendered(function () {
|
|
|
autosize(this.$('.js-edit-card-title'));
|
|
|
});
|
|
|
|
|
|
+Template.cardMembersPopup.onCreated(function () {
|
|
|
+ const members = Boards.findOne(Session.get('currentBoard')).activeMembers();
|
|
|
+ this.members = new ReactiveVar(members);
|
|
|
+});
|
|
|
+
|
|
|
+Template.cardMembersPopup.events({
|
|
|
+ 'keyup .card-members-filter'(event) {
|
|
|
+ const members = filterMembers(event.target.value);
|
|
|
+ Template.instance().members.set(members);
|
|
|
+ }
|
|
|
+});
|
|
|
+
|
|
|
+Template.cardMembersPopup.helpers({
|
|
|
+ members() {
|
|
|
+ return Template.instance().members.get();
|
|
|
+ },
|
|
|
+});
|
|
|
+
|
|
|
+const filterMembers = (filterTerm) => {
|
|
|
+ let members = Boards.findOne(Session.get('currentBoard')).activeMembers();
|
|
|
+
|
|
|
+ if (filterTerm) {
|
|
|
+ members = members
|
|
|
+ .map(member => ({
|
|
|
+ member,
|
|
|
+ user: Users.findOne(member.userId)
|
|
|
+ }))
|
|
|
+ .filter(({ user }) =>
|
|
|
+ user.profile.fullname.toLowerCase().indexOf(filterTerm.toLowerCase()) !== -1)
|
|
|
+ .map(({ member }) => member);
|
|
|
+ }
|
|
|
+ return members;
|
|
|
+}
|
|
|
+
|
|
|
Template.editCardTitleForm.events({
|
|
|
'keydown .js-edit-card-title'(event) {
|
|
|
// If enter key was pressed, submit the data
|
|
@@ -1019,9 +1053,8 @@ BlazeComponent.extendComponent({
|
|
|
// https://github.com/wekan/wekan/issues/2785
|
|
|
const message = `${TAPi18n.__(
|
|
|
'delete-linked-card-before-this-card',
|
|
|
- )} linkedId: ${
|
|
|
- this._id
|
|
|
- } at client/components/cards/cardDetails.js and https://github.com/wekan/wekan/issues/2785`;
|
|
|
+ )} linkedId: ${this._id
|
|
|
+ } at client/components/cards/cardDetails.js and https://github.com/wekan/wekan/issues/2785`;
|
|
|
alert(message);
|
|
|
}
|
|
|
Utils.goBoardId(this.boardId);
|
|
@@ -1589,6 +1622,11 @@ EscapeActions.register(
|
|
|
},
|
|
|
);
|
|
|
|
|
|
+Template.cardAssigneesPopup.onCreated(function () {
|
|
|
+ const members = Boards.findOne(Session.get('currentBoard')).activeMembers();
|
|
|
+ this.members = new ReactiveVar(members);
|
|
|
+});
|
|
|
+
|
|
|
Template.cardAssigneesPopup.events({
|
|
|
'click .js-select-assignee'(event) {
|
|
|
const card = Cards.findOne(Session.get('currentCard'));
|
|
@@ -1596,6 +1634,10 @@ Template.cardAssigneesPopup.events({
|
|
|
card.toggleAssignee(assigneeId);
|
|
|
event.preventDefault();
|
|
|
},
|
|
|
+ 'keyup .card-assignees-filter'(event) {
|
|
|
+ const members = filterMembers(event.target.value);
|
|
|
+ Template.instance().members.set(members);
|
|
|
+ },
|
|
|
});
|
|
|
|
|
|
Template.cardAssigneesPopup.helpers({
|
|
@@ -1606,6 +1648,10 @@ Template.cardAssigneesPopup.helpers({
|
|
|
return _.contains(cardAssignees, this.userId);
|
|
|
},
|
|
|
|
|
|
+ members() {
|
|
|
+ return Template.instance().members.get();
|
|
|
+ },
|
|
|
+
|
|
|
user() {
|
|
|
return Users.findOne(this.userId);
|
|
|
},
|