cardDetails.jade 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. template(name="cardDetails")
  2. section.card-details.js-card-details.js-perfect-scrollbar: .card-details-canvas
  3. .card-details-header
  4. +inlinedForm(classNames="js-card-details-title")
  5. input.full-line(type="text" value=title autofocus)
  6. .edit-controls.clearfix
  7. button.primary.confirm(type="submit") {{_ 'save'}}
  8. a.fa.fa-times-thin.js-close-inlined-form
  9. else
  10. a.fa.fa-times-thin.close-card-details.js-close-card-details
  11. if currentUser.isBoardMember
  12. a.fa.fa-ellipsis-v.card-details-menu.js-open-card-details-menu
  13. h2.card-details-title.js-card-title(
  14. class="{{#if currentUser.isBoardMember}}js-open-inlined-form is-editable{{/if}}")
  15. = title
  16. if archived
  17. p.warning {{_ 'card-archived'}}
  18. .card-details-items
  19. .card-details-item.card-details-item-members
  20. h3.card-details-item-title {{_ 'members'}}
  21. each members
  22. +userAvatar(userId=this cardId=../_id)
  23. | {{! XXX Hack to hide syntaxic coloration /// }}
  24. a.member.add-member.card-details-item-add-button.js-add-members(title="{{_ 'card-members-title'}}")
  25. i.fa.fa-plus
  26. .card-details-item.card-details-item-labels
  27. h3.card-details-item-title {{_ 'labels'}}
  28. a.js-add-labels(title="{{_ 'card-labels-title'}}")
  29. each labels
  30. span.card-label(class="card-label-{{color}}" title=name)= name
  31. a.card-label.add-label.js-add-labels(title="{{_ 'card-labels-title'}}")
  32. i.fa.fa-plus
  33. //- XXX We should use "editable" to avoid repetiting ourselves
  34. if currentUser.isBoardMember
  35. h3.card-details-item-title {{_ 'description'}}
  36. +inlinedCardDescription(classNames="card-description js-card-description")
  37. +editor(autofocus=true)
  38. | {{getUnsavedValue 'cardDescription' _id description}}
  39. .edit-controls.clearfix
  40. button.primary(type="submit") {{_ 'save'}}
  41. a.fa.fa-times-thin.js-close-inlined-form
  42. else
  43. a.js-open-inlined-form
  44. if description
  45. +viewer
  46. = description
  47. else
  48. | {{_ 'edit'}}
  49. if (hasUnsavedValue 'cardDescription' _id)
  50. p.quiet
  51. | {{_ 'unsaved-description'}}
  52. a.js-open-inlined-form {{_ 'view-it'}}
  53. = ' - '
  54. a.js-close-inlined-form {{_ 'discard'}}
  55. else if description
  56. h3.card-details-item-title {{_ 'description'}}
  57. +viewer
  58. = description
  59. if attachments.count
  60. hr
  61. h2
  62. i.fa.fa-paperclip
  63. | {{_ 'attachments'}}
  64. +attachmentsGalery
  65. hr
  66. h2 {{ _ 'activity'}}
  67. if currentUser.isBoardMember
  68. +commentForm
  69. if isLoaded.get
  70. +activities(card=this mode="card")
  71. template(name="cardDetailsActionsPopup")
  72. ul.pop-over-list
  73. li: a.js-members {{_ 'card-edit-members'}}
  74. li: a.js-labels {{_ 'card-edit-labels'}}
  75. li: a.js-attachments {{_ 'card-edit-attachments'}}
  76. hr
  77. ul.pop-over-list
  78. li: a.js-move-card {{_ 'moveCardPopup-title'}}
  79. unless archived
  80. li: a.js-archive {{_ 'archive-card'}}
  81. li: a.js-more {{_ 'cardMorePopup-title'}}
  82. template(name="moveCardPopup")
  83. +boardLists
  84. template(name="cardMembersPopup")
  85. ul.pop-over-list.js-card-member-list
  86. each board.members
  87. li.item(class="{{#if isCardMember}}active{{/if}}")
  88. a.name.js-select-member(href="#")
  89. +userAvatar(userId=user._id)
  90. span.full-name
  91. = user.profile.fullname
  92. | (<span class="username">{{ user.username }}</span>)
  93. if isCardMember
  94. i.fa.fa-check
  95. template(name="cardMorePopup")
  96. p.quiet
  97. span.clearfix
  98. span {{_ 'link-card'}}
  99. = ' '
  100. i.fa.colorful(class="{{#if board.isPublic}}fa-globe{{else}}fa-lock{{/if}}")
  101. input.inline-input(type="text" readonly value="{{ rootUrl }}")
  102. | {{_ 'added'}}
  103. span.date(title=card.createdAt) {{ moment createdAt 'LLL' }}
  104. a.js-delete(title="{{_ 'card-delete-notice'}}") {{_ 'delete'}}
  105. template(name="cardDeletePopup")
  106. p {{_ "card-delete-pop"}}
  107. unless archived
  108. p {{_ "card-delete-suggest-archive"}}
  109. button.js-confirm.negate.full(type="submit") {{_ 'delete'}}