userAvatar.jade 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  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. i.fa.fa-pencil
  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="userPopup")
  19. .board-member-menu
  20. .mini-profile-info
  21. +userAvatar(userId=user._id)
  22. .info
  23. h3= user.profile.fullname
  24. p.quiet @{{ user.username }}
  25. template(name="memberName")
  26. if showBoth
  27. = user.profile.fullname
  28. | ({{ user.username }})
  29. else if user.profile.fullname
  30. = user.profile.fullname
  31. else
  32. = user.username
  33. template(name="changeAvatarPopup")
  34. if error.get
  35. .warning {{_ error.get}}
  36. ul.pop-over-list
  37. each uploadedAvatars
  38. li: a.js-select-avatar
  39. .member
  40. img.avatar.avatar-image(src="{{url avatarUrlOptions}}")
  41. | {{_ 'uploaded-avatar'}}
  42. if isSelected
  43. i.fa.fa-check
  44. p.sub-name
  45. unless isSelected
  46. a.js-delete-avatar {{_ 'delete'}}
  47. | -
  48. = original.name
  49. li: a.js-select-initials
  50. .member
  51. +userAvatarInitials(userId=currentUser._id)
  52. | {{_ 'initials' }}
  53. if noAvatarUrl
  54. i.fa.fa-check
  55. p.sub-name {{_ 'default-avatar'}}
  56. input.hide.js-upload-avatar-input(accept="image/*;capture=camera" type="file")
  57. button.full.js-upload-avatar
  58. i.fa.fa-upload
  59. | {{_ 'upload-avatar'}}
  60. template(name="cardMemberPopup")
  61. .board-member-menu
  62. .mini-profile-info
  63. +userAvatar(userId=user._id showEdit=true)
  64. .info
  65. h3= user.profile.fullname
  66. p.quiet @{{ user.username }}
  67. ul.pop-over-list
  68. unless noRemove
  69. if currentUser.isNotCommentOnly
  70. if currentUser.isNotWorker
  71. li: a.js-remove-member {{_ 'remove-member-from-card'}}
  72. if $eq currentUser._id user._id
  73. with currentUser
  74. li: a.js-edit-profile {{_ 'edit-profile'}}