summaryrefslogtreecommitdiffstats
path: root/models
diff options
context:
space:
mode:
authorSam X. Chen <sam.xi.chen@gmail.com>2019-08-17 19:17:57 -0400
committerSam X. Chen <sam.xi.chen@gmail.com>2019-08-17 19:17:57 -0400
commit3f0600fed70512f87dc20fe039695d1681a73d39 (patch)
treecaf01293d663d18797d6834e22e503e2c6d9019a /models
parentf3147af2f75701b08c5464f8a7a2ab10a3d7d7a5 (diff)
downloadwekan-3f0600fed70512f87dc20fe039695d1681a73d39.tar.gz
wekan-3f0600fed70512f87dc20fe039695d1681a73d39.tar.bz2
wekan-3f0600fed70512f87dc20fe039695d1681a73d39.zip
Add Feature: enable two-way webhooks - stage one
Diffstat (limited to 'models')
-rw-r--r--models/integrations.js18
-rw-r--r--models/settings.js1
2 files changed, 15 insertions, 4 deletions
diff --git a/models/integrations.js b/models/integrations.js
index 0b2e08c6..0313c959 100644
--- a/models/integrations.js
+++ b/models/integrations.js
@@ -88,16 +88,26 @@ Integrations.attachSchema(
},
}),
);
-
+Integrations.Const = {
+ GLOBAL_WEBHOOK_ID: '_global',
+ WEBHOOK_TYPES: ['outgoing-webhooks', 'bidirectional-webhooks'],
+};
+const permissionHelper = {
+ allow(userId, doc) {
+ const user = Users.findOne(userId);
+ const isAdmin = user && Meteor.user().isAdmin;
+ return isAdmin || allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
+ },
+};
Integrations.allow({
insert(userId, doc) {
- return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
+ return permissionHelper.allow(userId, doc);
},
update(userId, doc) {
- return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
+ return permissionHelper.allow(userId, doc);
},
remove(userId, doc) {
- return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
+ return permissionHelper.allow(userId, doc);
},
fetch: ['boardId'],
});
diff --git a/models/settings.js b/models/settings.js
index 4a0359d5..80c2d8e0 100644
--- a/models/settings.js
+++ b/models/settings.js
@@ -147,6 +147,7 @@ if (Meteor.isServer) {
}:${doc.mailServer.port}/`;
}
Accounts.emailTemplates.from = doc.mailServer.from;
+ console.log('Settings saved:', Accounts.emailTemplates);
}
});