checklists.jade 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. template(name="checklists")
  2. .checklists-title
  3. h3.card-details-item-title
  4. i.fa.fa-check
  5. | {{_ 'checklists'}}
  6. if canModifyCard
  7. +inlinedForm(autoclose=false classNames="js-add-checklist" cardId = cardId position="top")
  8. +addChecklistItemForm
  9. else
  10. a.add-checklist-top.js-open-inlined-form(title="{{_ 'add-checklist'}}")
  11. i.fa.fa-plus
  12. if currentUser.isBoardMember
  13. .material-toggle-switch(title="{{_ 'hide-finished-checklist'}}")
  14. //span.toggle-switch-title
  15. if card.hideFinishedChecklistIfItemsAreHidden
  16. input.toggle-switch(type="checkbox" id="toggleHideFinishedChecklist" checked="checked")
  17. else
  18. input.toggle-switch(type="checkbox" id="toggleHideFinishedChecklist")
  19. label.toggle-label(for="toggleHideFinishedChecklist")
  20. .card-checklist-items
  21. each checklist in checklists
  22. if checklist.showChecklist card.hideFinishedChecklistIfItemsAreHidden
  23. +checklistDetail(checklist = checklist card = card)
  24. if canModifyCard
  25. +inlinedForm(autoclose=false classNames="js-add-checklist" cardId = cardId)
  26. +addChecklistItemForm(checklist=checklist showNewlineBecomesNewChecklistItem=false)
  27. else
  28. a.add-checklist.js-open-inlined-form(title="{{_ 'add-checklist'}}")
  29. i.fa.fa-plus
  30. template(name="checklistDetail")
  31. .js-checklist.checklist.nodragscroll
  32. +inlinedForm(classNames="js-edit-checklist-title" checklist = checklist)
  33. +editChecklistItemForm(checklist = checklist)
  34. else
  35. .checklist-title
  36. span
  37. if canModifyCard
  38. a.fa.fa-navicon.checklist-details-menu.js-open-checklist-details-menu(title="{{_ 'checklistActionsPopup-title'}}")
  39. if canModifyCard
  40. h4.title.js-open-inlined-form.is-editable
  41. if isTouchScreenOrShowDesktopDragHandles
  42. span.fa.checklist-handle(class="fa-arrows" title="{{_ 'dragChecklist'}}")
  43. +viewer
  44. = checklist.title
  45. else
  46. h4.title
  47. +viewer
  48. = checklist.title
  49. if $gt finishedPercent 0
  50. .checklist-progress-bar-container
  51. .checklist-progress-text {{finishedPercent}}%
  52. .checklist-progress-bar
  53. .checklist-progress(style="width:{{finishedPercent}}%")
  54. +checklistItems(checklist = checklist card = card)
  55. template(name="checklistDeletePopup")
  56. p {{_ 'confirm-checklist-delete-popup'}}
  57. button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
  58. template(name="addChecklistItemForm")
  59. a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
  60. span.copied-tooltip {{_ 'copied'}}
  61. textarea.js-add-checklist-item(rows='1' autofocus)
  62. .edit-controls.clearfix
  63. button.primary.confirm.js-submit-add-checklist-item-form(type="submit") {{_ 'save'}}
  64. a.fa.fa-times-thin.js-close-inlined-form(title="{{_ 'close-add-checklist-item'}}")
  65. if showNewlineBecomesNewChecklistItem
  66. .material-toggle-switch(title="{{_ 'newlineBecomesNewChecklistItem'}}")
  67. input.toggle-switch(type="checkbox" id="toggleNewlineBecomesNewChecklistItem")
  68. label.toggle-label(for="toggleNewlineBecomesNewChecklistItem")
  69. | {{_ 'newLineNewItem'}}
  70. if $eq position 'top'
  71. .material-toggle-switch(title="{{_ 'newlineBecomesNewChecklistItemOriginOrder'}}")
  72. input.toggle-switch(type="checkbox" id="toggleNewlineBecomesNewChecklistItemOriginOrder")
  73. label.toggle-label(for="toggleNewlineBecomesNewChecklistItemOriginOrder")
  74. | {{_ 'originOrder'}}
  75. template(name="editChecklistItemForm")
  76. a.fa.fa-copy(title="{{_ 'copy-text-to-clipboard'}}")
  77. span.copied-tooltip {{_ 'copied'}}
  78. textarea.js-edit-checklist-item(rows='1' autofocus dir="auto")
  79. if $eq type 'item'
  80. = item.title
  81. else
  82. = checklist.title
  83. .edit-controls.clearfix
  84. button.primary.confirm.js-submit-edit-checklist-item-form(type="submit") {{_ 'save'}}
  85. a.fa.fa-times-thin.js-close-inlined-form(title="{{_ 'close-edit-checklist-item'}}")
  86. span(title=createdAt) {{ moment createdAt }}
  87. if canModifyCard
  88. a.js-delete-checklist-item {{_ "delete"}}...
  89. a.js-convert-checklist-item-to-card
  90. i.fa.fa-copy
  91. | {{_ 'convertChecklistItemToCardPopup-title'}}
  92. template(name="checklistItems")
  93. if checklist.items.length
  94. if canModifyCard
  95. +inlinedForm(autoclose=false classNames="js-add-checklist-item" checklist = checklist position="top")
  96. +addChecklistItemForm(checklist=checklist showNewlineBecomesNewChecklistItem=true position="top")
  97. else
  98. a.add-checklist-item.js-open-inlined-form(title="{{_ 'add-checklist-item'}}")
  99. i.fa.fa-plus
  100. .checklist-items.js-checklist-items
  101. each item in checklist.items
  102. +inlinedForm(classNames="js-edit-checklist-item" item = item checklist = checklist)
  103. +editChecklistItemForm(type = 'item' item = item checklist = checklist)
  104. else
  105. +checklistItemDetail(item = item checklist = checklist card = card)
  106. if canModifyCard
  107. +inlinedForm(autoclose=false classNames="js-add-checklist-item" checklist = checklist)
  108. +addChecklistItemForm(checklist=checklist showNewlineBecomesNewChecklistItem=true)
  109. else
  110. a.add-checklist-item.js-open-inlined-form(title="{{_ 'add-checklist-item'}}")
  111. i.fa.fa-plus
  112. template(name='checklistItemDetail')
  113. .js-checklist-item.checklist-item(class="{{#if item.isFinished }}is-checked{{#if checklist.hideCheckedChecklistItems}} invisible{{/if}}{{/if}}{{#if checklist.hideAllChecklistItems}} is-checked invisible{{/if}}"
  114. role="checkbox" aria-checked="{{#if item.isFinished }}true{{else}}false{{/if}}" tabindex="0")
  115. if canModifyCard
  116. .check-box-container
  117. .check-box.materialCheckBox(class="{{#if item.isFinished }}is-checked{{/if}}")
  118. if isTouchScreenOrShowDesktopDragHandles
  119. span.fa.checklistitem-handle(class="fa-arrows" title="{{_ 'dragChecklistItem'}}")
  120. .item-title.js-open-inlined-form.is-editable(class="{{#if item.isFinished }}is-checked{{/if}}")
  121. +viewer
  122. = item.title
  123. else
  124. .materialCheckBox(class="{{#if item.isFinished }}is-checked{{/if}}")
  125. .item-title(class="{{#if item.isFinished }}is-checked{{/if}}")
  126. +viewer
  127. = item.title
  128. template(name="checklistActionsPopup")
  129. ul.pop-over-list
  130. li
  131. a.js-delete-checklist.delete-checklist
  132. i.fa.fa-trash
  133. | {{_ "delete"}} ...
  134. a.js-move-checklist.move-checklist
  135. i.fa.fa-arrow-right
  136. | {{_ "moveChecklist"}} ...
  137. a.js-copy-checklist.copy-checklist
  138. i.fa.fa-copy
  139. | {{_ "copyChecklist"}} ...
  140. a.js-hide-checked-checklist-items
  141. i.fa.fa-eye-slash
  142. | {{_ "hideCheckedChecklistItems"}} ...
  143. .material-toggle-switch(title="{{_ 'hide-checked-items'}}")
  144. if checklist.hideCheckedChecklistItems
  145. input.toggle-switch(type="checkbox" id="toggleHideCheckedChecklistItems_{{checklist._id}}" checked="checked")
  146. else
  147. input.toggle-switch(type="checkbox" id="toggleHideCheckedChecklistItems_{{checklist._id}}")
  148. label.toggle-label(for="toggleHideCheckedChecklistItems_{{checklist._id}}")
  149. a.js-hide-all-checklist-items
  150. i.fa.fa-ban
  151. | {{_ "hideAllChecklistItems"}} ...
  152. .material-toggle-switch(title="{{_ 'hideAllChecklistItems'}}")
  153. if checklist.hideAllChecklistItems
  154. input.toggle-switch(type="checkbox" id="toggleHideAllChecklistItems_{{checklist._id}}" checked="checked")
  155. else
  156. input.toggle-switch(type="checkbox" id="toggleHideAllChecklistItems_{{checklist._id}}")
  157. label.toggle-label(for="toggleHideAllChecklistItems_{{checklist._id}}")
  158. template(name="copyChecklistPopup")
  159. +copyAndMoveChecklist
  160. template(name="moveChecklistPopup")
  161. +copyAndMoveChecklist
  162. template(name="copyAndMoveChecklist")
  163. unless currentUser.isWorker
  164. label {{_ 'boards'}}:
  165. select.js-select-boards(autofocus)
  166. each boards
  167. option(value="{{_id}}" selected="{{#if isDialogOptionBoardId _id}}selected{{/if}}") {{title}}
  168. label {{_ 'swimlanes'}}:
  169. select.js-select-swimlanes
  170. each swimlanes
  171. option(value="{{_id}}" selected="{{#if isDialogOptionSwimlaneId _id}}selected{{/if}}") {{title}}
  172. label {{_ 'lists'}}:
  173. select.js-select-lists
  174. each lists
  175. option(value="{{_id}}" selected="{{#if isDialogOptionListId _id}}selected{{/if}}") {{title}}
  176. label {{_ 'cards'}}:
  177. select.js-select-cards
  178. each cards
  179. option(value="{{_id}}" selected="{{#if isDialogOptionCardId _id}}selected{{/if}}") {{title}}
  180. .edit-controls.clearfix
  181. button.primary.confirm.js-done {{_ 'done'}}