diff options
author | Lauri Ojansivu <x@xet7.org> | 2018-09-17 12:49:43 +0300 |
---|---|---|
committer | Lauri Ojansivu <x@xet7.org> | 2018-09-17 12:49:43 +0300 |
commit | 5445955a774f6a9f29ee48109913ea3c4a9db33f (patch) | |
tree | 7b3bee4a7ce6d1053ca6ce0395c267f9ce3a45d8 /models/cards.js | |
parent | 338e18870f937359c50c9be8b2a0fd96e0b4e141 (diff) | |
download | wekan-5445955a774f6a9f29ee48109913ea3c4a9db33f.tar.gz wekan-5445955a774f6a9f29ee48109913ea3c4a9db33f.tar.bz2 wekan-5445955a774f6a9f29ee48109913ea3c4a9db33f.zip |
- Revert IFTTT.
Thanks to xet7 !
Diffstat (limited to 'models/cards.js')
-rw-r--r-- | models/cards.js | 404 |
1 files changed, 52 insertions, 352 deletions
diff --git a/models/cards.js b/models/cards.js index 346b4bdd..73b9a023 100644 --- a/models/cards.js +++ b/models/cards.js @@ -276,22 +276,14 @@ Cards.helpers({ return Cards.find({ parentId: this._id, archived: false, - }, { - sort: { - sort: 1, - }, - }); + }, {sort: { sort: 1 } }); }, allSubtasks() { return Cards.find({ parentId: this._id, archived: false, - }, { - sort: { - sort: 1, - }, - }); + }, {sort: { sort: 1 } }); }, subtasksCount() { @@ -304,8 +296,7 @@ Cards.helpers({ subtasksFinishedCount() { return Cards.find({ parentId: this._id, - archived: true, - }).count(); + archived: true}).count(); }, subtasksFinished() { @@ -337,9 +328,12 @@ Cards.helpers({ }); //search for "True Value" which is for DropDowns other then the Value (which is the id) let trueValue = customField.value; - if (definition.settings.dropdownItems && definition.settings.dropdownItems.length > 0) { - for (let i = 0; i < definition.settings.dropdownItems.length; i++) { - if (definition.settings.dropdownItems[i]._id === customField.value) { + if (definition.settings.dropdownItems && definition.settings.dropdownItems.length > 0) + { + for (let i = 0; i < definition.settings.dropdownItems.length; i++) + { + if (definition.settings.dropdownItems[i]._id === customField.value) + { trueValue = definition.settings.dropdownItems[i].name; } } @@ -364,10 +358,8 @@ Cards.helpers({ }, canBeRestored() { - const list = Lists.findOne({ - _id: this.listId, - }); - if (!list.getWipLimit('soft') && list.getWipLimit('enabled') && list.getWipLimit('value') === list.cards().count()) { + const list = Lists.findOne({_id: this.listId}); + if(!list.getWipLimit('soft') && list.getWipLimit('enabled') && list.getWipLimit('value') === list.cards().count()){ return false; } return true; @@ -432,7 +424,7 @@ Cards.helpers({ }, parentString(sep) { - return this.parentList().map(function(elem) { + return this.parentList().map(function(elem){ return elem.title; }).join(sep); }, @@ -834,65 +826,19 @@ Cards.helpers({ Cards.mutations({ applyToChildren(funct) { - Cards.find({ - parentId: this._id, - }).forEach((card) => { + Cards.find({ parentId: this._id }).forEach((card) => { funct(card); }); }, archive() { - this.applyToChildren((card) => { - return card.archive(); - }); - return { - $set: { - archived: true, - }, - }; + this.applyToChildren((card) => { return card.archive(); }); + return {$set: {archived: true}}; }, restore() { - this.applyToChildren((card) => { - return card.restore(); - }); - return { - $set: { - archived: false, - }, - }; - }, - - setTitle(title) { - return { - $set: { - title, - }, - }; - }, - - setDescription(description) { - return { - $set: { - description, - }, - }; - }, - - setRequestedBy(requestedBy) { - return { - $set: { - requestedBy, - }, - }; - }, - - setAssignedBy(assignedBy) { - return { - $set: { - assignedBy, - }, - }; + this.applyToChildren((card) => { return card.restore(); }); + return {$set: {archived: false}}; }, move(swimlaneId, listId, sortIndex) { @@ -904,25 +850,15 @@ Cards.mutations({ sort: sortIndex, }; - return { - $set: mutatedFields, - }; + return {$set: mutatedFields}; }, addLabel(labelId) { - return { - $addToSet: { - labelIds: labelId, - }, - }; + return {$addToSet: {labelIds: labelId}}; }, removeLabel(labelId) { - return { - $pull: { - labelIds: labelId, - }, - }; + return {$pull: {labelIds: labelId}}; }, toggleLabel(labelId) { @@ -933,49 +869,12 @@ Cards.mutations({ } }, - assignMember(memberId) { - return { - $addToSet: { - members: memberId, - }, - }; - }, - - unassignMember(memberId) { - return { - $pull: { - members: memberId, - }, - }; - }, - - toggleMember(memberId) { - if (this.members && this.members.indexOf(memberId) > -1) { - return this.unassignMember(memberId); - } else { - return this.assignMember(memberId); - } - }, - assignCustomField(customFieldId) { - return { - $addToSet: { - customFields: { - _id: customFieldId, - value: null, - }, - }, - }; + return {$addToSet: {customFields: {_id: customFieldId, value: null}}}; }, unassignCustomField(customFieldId) { - return { - $pull: { - customFields: { - _id: customFieldId, - }, - }, - }; + return {$pull: {customFields: {_id: customFieldId}}}; }, toggleCustomField(customFieldId) { @@ -990,9 +889,7 @@ Cards.mutations({ // todo const index = this.customFieldIndex(customFieldId); if (index > -1) { - const update = { - $set: {}, - }; + const update = {$set: {}}; update.$set[`customFields.${index}.value`] = value; return update; } @@ -1002,119 +899,19 @@ Cards.mutations({ }, setCover(coverId) { - return { - $set: { - coverId, - }, - }; + return {$set: {coverId}}; }, unsetCover() { - return { - $unset: { - coverId: '', - }, - }; - }, - - setReceived(receivedAt) { - return { - $set: { - receivedAt, - }, - }; - }, - - unsetReceived() { - return { - $unset: { - receivedAt: '', - }, - }; - }, - - setStart(startAt) { - return { - $set: { - startAt, - }, - }; - }, - - unsetStart() { - return { - $unset: { - startAt: '', - }, - }; - }, - - setDue(dueAt) { - return { - $set: { - dueAt, - }, - }; - }, - - unsetDue() { - return { - $unset: { - dueAt: '', - }, - }; - }, - - setEnd(endAt) { - return { - $set: { - endAt, - }, - }; - }, - - unsetEnd() { - return { - $unset: { - endAt: '', - }, - }; - }, - - setOvertime(isOvertime) { - return { - $set: { - isOvertime, - }, - }; - }, - - setSpentTime(spentTime) { - return { - $set: { - spentTime, - }, - }; - }, - - unsetSpentTime() { - return { - $unset: { - spentTime: '', - isOvertime: false, - }, - }; + return {$unset: {coverId: ''}}; }, setParentId(parentId) { - return { - $set: { - parentId, - }, - }; + return {$set: {parentId}}; }, }); + //FUNCTIONS FOR creation of Activities function cardMove(userId, doc, fieldNames, oldListId, oldSwimlaneId) { @@ -1124,7 +921,6 @@ function cardMove(userId, doc, fieldNames, oldListId, oldSwimlaneId) { userId, oldListId, activityType: 'moveCard', - listName: Lists.findOne(doc.listId).title, listId: doc.listId, boardId: doc.boardId, cardId: doc._id, @@ -1140,7 +936,6 @@ function cardState(userId, doc, fieldNames) { Activities.insert({ userId, activityType: 'archivedCard', - listName: Lists.findOne(doc.listId).title, boardId: doc.boardId, listId: doc.listId, cardId: doc._id, @@ -1150,7 +945,6 @@ function cardState(userId, doc, fieldNames) { userId, activityType: 'restoredCard', boardId: doc.boardId, - listName: Lists.findOne(doc.listId).title, listId: doc.listId, cardId: doc._id, }); @@ -1192,47 +986,11 @@ function cardMembers(userId, doc, fieldNames, modifier) { } } -function cardLabels(userId, doc, fieldNames, modifier) { - if (!_.contains(fieldNames, 'labelIds')) - return; - let labelId; - // Say hello to the new label - if (modifier.$addToSet && modifier.$addToSet.labelIds) { - labelId = modifier.$addToSet.labelIds; - if (!_.contains(doc.labelIds, labelId)) { - const act = { - userId, - labelId, - activityType: 'addedLabel', - boardId: doc.boardId, - cardId: doc._id, - }; - Activities.insert(act); - } - } - - // Say goodbye to the label - if (modifier.$pull && modifier.$pull.labelIds) { - labelId = modifier.$pull.labelIds; - // Check that the former member is member of the card - if (_.contains(doc.labelIds, labelId)) { - Activities.insert({ - userId, - labelId, - activityType: 'removedLabel', - boardId: doc.boardId, - cardId: doc._id, - }); - } - } -} - function cardCreation(userId, doc) { Activities.insert({ userId, activityType: 'createCard', boardId: doc.boardId, - listName: Lists.findOne(doc.listId).title, listId: doc.listId, cardId: doc._id, swimlaneId: doc.swimlaneId, @@ -1257,6 +1015,7 @@ function cardRemover(userId, doc) { }); } + if (Meteor.isServer) { // Cards are often fetched within a board, so we create an index to make these // queries more efficient. @@ -1280,7 +1039,7 @@ if (Meteor.isServer) { }); //New activity for card moves - Cards.after.update(function(userId, doc, fieldNames) { + Cards.after.update(function (userId, doc, fieldNames) { const oldListId = this.previous.listId; const oldSwimlaneId = this.previous.swimlaneId; cardMove(userId, doc, fieldNames, oldListId, oldSwimlaneId); @@ -1291,11 +1050,6 @@ if (Meteor.isServer) { cardMembers(userId, doc, fieldNames, modifier); }); - // Add a new activity if we add or remove a label to the card - Cards.before.update((userId, doc, fieldNames, modifier) => { - cardLabels(userId, doc, fieldNames, modifier); - }); - // Remove all activities associated with a card if we remove the card // Remove also card_comments / checklists / attachments Cards.after.remove((userId, doc) => { @@ -1304,17 +1058,13 @@ if (Meteor.isServer) { } //LISTS REST API if (Meteor.isServer) { - JsonRoutes.add('GET', '/api/boards/:boardId/lists/:listId/cards', function(req, res) { + JsonRoutes.add('GET', '/api/boards/:boardId/lists/:listId/cards', function (req, res) { const paramBoardId = req.params.boardId; const paramListId = req.params.listId; Authentication.checkBoardAccess(req.userId, paramBoardId); JsonRoutes.sendResult(res, { code: 200, - data: Cards.find({ - boardId: paramBoardId, - listId: paramListId, - archived: false, - }).map(function(doc) { + data: Cards.find({boardId: paramBoardId, listId: paramListId, archived: false}).map(function (doc) { return { _id: doc._id, title: doc.title, @@ -1324,31 +1074,24 @@ if (Meteor.isServer) { }); }); - JsonRoutes.add('GET', '/api/boards/:boardId/lists/:listId/cards/:cardId', function(req, res) { + JsonRoutes.add('GET', '/api/boards/:boardId/lists/:listId/cards/:cardId', function (req, res) { const paramBoardId = req.params.boardId; const paramListId = req.params.listId; const paramCardId = req.params.cardId; Authentication.checkBoardAccess(req.userId, paramBoardId); JsonRoutes.sendResult(res, { code: 200, - data: Cards.findOne({ - _id: paramCardId, - listId: paramListId, - boardId: paramBoardId, - archived: false, - }), + data: Cards.findOne({_id: paramCardId, listId: paramListId, boardId: paramBoardId, archived: false}), }); }); - JsonRoutes.add('POST', '/api/boards/:boardId/lists/:listId/cards', function(req, res) { + JsonRoutes.add('POST', '/api/boards/:boardId/lists/:listId/cards', function (req, res) { Authentication.checkUserId(req.userId); const paramBoardId = req.params.boardId; const paramListId = req.params.listId; - const check = Users.findOne({ - _id: req.body.authorId, - }); + const check = Users.findOne({_id: req.body.authorId}); const members = req.body.members || [req.body.authorId]; - if (typeof check !== 'undefined') { + if (typeof check !== 'undefined') { const id = Cards.direct.insert({ title: req.body.title, boardId: paramBoardId, @@ -1366,9 +1109,7 @@ if (Meteor.isServer) { }, }); - const card = Cards.findOne({ - _id: id, - }); + const card = Cards.findOne({_id:id}); cardCreation(req.body.authorId, card); } else { @@ -1378,7 +1119,7 @@ if (Meteor.isServer) { } }); - JsonRoutes.add('PUT', '/api/boards/:boardId/lists/:listId/cards/:cardId', function(req, res) { + JsonRoutes.add('PUT', '/api/boards/:boardId/lists/:listId/cards/:cardId', function (req, res) { Authentication.checkUserId(req.userId); const paramBoardId = req.params.boardId; const paramCardId = req.params.cardId; @@ -1386,63 +1127,27 @@ if (Meteor.isServer) { if (req.body.hasOwnProperty('title')) { const newTitle = req.body.title; - Cards.direct.update({ - _id: paramCardId, - listId: paramListId, - boardId: paramBoardId, - archived: false, - }, { - $set: { - title: newTitle, - }, - }); + Cards.direct.update({_id: paramCardId, listId: paramListId, boardId: paramBoardId, archived: false}, + {$set: {title: newTitle}}); } if (req.body.hasOwnProperty('listId')) { const newParamListId = req.body.listId; - Cards.direct.update({ - _id: paramCardId, - listId: paramListId, - boardId: paramBoardId, - archived: false, - }, { - $set: { - listId: newParamListId, - }, - }); + Cards.direct.update({_id: paramCardId, listId: paramListId, boardId: paramBoardId, archived: false}, + {$set: {listId: newParamListId}}); - const card = Cards.findOne({ - _id: paramCardId, - }); - cardMove(req.body.authorId, card, { - fieldName: 'listId', - }, paramListId); + const card = Cards.findOne({_id: paramCardId} ); + cardMove(req.body.authorId, card, {fieldName: 'listId'}, paramListId); } if (req.body.hasOwnProperty('description')) { const newDescription = req.body.description; - Cards.direct.update({ - _id: paramCardId, - listId: paramListId, - boardId: paramBoardId, - archived: false, - }, { - $set: { - description: newDescription, - }, - }); + Cards.direct.update({_id: paramCardId, listId: paramListId, boardId: paramBoardId, archived: false}, + {$set: {description: newDescription}}); } if (req.body.hasOwnProperty('labelIds')) { const newlabelIds = req.body.labelIds; - Cards.direct.update({ - _id: paramCardId, - listId: paramListId, - boardId: paramBoardId, - archived: false, - }, { - $set: { - labelIds: newlabelIds, - }, - }); + Cards.direct.update({_id: paramCardId, listId: paramListId, boardId: paramBoardId, archived: false}, + {$set: {labelIds: newlabelIds}}); } if (req.body.hasOwnProperty('requestedBy')) { const newrequestedBy = req.body.requestedBy; @@ -1497,20 +1202,15 @@ if (Meteor.isServer) { }); }); - JsonRoutes.add('DELETE', '/api/boards/:boardId/lists/:listId/cards/:cardId', function(req, res) { + + JsonRoutes.add('DELETE', '/api/boards/:boardId/lists/:listId/cards/:cardId', function (req, res) { Authentication.checkUserId(req.userId); const paramBoardId = req.params.boardId; const paramListId = req.params.listId; const paramCardId = req.params.cardId; - Cards.direct.remove({ - _id: paramCardId, - listId: paramListId, - boardId: paramBoardId, - }); - const card = Cards.find({ - _id: paramCardId, - }); + Cards.direct.remove({_id: paramCardId, listId: paramListId, boardId: paramBoardId}); + const card = Cards.find({_id: paramCardId} ); cardRemover(req.body.authorId, card); JsonRoutes.sendResult(res, { code: 200, |