diff options
Diffstat (limited to 'models/rules.js')
-rw-r--r-- | models/rules.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/models/rules.js b/models/rules.js new file mode 100644 index 00000000..fe6b04cb --- /dev/null +++ b/models/rules.js @@ -0,0 +1,49 @@ +Rules = new Mongo.Collection('rules'); + +Rules.attachSchema(new SimpleSchema({ + title: { + type: String, + optional: false, + }, + triggerId: { + type: String, + optional: false, + }, + actionId: { + type: String, + optional: false, + }, + boardId: { + type: String, + optional: false, + }, +})); + +Rules.mutations({ + rename(description) { + return { $set: { description } }; + }, +}); + +Rules.helpers({ + getAction(){ + return Actions.findOne({_id:this.actionId}); + }, + getTrigger(){ + return Triggers.findOne({_id:this.triggerId}); + } +}); + + + +Rules.allow({ + insert(userId, doc) { + return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId)); + }, + update(userId, doc) { + return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId)); + }, + remove(userId, doc) { + return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId)); + } +}); |