summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client/components/boards/boardBody.jade2
-rw-r--r--client/components/boards/boardBody.js6
-rw-r--r--models/users.js5
3 files changed, 12 insertions, 1 deletions
diff --git a/client/components/boards/boardBody.jade b/client/components/boards/boardBody.jade
index 288590da..fe10c921 100644
--- a/client/components/boards/boardBody.jade
+++ b/client/components/boards/boardBody.jade
@@ -25,7 +25,7 @@ template(name="boardBody")
+list(this)
if currentCardIsInThisList
+cardDetails(currentCard)
- if currentUser.isBoardMember
+ if canSeeAddList
+addListForm
template(name="addListForm")
diff --git a/client/components/boards/boardBody.js b/client/components/boards/boardBody.js
index 4703bc91..370db13b 100644
--- a/client/components/boards/boardBody.js
+++ b/client/components/boards/boardBody.js
@@ -204,3 +204,9 @@ BlazeComponent.extendComponent({
}];
},
}).register('addListForm');
+
+Template.boardBody.helpers({
+ canSeeAddList() {
+ return Meteor.user() && Meteor.user().isBoardMember() && !Meteor.user().isCommentOnly();
+ },
+});
diff --git a/models/users.js b/models/users.js
index 06b84fa0..3073e759 100644
--- a/models/users.js
+++ b/models/users.js
@@ -117,6 +117,11 @@ if (Meteor.isClient) {
return board && board.hasMember(this._id);
},
+ isCommentOnly() {
+ const board = Boards.findOne(Session.get('currentBoard'));
+ return board && board.hasCommentOnly(this._id);
+ },
+
isBoardAdmin() {
const board = Boards.findOne(Session.get('currentBoard'));
return board && board.hasAdmin(this._id);