summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client/components/cards/cardDetails.jade117
-rw-r--r--client/components/cards/checklists.jade4
-rw-r--r--client/components/cards/subtasks.jade4
-rw-r--r--client/components/lists/listHeader.jade40
-rw-r--r--client/components/settings/informationBody.jade8
-rw-r--r--client/components/settings/peopleBody.jade13
-rw-r--r--client/components/settings/peopleBody.styl2
-rw-r--r--client/components/settings/settingBody.jade25
-rw-r--r--client/components/settings/settingBody.styl5
-rw-r--r--client/components/sidebar/sidebar.jade78
-rw-r--r--client/components/sidebar/sidebarFilters.jade15
-rw-r--r--client/components/users/userAvatar.jade2
-rw-r--r--client/components/users/userHeader.jade44
-rw-r--r--client/components/users/userHeader.js24
-rw-r--r--models/accountSettings.js12
15 files changed, 305 insertions, 88 deletions
diff --git a/client/components/cards/cardDetails.jade b/client/components/cards/cardDetails.jade
index 2b4f44b9..d7c7ca59 100644
--- a/client/components/cards/cardDetails.jade
+++ b/client/components/cards/cardDetails.jade
@@ -16,8 +16,8 @@ template(name="cardDetails")
class="{{#if canModifyCard}}js-open-inlined-form is-editable{{/if}}")
+viewer
= getTitle
- if isWatching
- i.fa.fa-eye.card-details-watch
+ if isWatching
+ i.card-details-watch.fa.fa-eye
.card-details-path
each parentList
|   >  
@@ -37,7 +37,9 @@ template(name="cardDetails")
.card-details-items
.card-details-item.card-details-item-received
- h3.card-details-item-title {{_ 'card-received'}}
+ h3
+ i.fa.fa-sign-out
+ card-details-item-title {{_ 'card-received'}}
if getReceived
+cardReceivedDate
else
@@ -45,7 +47,9 @@ template(name="cardDetails")
a.js-received-date {{_ 'add'}}
.card-details-item.card-details-item-start
- h3.card-details-item-title {{_ 'card-start'}}
+ h3
+ i.fa.fa-hourglass-start
+ card-details-item-title {{_ 'card-start'}}
if getStart
+cardStartDate
else
@@ -53,7 +57,9 @@ template(name="cardDetails")
a.js-start-date {{_ 'add'}}
.card-details-item.card-details-item-due
- h3.card-details-item-title {{_ 'card-due'}}
+ h3
+ i.fa.fa-sign-in
+ card-details-item-title {{_ 'card-due'}}
if getDue
+cardDueDate
else
@@ -61,7 +67,9 @@ template(name="cardDetails")
a.js-due-date {{_ 'add'}}
.card-details-item.card-details-item-end
- h3.card-details-item-title {{_ 'card-end'}}
+ h3
+ i.fa.fa-hourglass-end
+ card-details-item-title {{_ 'card-end'}}
if getEnd
+cardEndDate
else
@@ -70,7 +78,9 @@ template(name="cardDetails")
.card-details-items
.card-details-item.card-details-item-members
- h3.card-details-item-title {{_ 'members'}}
+ h3
+ i.fa.fa-users
+ card-details-item-title {{_ 'members'}}
each getMembers
+userAvatar(userId=this cardId=../_id)
| {{! XXX Hack to hide syntaxic coloration /// }}
@@ -79,7 +89,9 @@ template(name="cardDetails")
i.fa.fa-plus
.card-details-item.card-details-item-assignees
- h3.card-details-item-title {{_ 'assignee'}}
+ h3
+ i.fa.fa-user
+ card-details-item-title {{_ 'assignee'}}
each getAssignees
+userAvatarAssignee(userId=this cardId=../_id)
| {{! XXX Hack to hide syntaxic coloration /// }}
@@ -89,7 +101,9 @@ template(name="cardDetails")
i.fa.fa-plus
.card-details-item.card-details-item-labels
- h3.card-details-item-title {{_ 'labels'}}
+ h3
+ i.fa.fa-tags
+ card-details-item-title {{_ 'labels'}}
a(class="{{#if canModifyCard}}js-add-labels{{else}}is-disabled{{/if}}" title="{{_ 'card-labels-title'}}")
each labels
span.card-label(class="card-label-{{color}}" title=name)
@@ -118,7 +132,9 @@ template(name="cardDetails")
//- XXX We should use "editable" to avoid repetiting ourselves
if canModifyCard
- h3.card-details-item-title {{_ 'description'}}
+ h3
+ i.fa.fa-align-left
+ card-details-item-title {{_ 'description'}}
+inlinedCardDescription(classNames="card-description js-card-description")
+editor(autofocus=true)
| {{getUnsavedValue 'cardDescription' _id getDescription}}
@@ -145,7 +161,9 @@ template(name="cardDetails")
.card-details-items
.card-details-item.card-details-item-name
- h3.card-details-item-title {{_ 'requested-by'}}
+ h3
+ i.fa.fa-shopping-cart
+ card-details-item-title {{_ 'requested-by'}}
if canModifyCard
+inlinedForm(classNames="js-card-details-requester")
+editCardRequesterForm
@@ -161,7 +179,9 @@ template(name="cardDetails")
= getRequestedBy
.card-details-item.card-details-item-name
- h3.card-details-item-title {{_ 'assigned-by'}}
+ h3
+ i.fa.fa-user-plus
+ card-details-item-title {{_ 'assigned-by'}}
if canModifyCard
+inlinedForm(classNames="js-card-details-assigner")
+editCardAssignerForm
@@ -193,7 +213,9 @@ template(name="cardDetails")
hr
unless currentUser.isNoComments
.activity-title
- h3 {{ _ 'activity'}}
+ h3
+ i.fa.fa-history
+ | {{ _ 'activity'}}
if currentUser.isBoardMember
.material-toggle-switch
span.toggle-switch-title {{_ 'hide-system-messages'}}
@@ -235,32 +257,77 @@ template(name="editCardAssignerForm")
template(name="cardDetailsActionsPopup")
ul.pop-over-list
- li: a.js-toggle-watch-card {{#if isWatching}}{{_ 'unwatch'}}{{else}}{{_ 'watch'}}{{/if}}
+ li
+ a.js-toggle-watch-card
+ if isWatching
+ i.fa.fa-eye
+ | {{_ 'unwatch'}}
+ else
+ i.fa.fa-eye-slash
+ | {{_ 'watch'}}
if canModifyCard
hr
ul.pop-over-list
//li: a.js-members {{_ 'card-edit-members'}}
//li: a.js-labels {{_ 'card-edit-labels'}}
//li: a.js-attachments {{_ 'card-edit-attachments'}}
- li: a.js-custom-fields {{_ 'card-edit-custom-fields'}}
+ li
+ a.js-custom-fields
+ i.fa.fa-list-alt
+ | {{_ 'card-edit-custom-fields'}}
//li: a.js-received-date {{_ 'editCardReceivedDatePopup-title'}}
//li: a.js-start-date {{_ 'editCardStartDatePopup-title'}}
//li: a.js-due-date {{_ 'editCardDueDatePopup-title'}}
//li: a.js-end-date {{_ 'editCardEndDatePopup-title'}}
- li: a.js-spent-time {{_ 'editCardSpentTimePopup-title'}}
- li: a.js-set-card-color {{_ 'setCardColorPopup-title'}}
+ li
+ a.js-spent-time
+ i.fa.fa-clock-o
+ | {{_ 'editCardSpentTimePopup-title'}}
+ li
+ a.js-set-card-color
+ i.fa.fa-paint-brush
+ | {{_ 'setCardColorPopup-title'}}
hr
ul.pop-over-list
- li: a.js-move-card-to-top {{_ 'moveCardToTop-title'}}
- li: a.js-move-card-to-bottom {{_ 'moveCardToBottom-title'}}
+ li
+ a.js-move-card-to-top
+ i.fa.fa-arrow-up
+ | {{_ 'moveCardToTop-title'}}
+ li
+ a.js-move-card-to-bottom
+ i.fa.fa-arrow-down
+ | {{_ 'moveCardToBottom-title'}}
hr
ul.pop-over-list
- li: a.js-move-card {{_ 'moveCardPopup-title'}}
- li: a.js-copy-card {{_ 'copyCardPopup-title'}}
- li: a.js-copy-checklist-cards {{_ 'copyChecklistToManyCardsPopup-title'}}
+ li
+ a.js-move-card
+ i.fa.fa-arrow-right
+ | {{_ 'moveCardPopup-title'}}
+ li
+ a.js-copy-card
+ i.fa.fa-copy
+ | {{_ 'copyCardPopup-title'}}
+ hr
+ ul.pop-over-list
+ li
+ a.js-copy-checklist-cards
+ i.fa.fa-list
+ i.fa.fa-copy
+ | {{_ 'copyChecklistToManyCardsPopup-title'}}
unless archived
- li: a.js-archive {{_ 'archive-card'}}
- li: a.js-more {{_ 'cardMorePopup-title'}}
+ hr
+ ul.pop-over-list
+ li
+ a.js-archive
+ i.fa.fa-arrow-right
+ i.fa.fa-archive
+ | {{_ 'archive-card'}}
+ hr
+ ul.pop-over-list
+ li
+ a.js-more
+ i.fa.fa-link
+ | {{_ 'cardMorePopup-title'}}
template(name="moveCardPopup")
+boardsAndLists
@@ -349,7 +416,7 @@ template(name="cardAssigneePopup")
p.quiet @{{ user.username }}
ul.pop-over-list
if currentUser.isNotCommentOnly
- li: a.js-remove-assignee {{_ 'remove-member-from-card'}}
+ li: a.js-remove-assignee {{_ 'remove-member-from-card'}}
if $eq currentUser._id user._id
with currentUser
diff --git a/client/components/cards/checklists.jade b/client/components/cards/checklists.jade
index 279d3671..391769e9 100644
--- a/client/components/cards/checklists.jade
+++ b/client/components/cards/checklists.jade
@@ -1,5 +1,7 @@
template(name="checklists")
- h3 {{_ 'checklists'}}
+ h3
+ i.fa.fa-check
+ | {{_ 'checklists'}}
if toggleDeleteDialog.get
.board-overlay#card-details-overlay
+checklistDeleteDialog(checklist = checklistToDelete)
diff --git a/client/components/cards/subtasks.jade b/client/components/cards/subtasks.jade
index 7e64e23f..df35bed3 100644
--- a/client/components/cards/subtasks.jade
+++ b/client/components/cards/subtasks.jade
@@ -1,5 +1,7 @@
template(name="subtasks")
- h3 {{_ 'subtasks'}}
+ h3
+ i.fa.fa-sitemap
+ | {{_ 'subtasks'}}
if toggleDeleteDialog.get
.board-overlay#card-details-overlay
+subtaskDeleteDialog(subtask = subtaskToDelete)
diff --git a/client/components/lists/listHeader.jade b/client/components/lists/listHeader.jade
index 631f68a0..6468839d 100644
--- a/client/components/lists/listHeader.jade
+++ b/client/components/lists/listHeader.jade
@@ -56,25 +56,45 @@ template(name="editListTitleForm")
template(name="listActionPopup")
ul.pop-over-list
- li: a.js-toggle-watch-list {{#if isWatching}}{{_ 'unwatch'}}{{else}}{{_ 'watch'}}{{/if}}
+ li
+ a.js-toggle-watch-list
+ if isWatching
+ i.fa.fa-eye
+ | {{_ 'unwatch'}}
+ else
+ i.fa.fa-eye-slash
+ | {{_ 'watch'}}
unless currentUser.isCommentOnly
- hr
ul.pop-over-list
- li: a.js-set-color-list {{_ 'set-color-list'}}
- hr
+ li
+ a.js-set-color-list
+ i.fa.fa-paint-brush
+ | {{_ 'set-color-list'}}
ul.pop-over-list
if cards.count
- li: a.js-select-cards {{_ 'list-select-cards'}}
- hr
+ li
+ a.js-select-cards
+ i.fa.fa-check-square
+ | {{_ 'list-select-cards'}}
if currentUser.isBoardAdmin
ul.pop-over-list
- li: a.js-set-wip-limit {{#if isWipLimitEnabled }}{{_ 'edit-wip-limit'}}{{else}}{{_ 'setWipLimitPopup-title'}}{{/if}}
- hr
+ li
+ a.js-set-wip-limit
+ i.fa.fa-ban
+ | {{#if isWipLimitEnabled }}{{_ 'edit-wip-limit'}}{{else}}{{_ 'setWipLimitPopup-title'}}{{/if}}
+ hr
ul.pop-over-list
- li: a.js-close-list {{_ 'archive-list'}}
+ li
+ a.js-close-list
+ i.fa.fa-arrow-right
+ i.fa.fa-archive
+ | {{_ 'archive-list'}}
hr
ul.pop-over-list
- li: a.js-more {{_ 'listMorePopup-title'}}
+ li
+ a.js-more
+ i.fa.fa-link
+ | {{_ 'listMorePopup-title'}}
template(name="boardLists")
ul.pop-over-list
diff --git a/client/components/settings/informationBody.jade b/client/components/settings/informationBody.jade
index 2c615ffd..0f85dd9c 100644
--- a/client/components/settings/informationBody.jade
+++ b/client/components/settings/informationBody.jade
@@ -4,12 +4,16 @@ template(name='information')
| {{_ 'error-notAuthorized'}}
else
.content-title
- span {{_ 'info'}}
+ span
+ i.fa.fa-info-circle
+ | {{_ 'info'}}
.content-body
.side-menu
ul
li.active
- a.js-setting-menu(data-id="information-display") {{_ 'info'}}
+ a.js-setting-menu(data-id="information-display")
+ i.fa.fa-info-circle
+ | {{_ 'info'}}
.main-body
+statistics
diff --git a/client/components/settings/peopleBody.jade b/client/components/settings/peopleBody.jade
index d8f672b0..b8a94337 100644
--- a/client/components/settings/peopleBody.jade
+++ b/client/components/settings/peopleBody.jade
@@ -5,16 +5,22 @@ template(name="people")
else
.content-title.ext-box
.ext-box-left
- span {{_ 'people'}}
+ span
+ i.fa.fa-users
+ | {{_ 'people'}}
input#searchInput(placeholder="{{_ 'search'}}")
- button#searchButton {{_ 'search'}}
+ button#searchButton
+ i.fa.fa-search
+ | {{_ 'search'}}
.ext-box-right
span {{_ 'people-number'}} #{peopleNumber}
.content-body
.side-menu
ul
li.active
- a.js-setting-menu(data-id="people-setting") {{_ 'people'}}
+ a.js-setting-menu(data-id="people-setting")
+ i.fa.fa-users
+ | {{_ 'people'}}
.main-body
if loading.get
+spinner
@@ -90,6 +96,7 @@ template(name="peopleRow")
td {{_ userData.authenticationMethod }}
td
a.edit-user
+ i.fa.fa-edit
| {{_ 'edit'}}
template(name="editUserPopup")
diff --git a/client/components/settings/peopleBody.styl b/client/components/settings/peopleBody.styl
index 80387611..c223e181 100644
--- a/client/components/settings/peopleBody.styl
+++ b/client/components/settings/peopleBody.styl
@@ -33,7 +33,7 @@ table
padding: 0;
button
- min-width: 60px;
+ min-width: 90px;
.content-wrapper
margin-top: 10px
diff --git a/client/components/settings/settingBody.jade b/client/components/settings/settingBody.jade
index 04b635e8..877fe6e2 100644
--- a/client/components/settings/settingBody.jade
+++ b/client/components/settings/settingBody.jade
@@ -4,22 +4,35 @@ template(name="setting")
| {{_ 'error-notAuthorized'}}
else
.content-title
+ i.fa.fa-cog
span {{_ 'settings'}}
.content-body
.side-menu
ul
li.active
- a.js-setting-menu(data-id="registration-setting") {{_ 'registration'}}
+ a.js-setting-menu(data-id="registration-setting")
+ i.fa.fa-sign-in
+ | {{_ 'registration'}}
li
- a.js-setting-menu(data-id="email-setting") {{_ 'email'}}
+ a.js-setting-menu(data-id="email-setting")
+ i.fa.fa-envelope
+ | {{_ 'email'}}
li
- a.js-setting-menu(data-id="account-setting") {{_ 'accounts'}}
+ a.js-setting-menu(data-id="account-setting")
+ i.fa.fa-users
+ | {{_ 'accounts'}}
li
- a.js-setting-menu(data-id="announcement-setting") {{_ 'admin-announcement'}}
+ a.js-setting-menu(data-id="announcement-setting")
+ i.fa.fa-bullhorn
+ | {{_ 'admin-announcement'}}
li
- a.js-setting-menu(data-id="layout-setting") {{_ 'layout'}}
+ a.js-setting-menu(data-id="layout-setting")
+ i.fa.fa-object-group
+ | {{_ 'layout'}}
li
- a.js-setting-menu(data-id="webhook-setting") {{_ 'global-webhook'}}
+ a.js-setting-menu(data-id="webhook-setting")
+ i.fa.fa-globe
+ | {{_ 'global-webhook'}}
.main-body
if loading.get
+spinner
diff --git a/client/components/settings/settingBody.styl b/client/components/settings/settingBody.styl
index bcbd2ea1..d6ac32b2 100644
--- a/client/components/settings/settingBody.styl
+++ b/client/components/settings/settingBody.styl
@@ -41,15 +41,18 @@
&:hover
background #fff
box-shadow 0 1px 2px rgba(0,0,0,0.15);
+
a
@extends .flex
padding: 1rem 0 1rem 1rem
width: 100% - 5rem
-
span
font-size: 13px
+ i
+ margin-right: 20px
+
.main-body
padding: 0.1em 1em
-webkit-user-select: text // Safari 3.1+
diff --git a/client/components/sidebar/sidebar.jade b/client/components/sidebar/sidebar.jade
index ccfadc0c..e5adc0cd 100644
--- a/client/components/sidebar/sidebar.jade
+++ b/client/components/sidebar/sidebar.jade
@@ -37,7 +37,7 @@ template(name='homeSidebar')
template(name="membersWidget")
.board-widget.board-widget-members
h3
- i.fa.fa-user
+ i.fa.fa-users
| {{_ 'members'}}
unless currentUser.isCommentOnly
a.board-header-btn.js-open-board-menu(title="{{_ 'boardMenuPopup-title'}}").right
@@ -130,7 +130,9 @@ template(name="chooseBoardSource")
template(name="archiveBoardPopup")
p {{_ 'close-board-pop'}}
- button.js-confirm.negate.full(type="submit") {{_ 'archive'}}
+ button.js-confirm.negate.full(type="submit")
+ i.fa.fa-archive
+ | {{_ 'archive'}}
template(name="outgoingWebhooksPopup")
each integrations
@@ -163,37 +165,78 @@ template(name="outgoingWebhooksPopup")
template(name="boardMenuPopup")
ul.pop-over-list
li: a.js-custom-fields {{_ 'custom-fields'}}
- li: a.js-open-archives {{_ 'archived-items'}}
+ li
+ a.js-open-archives
+ i.fa.fa-archive
+ | {{_ 'archived-items'}}
if currentUser.isBoardAdmin
- li: a.js-change-board-color {{_ 'board-change-color'}}
+ li
+ a.js-change-board-color
+ i.fa.fa-paint-brush
+ | {{_ 'board-change-color'}}
+
//-
XXX Language should be handled by sandstorm, but for now display a
language selection link in the board menu. This link is normally present
in the header bar that is not displayed on sandstorm.
if isSandstorm
- li: a.js-change-language {{_ 'language'}}
+ li
+ a.js-change-language
+ i.fa.fa-flag
+ | {{_ 'language'}}
unless isSandstorm
if currentUser.isBoardAdmin
hr
ul.pop-over-list
- li: a(href="{{exportUrl}}", download="{{exportFilename}}") {{_ 'export-board'}}
- unless currentBoard.isTemplatesBoard
- li: a.js-archive-board {{_ 'archive-board'}}
- li: a.js-outgoing-webhooks {{_ 'outgoing-webhooks'}}
- hr
- ul.pop-over-list
- li: a.js-subtask-settings {{_ 'subtask-settings'}}
+ li
+ a(href="{{exportUrl}}", download="{{exportFilename}}")
+ i.fa.fa-share-alt
+ | {{_ 'export-board'}}
+ li
+ a.js-outgoing-webhooks
+ i.fa.fa-globe
+ | {{_ 'outgoing-webhooks'}}
+ li
+ a.js-subtask-settings
+ i.fa.fa-sitemap
+ | {{_ 'subtask-settings'}}
+ unless currentBoard.isTemplatesBoard
+ hr
+ ul.pop-over-list
+ li
+ a.js-archive-board
+ i.fa.fa-arrow-right
+ i.fa.fa-archive
+ | {{_ 'archive-board'}}
if isSandstorm
hr
ul.pop-over-list
- li: a(href="{{exportUrl}}", download="{{exportFilename}}") {{_ 'export-board'}}
- li: a.js-import-board {{_ 'import-board-c'}}
- li: a.js-archive-board {{_ 'archive-board'}}
- li: a.js-outgoing-webhooks {{_ 'outgoing-webhooks'}}
+ li
+ a(href="{{exportUrl}}", download="{{exportFilename}}")
+ i.fa.fa-share-alt
+ i.fa.fa-sign-out
+ | {{_ 'export-board'}}
+ li
+ a.js-import-board
+ i.fa.fa-share-alt
+ i.fa.fa-sign-in
+ | {{_ 'import-board-c'}}
+ li
+ a.js-archive-board
+ i.fa.fa-arrow-right
+ i.fa.fa-archive
+ | {{_ 'archive-board'}}
+ li
+ a.js-outgoing-webhooks
+ i.fa.fa-globe
+ | {{_ 'outgoing-webhooks'}}
hr
ul.pop-over-list
- li: a.js-subtask-settings {{_ 'subtask-settings'}}
+ li
+ a.js-subtask-settings
+ i.fa.fa-sitemap
+ | {{_ 'subtask-settings'}}
template(name="labelsWidget")
.board-widget.board-widget-labels
@@ -238,7 +281,6 @@ template(name="memberPopup")
else if currentUser.isBoardAdmin
a.js-remove-member {{_ 'remove-from-board'}}
-
template(name="removeMemberPopup")
p {{_ 'remove-member-pop' name=user.profile.fullname username=user.username boardTitle=board.title}}
button.js-confirm.negate.full(type="submit") {{_ 'remove-member'}}
diff --git a/client/components/sidebar/sidebarFilters.jade b/client/components/sidebar/sidebarFilters.jade
index 5f929cb9..7f31dada 100644
--- a/client/components/sidebar/sidebarFilters.jade
+++ b/client/components/sidebar/sidebarFilters.jade
@@ -117,13 +117,14 @@ template(name="multiselectionSidebar")
i.fa.fa-check
else if someSelectedElementHave 'member' _id
i.fa.fa-ellipsis-h
- hr
- a.sidebar-btn.js-move-selection
- i.fa.fa-share
- span {{_ 'move-selection'}}
- a.sidebar-btn.js-archive-selection
- i.fa.fa-archive
- span {{_ 'archive-selection'}}
+ unless currentUser.isWorker
+ hr
+ a.sidebar-btn.js-move-selection
+ i.fa.fa-share
+ span {{_ 'move-selection'}}
+ a.sidebar-btn.js-archive-selection
+ i.fa.fa-archive
+ span {{_ 'archive-selection'}}
template(name="disambiguateMultiLabelPopup")
p {{_ 'what-to-do'}}
diff --git a/client/components/users/userAvatar.jade b/client/components/users/userAvatar.jade
index ebfa48ba..ff4a1ce6 100644
--- a/client/components/users/userAvatar.jade
+++ b/client/components/users/userAvatar.jade
@@ -73,7 +73,7 @@ template(name="cardMemberPopup")
p.quiet @{{ user.username }}
ul.pop-over-list
if currentUser.isNotCommentOnly
- li: a.js-remove-member {{_ 'remove-member-from-card'}}
+ li: a.js-remove-member {{_ 'remove-member-from-card'}}
if $eq currentUser._id user._id
with currentUser
diff --git a/client/components/users/userHeader.jade b/client/components/users/userHeader.jade
index 50a80396..aa567e91 100644
--- a/client/components/users/userHeader.jade
+++ b/client/components/users/userHeader.jade
@@ -13,21 +13,45 @@ template(name="headerUserBar")
template(name="memberMenuPopup")
ul.pop-over-list
with currentUser
- li: a.js-edit-profile {{_ 'edit-profile'}}
- li: a.js-change-settings {{_ 'change-settings'}}
- li: a.js-change-avatar {{_ 'edit-avatar'}}
+ li
+ a.js-edit-profile
+ i.fa.fa-user
+ | {{_ 'edit-profile'}}
+ li
+ a.js-change-settings
+ i.fa.fa-cog
+ | {{_ 'change-settings'}}
+ li
+ a.js-change-avatar
+ i.fa.fa-picture-o
+ | {{_ 'edit-avatar'}}
unless isSandstorm
- li: a.js-change-password {{_ 'changePasswordPopup-title'}}
- li: a.js-change-language {{_ 'changeLanguagePopup-title'}}
+ li
+ a.js-change-password
+ i.fa.fa-key
+ | {{_ 'changePasswordPopup-title'}}
+ li
+ a.js-change-language
+ i.fa.fa-flag
+ | {{_ 'changeLanguagePopup-title'}}
if currentUser.isAdmin
- li: a.js-go-setting(href="{{pathFor 'setting'}}") {{_ 'admin-panel'}}
+ li
+ a.js-go-setting(href="{{pathFor 'setting'}}")
+ i.fa.fa-lock
+ | {{_ 'admin-panel'}}
hr
ul.pop-over-list
- li: a(href="{{pathFor 'board' id=templatesBoardId slug=templatesBoardSlug}}") {{_ 'templates'}}
+ li
+ a(href="{{pathFor 'board' id=templatesBoardId slug=templatesBoardSlug}}")
+ i.fa.fa-clone
+ | {{_ 'templates'}}
unless isSandstorm
hr
ul.pop-over-list
- li: a.js-logout {{_ 'log-out'}}
+ li
+ a.js-logout
+ i.fa.fa-sign-out
+ | {{_ 'log-out'}}
template(name="editProfilePopup")
form
@@ -75,21 +99,23 @@ template(name="changeSettingsPopup")
ul.pop-over-list
li
a.js-toggle-system-messages
+ i.fa.fa-comments-o
| {{_ 'hide-system-messages'}}
if hiddenSystemMessages
i.fa.fa-check
li
a.js-toggle-desktop-drag-handles
+ i.fa.fa-arrows
| {{_ 'show-desktop-drag-handles'}}
if showDesktopDragHandles
i.fa.fa-check
li
label.bold
+ i.fa.fa-sort-numeric-asc
| {{_ 'show-cards-minimum-count'}}
input#show-cards-count-at.inline-input.left(type="number" value="#{showCardsCountAt}" min="0" max="99" onkeydown="return false")
input.js-apply-show-cards-at.left(type="submit" value="{{_ 'apply'}}")
-
template(name="userDeletePopup")
p {{_ 'delete-user-confirm-popup'}}
button.js-confirm.negate.full(type="submit") {{_ 'delete'}}
diff --git a/client/components/users/userHeader.js b/client/components/users/userHeader.js
index 5f36ef54..847d30fb 100644
--- a/client/components/users/userHeader.js
+++ b/client/components/users/userHeader.js
@@ -45,13 +45,31 @@ Template.memberMenuPopup.events({
Template.editProfilePopup.helpers({
allowEmailChange() {
- return AccountSettings.findOne('accounts-allowEmailChange').booleanValue;
+ Meteor.call('AccountSettings.allowEmailChange', (_, result) => {
+ if (result) {
+ return true;
+ } else {
+ return false;
+ }
+ });
},
allowUserNameChange() {
- return AccountSettings.findOne('accounts-allowUserNameChange').booleanValue;
+ Meteor.call('AccountSettings.allowUserNameChange', (_, result) => {
+ if (result) {
+ return true;
+ } else {
+ return false;
+ }
+ });
},
allowUserDelete() {
- return AccountSettings.findOne('accounts-allowUserDelete').booleanValue;
+ Meteor.call('AccountSettings.allowUserDelete', (_, result) => {
+ if (result) {
+ return true;
+ } else {
+ return false;
+ }
+ });
},
});
diff --git a/models/accountSettings.js b/models/accountSettings.js
index f61614b8..a20303f5 100644
--- a/models/accountSettings.js
+++ b/models/accountSettings.js
@@ -82,4 +82,16 @@ if (Meteor.isServer) {
});
}
+AccountSettings.helpers({
+ allowEmailChange() {
+ return AccountSettings.findOne('accounts-allowEmailChange').booleanValue;
+ },
+ allowUserNameChange() {
+ return AccountSettings.findOne('accounts-allowUserNameChange').booleanValue;
+ },
+ allowUserDelete() {
+ return AccountSettings.findOne('accounts-allowUserDelete').booleanValue;
+ },
+});
+
export default AccountSettings;