userAvatar.jade 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. template(name="userAvatar")
  2. a.member(class="js-{{#if assignee}}assignee{{else}}member{{/if}}" title="{{userData.profile.fullname}} ({{userData.username}}) {{_ memberType}}")
  3. if userData.profile.avatarUrl
  4. img.avatar.avatar-image(src="{{userData.profile.avatarUrl}}")
  5. else
  6. +userAvatarInitials(userId=userData._id)
  7. if showStatus
  8. span.member-presence-status(class=presenceStatusClassName)
  9. span.member-type(class=memberType)
  10. unless isSandstorm
  11. if showEdit
  12. if $eq currentUser._id userData._id
  13. a.edit-avatar.js-change-avatar
  14. | ✏️
  15. template(name="userAvatarInitials")
  16. svg.avatar.avatar-initials(viewBox="0 0 {{viewPortWidth}} 15")
  17. text(x="50%" y="13" text-anchor="middle")= initials
  18. template(name="orgAvatar")
  19. a.member.orgOrTeamMember(class="js-member" title="{{orgData.orgDisplayName}}")
  20. +boardOrgName(orgId=orgData._id)
  21. template(name="boardOrgRow")
  22. tr
  23. if orgData.orgIsActive
  24. td {{ orgData.orgDisplayName }}
  25. else
  26. td <s>{{ orgData.orgDisplayName }}</s>
  27. td
  28. if currentUser.isBoardAdmin
  29. a.member.orgOrTeamMember.add-member.js-manage-board-removeOrg(title="{{_ 'remove-from-board'}}")
  30. i.removeTeamFaMinus
  31. | ➖
  32. .divaddfaplusminus
  33. | {{_ 'remove-btn'}}
  34. template(name="boardTeamRow")
  35. tr
  36. if teamData.teamIsActive
  37. td {{ teamData.teamDisplayName }}
  38. else
  39. td <s>{{ teamData.teamDisplayName }}</s>
  40. td
  41. if currentUser.isBoardAdmin
  42. a.member.orgOrTeamMember.add-member.js-manage-board-removeTeam(title="{{_ 'remove-from-board'}}")
  43. i.removeTeamFaMinus
  44. | ➖
  45. .divaddfaplusminus
  46. | {{_ 'remove-btn'}}
  47. template(name="boardOrgName")
  48. svg.avatar.avatar-initials(viewBox="0 0 {{orgViewPortWidth}} 15")
  49. text(x="50%" y="13" text-anchor="middle")= orgName
  50. template(name="teamAvatar")
  51. a.member.orgOrTeamMember(class="js-member" title="{{teamData.teamDisplayName}}")
  52. +boardTeamName(orgId=orgData._id)
  53. template(name="boardTeamName")
  54. svg.avatar.avatar-initials(viewBox="0 0 {{teamViewPortWidth}} 15")
  55. text(x="50%" y="13" text-anchor="middle")= teamName
  56. template(name="userPopup")
  57. .board-member-menu
  58. .mini-profile-info
  59. +userAvatar(userId=user._id)
  60. .info
  61. h3= user.profile.fullname
  62. p.quiet @{{ user.username }}
  63. template(name="memberName")
  64. if showBoth
  65. = user.profile.fullname
  66. | ({{ user.username }})
  67. else if user.profile.fullname
  68. = user.profile.fullname
  69. else
  70. = user.username
  71. template(name="changeAvatarPopup")
  72. if error.get
  73. .warning {{_ error.get}}
  74. ul.pop-over-list
  75. each uploadedAvatars
  76. li: a.js-select-avatar
  77. .member
  78. img.avatar.avatar-image(src="{{link}}?auth=false&brokenIsFine=true")
  79. | {{_ 'uploaded-avatar'}}
  80. if isSelected
  81. | ✅
  82. p.sub-name
  83. unless isSelected
  84. a.js-delete-avatar {{_ 'delete'}}
  85. | -
  86. = name
  87. li: a.js-select-initials
  88. .member
  89. +userAvatarInitials(userId=currentUser._id)
  90. | {{_ 'initials' }}
  91. if noAvatarUrl
  92. | ✅
  93. p.sub-name {{_ 'default-avatar'}}
  94. input.hide.js-upload-avatar-input(accept="image/*;capture=camera" type="file")
  95. if Meteor.settings.public.avatarsUploadMaxSize
  96. | {{_ 'max-avatar-filesize'}} {{Meteor.settings.public.avatarsUploadMaxSize}}
  97. br
  98. if Meteor.settings.public.avatarsUploadMimeTypes
  99. | {{_ 'allowed-avatar-filetypes'}} {{Meteor.settings.public.avatarsUploadMimeTypes}}
  100. br
  101. | {{_ 'invalid-file'}}
  102. button.full.js-upload-avatar
  103. | 📤
  104. | {{_ 'upload-avatar'}}
  105. template(name="cardMemberPopup")
  106. .board-member-menu
  107. .mini-profile-info
  108. +userAvatar(userId=user._id showEdit=true)
  109. .info
  110. h3= user.profile.fullname
  111. p.quiet @{{ user.username }}
  112. ul.pop-over-list
  113. unless noRemove
  114. if currentUser.isNotCommentOnly
  115. if currentUser.isNotWorker
  116. li: a.js-remove-member {{_ 'remove-member-from-card'}}
  117. if $eq currentUser._id user._id
  118. with currentUser
  119. li: a.js-edit-profile {{_ 'edit-profile'}}