checklists.jade 7.4 KB

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