summaryrefslogtreecommitdiffstats
path: root/models/rules.js
diff options
context:
space:
mode:
Diffstat (limited to 'models/rules.js')
-rw-r--r--models/rules.js31
1 files changed, 17 insertions, 14 deletions
diff --git a/models/rules.js b/models/rules.js
index 271e6b52..fe6b04cb 100644
--- a/models/rules.js
+++ b/models/rules.js
@@ -3,15 +3,19 @@ Rules = new Mongo.Collection('rules');
Rules.attachSchema(new SimpleSchema({
title: {
type: String,
- optional: true,
+ optional: false,
},
triggerId: {
type: String,
- optional: true,
+ optional: false,
},
actionId: {
type: String,
- optional: true,
+ optional: false,
+ },
+ boardId: {
+ type: String,
+ optional: false,
},
}));
@@ -25,22 +29,21 @@ Rules.helpers({
getAction(){
return Actions.findOne({_id:this.actionId});
},
+ getTrigger(){
+ return Triggers.findOne({_id:this.triggerId});
+ }
});
Rules.allow({
- update: function () {
- // add custom authentication code here
- return true;
+ insert(userId, doc) {
+ return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
},
- remove: function () {
- // add custom authentication code here
- return true;
- },
- insert: function () {
- // add custom authentication code here
- return true;
+ update(userId, doc) {
+ return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
},
+ remove(userId, doc) {
+ return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
+ }
});
-