listHeader.jade 7.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. template(name="listHeader")
  2. .list-header.js-list-header.nodragscroll(
  3. class="{{#if limitToShowCardsCount}}list-header-card-count{{/if}}"
  4. class=colorClass)
  5. +inlinedForm
  6. +editListTitleForm
  7. else
  8. unless isMiniScreen
  9. if collapsed
  10. a.js-collapse(title="{{_ 'uncollapse'}}")
  11. i.fa.fa-arrow-left.list-header-uncollapse-left
  12. i.fa.fa-arrow-right.list-header-uncollapse-right
  13. if isMiniScreen
  14. if currentList
  15. a.list-header-left-icon.fa.fa-angle-left.js-unselect-list
  16. unless isMiniScreen
  17. if collapsed
  18. if showCardsCountForList cards.length
  19. br
  20. span.cardCount {{cardsCount}}
  21. if isMiniScreen
  22. h2.list-header-name(
  23. title="{{ moment modifiedAt 'LLL' }}"
  24. class="{{#if currentUser.isBoardMember}}{{#unless currentUser.isCommentOnly}}{{#unless currentUser.isWorker}}js-open-inlined-form is-editable{{/unless}}{{/unless}}{{/if}}")
  25. +viewer
  26. = title
  27. if wipLimit.enabled
  28. | (
  29. span(class="{{#if exceededWipLimit}}highlight{{/if}}") {{cards.length}}
  30. |/#{wipLimit.value})
  31. unless isMiniScreen
  32. div(class="{{#if collapsed}}list-rotated{{/if}}")
  33. h2.list-header-name(
  34. title="{{ moment modifiedAt 'LLL' }}"
  35. class="{{#if currentUser.isBoardMember}}{{#unless currentUser.isCommentOnly}}{{#unless currentUser.isWorker}}js-open-inlined-form is-editable{{/unless}}{{/unless}}{{/if}}")
  36. +viewer
  37. = title
  38. if wipLimit.enabled
  39. | (
  40. span(class="{{#if exceededWipLimit}}highlight{{/if}}") {{cards.length}}
  41. |/#{wipLimit.value})
  42. unless collapsed
  43. if showCardsCountForList cards.length
  44. span.cardCount {{cardsCount}} {{cardsCountForListIsOne cards.length}}
  45. if isMiniScreen
  46. if currentList
  47. if isWatching
  48. i.list-header-watch-icon.fa.fa-eye
  49. div.list-header-menu
  50. unless currentUser.isCommentOnly
  51. if canSeeAddCard
  52. a.js-add-card.fa.fa-plus.list-header-plus-top(title="{{_ 'add-card-to-top-of-list'}}")
  53. a.fa.fa-navicon.js-open-list-menu(title="{{_ 'listActionPopup-title'}}")
  54. else
  55. a.list-header-menu-icon.fa.fa-angle-right.js-select-list
  56. a.list-header-handle.handle.fa.fa-arrows.js-list-handle
  57. else if currentUser.isBoardMember
  58. if isWatching
  59. i.list-header-watch-icon.fa.fa-eye
  60. unless collapsed
  61. div.list-header-menu
  62. unless currentUser.isCommentOnly
  63. //if isBoardAdmin
  64. // a.fa.js-list-star.list-header-plus-top(class="fa-star{{#unless starred}}-o{{/unless}}")
  65. if canSeeAddCard
  66. a.js-add-card.fa.fa-plus.list-header-plus-top(title="{{_ 'add-card-to-top-of-list'}}")
  67. a.js-collapse(title="{{_ 'collapse'}}")
  68. i.fa.fa-arrow-right.list-header-collapse-right
  69. i.fa.fa-arrow-left.list-header-collapse-left
  70. a.fa.fa-navicon.js-open-list-menu(title="{{_ 'listActionPopup-title'}}")
  71. if currentUser.isBoardAdmin
  72. if isTouchScreenOrShowDesktopDragHandles
  73. a.list-header-handle.handle.fa.fa-arrows.js-list-handle
  74. template(name="editListTitleForm")
  75. .list-composer
  76. input.list-name-input.full-line(type="text" value=title autofocus)
  77. .edit-controls.clearfix
  78. button.primary.confirm(type="submit") {{_ 'save'}}
  79. a.fa.fa-times-thin.js-close-inlined-form
  80. template(name="listActionPopup")
  81. ul.pop-over-list
  82. li
  83. a.js-add-card.list-header-plus-bottom
  84. i.fa.fa-plus
  85. i.fa.fa-arrow-down
  86. | {{_ 'add-card-to-bottom-of-list'}}
  87. hr
  88. ul.pop-over-list
  89. li
  90. a.js-set-list-width
  91. i.fa.fa-arrows-h
  92. | {{_ 'set-list-width'}}
  93. ul.pop-over-list
  94. li
  95. a.js-toggle-watch-list
  96. if isWatching
  97. i.fa.fa-eye
  98. | {{_ 'unwatch'}}
  99. else
  100. i.fa.fa-eye-slash
  101. | {{_ 'watch'}}
  102. unless currentUser.isCommentOnly
  103. unless currentUser.isWorker
  104. ul.pop-over-list
  105. li
  106. a.js-set-color-list
  107. i.fa.fa-paint-brush
  108. | {{_ 'set-color-list'}}
  109. ul.pop-over-list
  110. if cards.length
  111. li
  112. a.js-select-cards
  113. i.fa.fa-check-square
  114. | {{_ 'list-select-cards'}}
  115. if currentUser.isBoardAdmin
  116. ul.pop-over-list
  117. li
  118. a.js-set-wip-limit
  119. i.fa.fa-ban
  120. | {{#if isWipLimitEnabled }}{{_ 'edit-wip-limit'}}{{else}}{{_ 'setWipLimitPopup-title'}}{{/if}}
  121. unless currentUser.isWorker
  122. hr
  123. ul.pop-over-list
  124. li
  125. a.js-close-list
  126. i.fa.fa-arrow-right
  127. i.fa.fa-archive
  128. | {{_ 'archive-list'}}
  129. hr
  130. ul.pop-over-list
  131. li
  132. a.js-more
  133. i.fa.fa-link
  134. | {{_ 'listMorePopup-title'}}
  135. template(name="boardLists")
  136. ul.pop-over-list
  137. each currentBoard.lists
  138. li
  139. if($eq ../_id _id)
  140. a.disabled {{title}} ({{_ 'current'}})
  141. else
  142. a.js-select-list= title
  143. template(name="listMorePopup")
  144. p.quiet
  145. span.clearfix
  146. span {{_ 'link-list'}}
  147. = ' '
  148. i.fa.colorful(class="{{#if board.isPublic}}fa-globe{{else}}fa-lock{{/if}}")
  149. input.inline-input(type="text" readonly value="{{ rootUrl }}")
  150. | {{_ 'added'}}
  151. span.date(title=list.createdAt) {{ moment createdAt 'LLL' }}
  152. //unless currentUser.isWorker
  153. // if currentUser.isBoardAdmin
  154. // a.js-delete {{_ 'delete'}}
  155. template(name="listDeletePopup")
  156. p {{_ "list-delete-pop"}}
  157. unless archived
  158. p {{_ "list-delete-suggest-archive"}}
  159. button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
  160. template(name="setWipLimitPopup")
  161. #js-wip-limit-edit
  162. label {{_ 'set-wip-limit-value'}}
  163. ul.pop-over-list
  164. li: a.js-enable-wip-limit {{_ 'enable-wip-limit'}}
  165. if isWipLimitEnabled
  166. i.fa.fa-check
  167. if isWipLimitEnabled
  168. p
  169. input.wip-limit-value(type="number" value="{{ wipLimitValue }}" min="1" max="99")
  170. input.wip-limit-apply(type="submit" value="{{_ 'apply'}}")
  171. input.wip-limit-error
  172. p
  173. .soft-wip-limit
  174. .materialCheckBox(class="{{#if isWipLimitSoft}}is-checked{{/if}}")
  175. label {{_ 'soft-wip-limit'}}
  176. template(name="wipLimitErrorPopup")
  177. .wip-limit-invalid
  178. p {{_ 'wipLimitErrorPopup-dialog-pt1'}}
  179. p {{_ 'wipLimitErrorPopup-dialog-pt2'}}
  180. button.full.js-back-view(type="submit") {{_ 'cancel'}}
  181. template(name="setListWidthPopup")
  182. #js-list-width-edit
  183. label {{_ 'set-list-width-value'}}
  184. p
  185. input.list-width-value(type="number" value="{{ listWidthValue }}" min="100")
  186. input.list-width-apply(type="submit" value="{{_ 'apply'}}")
  187. input.list-width-error
  188. template(name="listWidthErrorPopup")
  189. .list-width-invalid
  190. p {{_ 'list-width-error-message'}} '>=100'
  191. button.full.js-back-view(type="submit") {{_ 'cancel'}}
  192. template(name="setListColorPopup")
  193. form.edit-label
  194. .palette-colors: each colors
  195. // note: we use the swimlane palette to have more than just the border
  196. span.card-label.palette-color.js-palette-color(class="card-details-{{color}}")
  197. if(isSelected color)
  198. i.fa.fa-check
  199. button.primary.confirm.js-submit {{_ 'save'}}
  200. button.js-remove-color.negate.wide.right {{_ 'unset-color'}}