Team Member Data Function Filter
parent
47c7998847
commit
a4f65b947a
|
@ -45,6 +45,9 @@ resourceProvider = ($repo) ->
|
|||
service.stats = (projectId) ->
|
||||
return $repo.queryOneRaw("projects", "#{projectId}/stats")
|
||||
|
||||
service.memberStats = (projectId) ->
|
||||
return $repo.queryOneRaw("projects", "#{projectId}/member_stats")
|
||||
|
||||
service.tagsColors = (id) ->
|
||||
return $repo.queryOne("projects", "#{id}/tags_colors")
|
||||
|
||||
|
|
|
@ -74,6 +74,24 @@ class TeamController extends mixOf(taiga.Controller, taiga.PageMixin)
|
|||
|
||||
return project
|
||||
|
||||
loadMemberStats: ->
|
||||
return @rs.projects.memberStats(@scope.projectId).then (stats) =>
|
||||
@scope.stats = @.processStats(stats)
|
||||
|
||||
processStat: (stat) ->
|
||||
max = _.max(stat)
|
||||
singleStat = _.map stat, (value, key) ->
|
||||
if value == max
|
||||
return [key, 1]
|
||||
return [key, (value * 0.3) / max]
|
||||
singleStat = _.object(singleStat)
|
||||
return singleStat
|
||||
|
||||
processStats: (stats) ->
|
||||
for key,value of stats
|
||||
stats[key] = @.processStat(value)
|
||||
return stats
|
||||
|
||||
loadInitialData: ->
|
||||
promise = @repo.resolve({pslug: @params.pslug}).then (data) =>
|
||||
@scope.projectId = data.project
|
||||
|
@ -82,6 +100,7 @@ class TeamController extends mixOf(taiga.Controller, taiga.PageMixin)
|
|||
return promise.then(=> @.loadProject())
|
||||
.then(=> @.loadUsersAndRoles())
|
||||
.then(=> @.loadMembers())
|
||||
.then(=> @.loadMemberStats())
|
||||
|
||||
module.controller("TeamController", TeamController)
|
||||
|
||||
|
@ -131,7 +150,7 @@ TeamMembersDirective = () ->
|
|||
</figure>
|
||||
</div>
|
||||
<div class="attribute">
|
||||
<span class="icon icon-github"></span>
|
||||
<span class="icon icon-edit" ng-style="{'opacity': stats.closed_tasks[user.user_id]}"></span>
|
||||
</div>
|
||||
<div class="attribute">
|
||||
<span class="icon icon-github"></span>
|
||||
|
@ -152,7 +171,7 @@ TeamMembersDirective = () ->
|
|||
"""
|
||||
return {
|
||||
link: (scope) ->
|
||||
if !_.isArray(scope.memberships)
|
||||
if not _.isArray(scope.memberships)
|
||||
scope.memberships = [scope.memberships]
|
||||
|
||||
template: template
|
||||
|
@ -160,7 +179,8 @@ TeamMembersDirective = () ->
|
|||
memberships: "=",
|
||||
filtersQ: "=filtersq",
|
||||
filtersRole: "=filtersrole",
|
||||
currentUser: "@currentuser"
|
||||
currentUser: "@currentuser",
|
||||
stats: "="
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue