123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- Integrations = new Mongo.Collection('integrations');
- Integrations.attachSchema(new SimpleSchema({
- enabled: {
- type: Boolean,
- defaultValue: true,
- },
- title: {
- type: String,
- optional: true,
- },
- type: {
- type: String,
- },
- url: { // URL validation regex (https://mathiasbynens.be/demo/url-regex)
- type: String,
- },
- token: {
- type: String,
- optional: true,
- },
- boardId: {
- type: String,
- },
- createdAt: {
- type: Date,
- denyUpdate: false,
- autoValue() { // eslint-disable-line consistent-return
- if (this.isInsert) {
- return new Date();
- } else {
- this.unset();
- }
- },
- },
- userId: {
- type: String,
- autoValue() { // eslint-disable-line consistent-return
- if (this.isInsert || this.isUpdate) {
- return this.userId;
- }
- },
- },
- }));
- Integrations.allow({
- insert(userId, doc) {
- return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
- },
- update(userId, doc) {
- return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
- },
- fetch: ['boardId'],
- });
|