summaryrefslogtreecommitdiffstats
path: root/client/components/boards/helpers.js
diff options
context:
space:
mode:
Diffstat (limited to 'client/components/boards/helpers.js')
-rw-r--r--client/components/boards/helpers.js45
1 files changed, 45 insertions, 0 deletions
diff --git a/client/components/boards/helpers.js b/client/components/boards/helpers.js
new file mode 100644
index 00000000..05be987d
--- /dev/null
+++ b/client/components/boards/helpers.js
@@ -0,0 +1,45 @@
+Template.boards.helpers({
+ boards: function() {
+ return Boards.find({}, {
+ sort: ['title']
+ });
+ },
+
+ starredBoards: function() {
+ var cursor = Boards.find({
+ _id: { $in: Meteor.user().profile.starredBoards || [] }
+ }, {
+ sort: ['title']
+ });
+ return cursor.count() === 0 ? null : cursor;
+ },
+
+ isStarred: function() {
+ var user = Meteor.user();
+ return user && user.hasStarred(this._id);
+ }
+});
+
+Template.boardChangePermissionPopup.helpers({
+ check: function(perm) {
+ return this.permission === perm;
+ }
+});
+
+Template.boardChangeColorPopup.helpers({
+ backgroundColors: function() {
+ return Boards.simpleSchema()._schema.color.allowedValues;
+ },
+
+ isSelected: function() {
+ var currentBoard = Boards.findOne(Session.get('currentBoard'));
+ return currentBoard.color === this.toString();
+ }
+});
+
+Blaze.registerHelper('currentBoard', function() {
+ var boardId = Session.get('currentBoard');
+ if (boardId) {
+ return Boards.findOne(boardId);
+ }
+});