diff options
author | Lauri Ojansivu <x@xet7.org> | 2019-01-22 17:33:27 +0200 |
---|---|---|
committer | Lauri Ojansivu <x@xet7.org> | 2019-01-22 17:33:27 +0200 |
commit | 46a468b06dd5d4ca2338140bb2fd32958ccef85f (patch) | |
tree | 9a7656c0fa92c0895c25d958764f090c74d0c129 /models/cardComments.js | |
parent | 8d4eef66493f464035616fec7ac8b2f14720ce57 (diff) | |
parent | 1b445ad789a41d97b7cf4e16af35f52ae0be694b (diff) | |
download | wekan-46a468b06dd5d4ca2338140bb2fd32958ccef85f.tar.gz wekan-46a468b06dd5d4ca2338140bb2fd32958ccef85f.tar.bz2 wekan-46a468b06dd5d4ca2338140bb2fd32958ccef85f.zip |
Merge branch 'edge' into meteor-1.8
Diffstat (limited to 'models/cardComments.js')
-rw-r--r-- | models/cardComments.js | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/models/cardComments.js b/models/cardComments.js index b6cb10fa..974c5ec9 100644 --- a/models/cardComments.js +++ b/models/cardComments.js @@ -1,19 +1,34 @@ CardComments = new Mongo.Collection('card_comments'); +/** + * A comment on a card + */ CardComments.attachSchema(new SimpleSchema({ boardId: { + /** + * the board ID + */ type: String, }, cardId: { + /** + * the card ID + */ type: String, }, // XXX Rename in `content`? `text` is a bit vague... text: { + /** + * the text of the comment + */ type: String, }, // XXX We probably don't need this information here, since we already have it // in the associated comment creation activity createdAt: { + /** + * when was the comment created + */ type: Date, denyUpdate: false, autoValue() { // eslint-disable-line consistent-return @@ -26,6 +41,9 @@ CardComments.attachSchema(new SimpleSchema({ }, // XXX Should probably be called `authorId` userId: { + /** + * the author ID of the comment + */ type: String, autoValue() { // eslint-disable-line consistent-return if (this.isInsert && !this.isSet) { @@ -87,6 +105,16 @@ if (Meteor.isServer) { //CARD COMMENT REST API if (Meteor.isServer) { + /** + * @operation get_all_comments + * @summary Get all comments attached to a card + * + * @param {string} boardId the board ID of the card + * @param {string} cardId the ID of the card + * @return_type [{_id: string, + * comment: string, + * authorId: string}] + */ JsonRoutes.add('GET', '/api/boards/:boardId/cards/:cardId/comments', function (req, res) { try { Authentication.checkUserId( req.userId); @@ -111,6 +139,15 @@ if (Meteor.isServer) { } }); + /** + * @operation get_comment + * @summary Get a comment on a card + * + * @param {string} boardId the board ID of the card + * @param {string} cardId the ID of the card + * @param {string} commentId the ID of the comment to retrieve + * @return_type CardComments + */ JsonRoutes.add('GET', '/api/boards/:boardId/cards/:cardId/comments/:commentId', function (req, res) { try { Authentication.checkUserId( req.userId); @@ -130,6 +167,16 @@ if (Meteor.isServer) { } }); + /** + * @operation new_comment + * @summary Add a comment on a card + * + * @param {string} boardId the board ID of the card + * @param {string} cardId the ID of the card + * @param {string} authorId the user who 'posted' the comment + * @param {string} text the content of the comment + * @return_type {_id: string} + */ JsonRoutes.add('POST', '/api/boards/:boardId/cards/:cardId/comments', function (req, res) { try { Authentication.checkUserId( req.userId); @@ -160,6 +207,15 @@ if (Meteor.isServer) { } }); + /** + * @operation delete_comment + * @summary Delete a comment on a card + * + * @param {string} boardId the board ID of the card + * @param {string} cardId the ID of the card + * @param {string} commentId the ID of the comment to delete + * @return_type {_id: string} + */ JsonRoutes.add('DELETE', '/api/boards/:boardId/cards/:cardId/comments/:commentId', function (req, res) { try { Authentication.checkUserId( req.userId); |