userHeader.jade 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161
  1. template(name="headerUserBar")
  2. #header-user-bar
  3. a.header-user-bar-name.js-open-header-member-menu
  4. .header-user-bar-avatar
  5. +userAvatar(userId=currentUser._id)
  6. unless isMiniScreen
  7. unless isSandstorm
  8. if currentUser.profile.fullname
  9. = currentUser.profile.fullname
  10. else
  11. = currentUser.username
  12. template(name="memberMenuPopup")
  13. ul.pop-over-list
  14. with currentUser
  15. li
  16. a.js-my-cards(href="{{pathFor 'my-cards'}}")
  17. i.fa.fa-list
  18. | {{_ 'my-cards'}}
  19. li
  20. a.js-due-cards(href="{{pathFor 'due-cards'}}")
  21. i.fa.fa-calendar
  22. | {{_ 'dueCards-title'}}
  23. li
  24. a.js-global-search(href="{{pathFor 'global-search'}}")
  25. i.fa.fa-search
  26. | {{_ 'globalSearch-title'}}
  27. li
  28. a.js-broken-cards(href="{{pathFor 'broken-cards'}}")
  29. i.fa.fa-chain-broken
  30. | {{_ 'broken-cards'}}
  31. li
  32. a(href="{{pathFor 'home'}}")
  33. span.fa.fa-home
  34. | {{_ 'all-boards'}}
  35. li
  36. a(href="{{pathFor 'public'}}")
  37. span.fa.fa-globe
  38. | {{_ 'public'}}
  39. li
  40. a.board-header-btn.js-open-archived-board
  41. i.fa.fa-archive
  42. span {{_ 'archives'}}
  43. unless currentUser.isWorker
  44. ul.pop-over-list
  45. li
  46. a(href="{{pathFor 'board' id=templatesBoardId slug=templatesBoardSlug}}")
  47. i.fa.fa-clone
  48. | {{_ 'templates'}}
  49. if currentUser.isAdmin
  50. li
  51. a.js-go-setting(href="{{pathFor 'setting'}}")
  52. i.fa.fa-lock
  53. | {{_ 'admin-panel'}}
  54. hr
  55. li
  56. a.js-edit-profile
  57. i.fa.fa-user
  58. | {{_ 'edit-profile'}}
  59. li
  60. a.js-change-settings
  61. i.fa.fa-cog
  62. | {{_ 'change-settings'}}
  63. li
  64. a.js-change-avatar
  65. i.fa.fa-picture-o
  66. | {{_ 'edit-avatar'}}
  67. unless isSandstorm
  68. li
  69. a.js-change-password
  70. i.fa.fa-key
  71. | {{_ 'changePasswordPopup-title'}}
  72. li
  73. a.js-change-language
  74. i.fa.fa-flag
  75. | {{_ 'changeLanguagePopup-title'}}
  76. unless isSandstorm
  77. hr
  78. ul.pop-over-list
  79. li
  80. a.js-logout
  81. i.fa.fa-sign-out
  82. | {{_ 'log-out'}}
  83. template(name="editProfilePopup")
  84. form
  85. label
  86. | {{_ 'fullname'}}
  87. input.js-profile-fullname(type="text" value=profile.fullname autofocus)
  88. label
  89. | {{_ 'username'}}
  90. span.error.hide.username-taken
  91. | {{_ 'error-username-taken'}}
  92. if allowUserNameChange
  93. input.js-profile-username(type="text" value=username)
  94. else
  95. input.js-profile-username(type="text" value=username readonly)
  96. label
  97. | {{_ 'initials'}}
  98. input.js-profile-initials(type="text" value=profile.initials)
  99. label
  100. | {{_ 'email'}}
  101. span.error.hide.email-taken
  102. | {{_ 'error-email-taken'}}
  103. if allowEmailChange
  104. input.js-profile-email(type="email" value="{{emails.[0].address}}")
  105. else
  106. input.js-profile-email(type="email" value="{{emails.[0].address}}" readonly)
  107. div.buttonsContainer
  108. input.primary.wide(type="submit" value="{{_ 'save'}}")
  109. if allowUserDelete
  110. div
  111. input#deleteButton.primary.wide(type="button" value="{{_ 'delete'}}")
  112. template(name="changePasswordPopup")
  113. +atForm(state='changePwd')
  114. template(name="changeLanguagePopup")
  115. ul.pop-over-list
  116. each languages
  117. li(class="{{# if isCurrentLanguage}}active{{/if}}")
  118. a.js-set-language
  119. = name
  120. if isCurrentLanguage
  121. i.fa.fa-check
  122. template(name="changeSettingsPopup")
  123. ul.pop-over-list
  124. //li
  125. // a.js-toggle-system-messages
  126. // i.fa.fa-comments-o
  127. // | {{_ 'hide-system-messages'}}
  128. // if hiddenSystemMessages
  129. // i.fa.fa-check
  130. li
  131. a.js-toggle-desktop-drag-handles
  132. i.fa.fa-arrows
  133. | {{_ 'show-desktop-drag-handles'}}
  134. if showDesktopDragHandles
  135. i.fa.fa-check
  136. unless currentUser.isWorker
  137. li
  138. label.bold.clear
  139. i.fa.fa-sort-numeric-asc
  140. | {{_ 'show-cards-minimum-count'}}
  141. input#show-cards-count-at.inline-input.left(type="number" value="#{showCardsCountAt}" min="0" max="99" onkeydown="return false")
  142. label.bold.clear
  143. i.fa.fa-calendar
  144. | {{_ 'start-day-of-week'}}
  145. select#start-day-of-week.inline-input.left
  146. each day in weekDays startDayOfWeek
  147. if day.isSelected
  148. option(selected="true", value="#{day.value}") #{day.name}
  149. else
  150. option(value="#{day.value}") #{day.name}
  151. input.js-apply-user-settings.left(type="submit" value="{{_ 'apply'}}")
  152. template(name="userDeletePopup")
  153. unless currentUser.isWorker
  154. p {{_ 'delete-user-confirm-popup'}}
  155. button.js-confirm.negate.full(type="submit") {{_ 'delete'}}