checklists.jade 6.9 KB

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