2
0

activities.jade 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244
  1. template(name="activities")
  2. .activities.js-sidebar-activities
  3. //- We should use Template.dynamic here but there is a bug with
  4. //- blaze-components: https://github.com/peerlibrary/meteor-blaze-components/issues/30
  5. if $eq mode "board"
  6. +boardActivities
  7. else
  8. +cardActivities
  9. template(name="boardActivities")
  10. each activityData in currentBoard.activities
  11. +activity(activity=activityData card=card mode=mode)
  12. template(name="cardActivities")
  13. each activityData in activities
  14. +activity(activity=activityData card=card mode=mode)
  15. template(name="editOrDeleteComment")
  16. a.js-open-inlined-form {{_ "edit"}}
  17. = ' - '
  18. a.js-delete-comment {{_ "delete"}}
  19. template(name="deleteCommentPopup")
  20. p {{_ "comment-delete"}}
  21. button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
  22. template(name="commentReactions")
  23. .reactions
  24. each reaction in reactions
  25. span.reaction(class="{{#if isSelected reaction.userIds}}selected{{/if}}" data-codepoint="#{reaction.reactionCodepoint}" title="{{userNames reaction.userIds}}")
  26. span.reaction-codepoint !{reaction.reactionCodepoint}
  27. span.reaction-count #{reaction.userIds.length}
  28. if (currentUser.isBoardMember)
  29. a.open-comment-reaction-popup(title="{{_ 'addReactionPopup-title'}}")
  30. i.fa.fa-smile-o
  31. i.fa.fa-plus
  32. template(name="addReactionPopup")
  33. .reactions-popup
  34. each codepoint in codepoints
  35. span.add-comment-reaction(data-codepoint="#{codepoint}") !{codepoint}
  36. template(name="activity")
  37. .activity(data-id=activity._id)
  38. +userAvatar(userId=activity.user._id)
  39. p.activity-desc
  40. span.activity-member
  41. +memberName(user=activity.user)
  42. //- attachment activity -------------------------------------------------
  43. if($eq activity.activityType 'deleteAttachment')
  44. | {{{_ 'activity-delete-attach' cardLink}}}.
  45. if($eq activity.activityType 'addAttachment')
  46. | {{{_ 'activity-attached' attachmentLink cardLink}}}.
  47. if($neq mode 'board')
  48. if activity.attachment.isImage
  49. img.attachment-image-preview(src=activity.attachment.url)
  50. //- board activity ------------------------------------------------------
  51. if($eq activity.activityType 'createBoard')
  52. | {{{_ 'activity-created' boardLabelLink}}}.
  53. if($eq activity.activityType 'importBoard')
  54. | {{{_ 'activity-imported-board' boardLabelLink sourceLink}}}.
  55. if($eq activity.activityType 'addBoardMember')
  56. | {{{_ 'activity-added' memberLink boardLabelLink}}}.
  57. if($eq activity.activityType 'removeBoardMember')
  58. | {{{_ 'activity-excluded' memberLink boardLabelLink}}}.
  59. //- card activity -------------------------------------------------------
  60. if($eq activity.activityType 'createCard')
  61. if($eq mode 'card')
  62. | {{{_ 'activity-added' cardLabelLink (sanitize activity.listName)}}}.
  63. else
  64. | {{{_ 'activity-added' cardLabelLink boardLabelLink}}}.
  65. if($eq activity.activityType 'importCard')
  66. | {{{_ 'activity-imported' cardLink boardLabelLink sourceLink}}}.
  67. if($eq activity.activityType 'moveCard')
  68. | {{{_ 'activity-moved' cardLabelLink (sanitize activity.oldList.title) (sanitize activity.list.title)}}}.
  69. if($eq activity.activityType 'moveCardBoard')
  70. | {{{_ 'activity-moved' cardLink (sanitize activity.oldBoardName) (sanitize activity.boardName)}}}.
  71. if($eq activity.activityType 'archivedCard')
  72. | {{{_ 'activity-archived' cardLink}}}.
  73. if($eq activity.activityType 'restoredCard')
  74. | {{{_ 'activity-sent' cardLink boardLabelLink}}}.
  75. //- checklist activity --------------------------------------------------
  76. if($eq activity.activityType 'addChecklist')
  77. | {{{_ 'activity-checklist-added' cardLink}}}.
  78. if($eq mode 'card')
  79. .activity-checklist
  80. +viewer
  81. = activity.checklist.title
  82. else
  83. a.activity-checklist(href="{{ activity.card.originRelativeUrl }}")
  84. +viewer
  85. = activity.checklist.title
  86. if($eq activity.activityType 'removedChecklist')
  87. | {{{_ 'activity-checklist-removed' cardLink}}}.
  88. if($eq activity.activityType 'completeChecklist')
  89. | {{{_ 'activity-checklist-completed' (sanitize activity.checklist.title) cardLink}}}.
  90. if($eq activity.activityType 'uncompleteChecklist')
  91. | {{{_ 'activity-checklist-uncompleted' (sanitize activity.checklist.title) cardLink}}}.
  92. if($eq activity.activityType 'checkedItem')
  93. | {{{_ 'activity-checked-item' (sanitize checkItem) (sanitize activity.checklist.title) cardLink}}}.
  94. if($eq activity.activityType 'uncheckedItem')
  95. | {{{_ 'activity-unchecked-item' (sanitize checkItem) (sanitize activity.checklist.title) cardLink}}}.
  96. if($eq activity.activityType 'addChecklistItem')
  97. | {{{_ 'activity-checklist-item-added' (sanitize activity.checklist.title) cardLink}}}.
  98. .activity-checklist(href="{{ activity.card.originRelativeUrl }}")
  99. +viewer
  100. = activity.checklistItem.title
  101. if($eq activity.activityType 'removedChecklistItem')
  102. | {{{_ 'activity-checklist-item-removed' (sanitize activity.checklist.title) cardLink}}}.
  103. //- comment activity ----------------------------------------------------
  104. if($eq mode 'card')
  105. //- if we are in card mode we display the comment in a way that it
  106. //- can be edited by the owner
  107. if($eq activity.activityType 'addComment')
  108. +inlinedForm(classNames='js-edit-comment')
  109. +editor(autofocus=true)
  110. = activity.comment.text
  111. .edit-controls
  112. button.primary(type="submit") {{_ 'edit'}}
  113. .fa.fa-times-thin.js-close-inlined-form
  114. else
  115. .activity-comment
  116. +viewer
  117. = activity.comment.text
  118. +commentReactions(reactions=activity.comment.reactions commentId=activity.comment._id)
  119. if($eq currentUser._id activity.comment.userId)
  120. +editOrDeleteComment
  121. else if currentUser.isBoardAdmin
  122. +editOrDeleteComment
  123. if($eq activity.activityType 'deleteComment')
  124. | {{{_ 'activity-deleteComment' activity.commentId}}}.
  125. if($eq activity.activityType 'editComment')
  126. | {{{_ 'activity-editComment' activity.commentId}}}.
  127. else
  128. //- if we are not in card mode we only display a summary of the comment
  129. if($eq activity.activityType 'addComment')
  130. | {{{_ 'activity-on' cardLink}}}
  131. a.activity-comment(href="{{ activity.card.originRelativeUrl }}")
  132. +viewer
  133. = activity.comment.text
  134. //- date activity ------------------------------------------------
  135. if($eq activity.activityType 'a-receivedAt')
  136. | {{{_ 'activity-receivedDate' (sanitize receivedDate) cardLink}}}.
  137. if($eq activity.activityType 'a-startAt')
  138. | {{{_ 'activity-startDate' (sanitize startDate) cardLink}}}.
  139. if($eq activity.activityType 'a-dueAt')
  140. | {{{_ 'activity-dueDate' (sanitize dueDate) cardLink}}}.
  141. if($eq activity.activityType 'a-endAt')
  142. | {{{_ 'activity-endDate' (sanitize endDate) cardLink}}}.
  143. //- customField activity ------------------------------------------------
  144. if($eq activity.activityType 'createCustomField')
  145. | {{_ 'activity-customfield-created' customField}}.
  146. if($eq activity.activityType 'setCustomField')
  147. | {{{_ 'activity-set-customfield' (sanitize lastCustomField) (sanitize lastCustomFieldValue) cardLink}}}.
  148. if($eq activity.activityType 'unsetCustomField')
  149. | {{{_ 'activity-unset-customfield' (sanitize lastCustomField) cardLink}}}.
  150. //- label activity ------------------------------------------------------
  151. if($eq activity.activityType 'addedLabel')
  152. | {{{_ 'activity-added-label' (sanitize lastLabel) cardLink}}}.
  153. if($eq activity.activityType 'removedLabel')
  154. | {{{_ 'activity-removed-label' (sanitize lastLabel) cardLink}}}.
  155. //- list activity -------------------------------------------------------
  156. if($neq mode 'card')
  157. if($eq activity.activityType 'createList')
  158. | {{{_ 'activity-added' (sanitize listLabel) boardLabelLink}}}.
  159. if($eq activity.activityType 'importList')
  160. | {{{_ 'activity-imported' (sanitize listLabel) boardLabelLink sourceLink}}}.
  161. if($eq activity.activityType 'removeList')
  162. | {{{_ 'activity-removed' (sanitize activity.title) boardLabelLink}}}.
  163. if($eq activity.activityType 'archivedList')
  164. | {{_ 'activity-archived' (sanitize listLabel)}}.
  165. //- member activity ----------------------------------------------------
  166. if($eq activity.activityType 'joinMember')
  167. if($eq user._id activity.member._id)
  168. | {{{_ 'activity-joined' cardLink}}}.
  169. else
  170. | {{{_ 'activity-added' memberLink cardLink}}}.
  171. if($eq activity.activityType 'unjoinMember')
  172. if($eq user._id activity.member._id)
  173. | {{{_ 'activity-unjoined' cardLink}}}.
  174. else
  175. | {{{_ 'activity-removed' memberLink cardLink}}}.
  176. //- swimlane activity --------------------------------------------------
  177. if($eq activity.activityType 'createSwimlane')
  178. | {{{_ 'activity-added' (sanitize activity.swimlane.title) boardLabelLink}}}.
  179. if($eq activity.activityType 'archivedSwimlane')
  180. | {{{_ 'activity-archived' (sanitize activity.swimlane.title)}}}.
  181. //- I don't understand this part ----------------------------------------
  182. if(currentData.timeKey)
  183. | {{_ activity.activityType }}
  184. = ' '
  185. i(title=currentData.timeValue).activity-meta {{ moment currentData.timeValue 'LLL' }}
  186. if (currentData.timeOldValue)
  187. = ' '
  188. | {{{_ "previous_as" }}}
  189. = ' '
  190. i(title=currentData.timeOldValue).activity-meta {{ moment currentData.timeOldValue 'LLL' }}
  191. = ' @'
  192. else if(currentData.timeValue)
  193. | {{_ activity.activityType currentData.timeValue}}
  194. div(title=activity.createdAt).activity-meta {{ moment activity.createdAt }}