Merge pull request #1443 from alexhermida/ft/add_multiple_avatar_kanban

Add multiple avatar for US card in Kanban
stable
Alex Hermida 2018-04-24 22:34:17 +02:00 committed by GitHub
commit 6bad2b3060
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 24 additions and 2 deletions

View File

@ -223,6 +223,12 @@ class KanbanUserstoriesService extends taiga.Service
us.id = usModel.id us.id = usModel.id
us.assigned_to = @.usersById[usModel.assigned_to] us.assigned_to = @.usersById[usModel.assigned_to]
us.assigned_users = []
usModel.assigned_users.forEach (assignedUserId) =>
assignedUserData = @.usersById[assignedUserId]
us.assigned_users.push(assignedUserData)
us.colorized_tags = _.map us.model.tags, (tag) => us.colorized_tags = _.map us.model.tags, (tag) =>
return {name: tag[0], color: tag[1]} return {name: tag[0], color: tag[1]}

View File

@ -1,11 +1,20 @@
.card-owner .card-owner
.card-owner-info(ng-if="vm.item.get('assigned_to')") .card-owner-info(ng-if="vm.item.get('assigned_to') && (!vm.hasMultipleAssignedUsers() || !vm.visible('owner'))")
.card-owner-avatar .card-owner-avatar
img( img(
ng-class="{'is-iocaine': vm.item.getIn(['model', 'is_iocaine'])}" ng-class="{'is-iocaine': vm.item.getIn(['model', 'is_iocaine'])}"
tg-avatar="vm.item.get('assigned_to')" tg-avatar="vm.item.get('assigned_to')"
) )
span.card-owner-name(ng-if="vm.visible('owner')") {{vm.item.getIn(['assigned_to', 'full_name'])}} span.card-owner-name(ng-if="vm.visible('owner') && !vm.hasMultipleAssignedUsers()") {{vm.item.getIn(['assigned_to', 'full_name'])}}
div(ng-if="!vm.visible('owner')")
include card-title
.card-owner-info.multiple(ng-if="vm.item.get('assigned_to') && vm.hasMultipleAssignedUsers() && vm.visible('owner')")
.card-owner-avatar(tg-repeat="assignedUser in vm.item.get('assigned_users')")
img(
ng-class="{'is-iocaine': vm.item.getIn(['model', 'is_iocaine'])}"
tg-avatar="assignedUser"
)
div(ng-if="!vm.visible('owner')") div(ng-if="!vm.visible('owner')")
include card-title include card-title

View File

@ -27,6 +27,10 @@ class CardController
tasks = @.item.getIn(['model', 'tasks']) tasks = @.item.getIn(['model', 'tasks'])
return tasks and tasks.size > 0 return tasks and tasks.size > 0
hasMultipleAssignedUsers: () ->
assignedUsers = @.item.getIn(['model', 'assigned_users'])
return assignedUsers and assignedUsers.size > 1
hasVisibleAttachments: () -> hasVisibleAttachments: () ->
return @.item.get('images').size > 0 return @.item.get('images').size > 0

View File

@ -79,6 +79,9 @@
.card-owner-info { .card-owner-info {
align-items: center; align-items: center;
display: flex; display: flex;
&.multiple .card-owner-avatar img {
margin-right: .45rem;
}
} }
.card-owner-avatar { .card-owner-avatar {
line-height: 0; line-height: 0;