diff --git a/app/coffee/modules/team/main.coffee b/app/coffee/modules/team/main.coffee index ed72d1d9..5991b7c1 100644 --- a/app/coffee/modules/team/main.coffee +++ b/app/coffee/modules/team/main.coffee @@ -41,10 +41,11 @@ class TeamController extends mixOf(taiga.Controller, taiga.PageMixin) "$tgNavUrls", "$appTitle", "$tgAuth", - "$translate" + "$translate", + "tgProjectService" ] - constructor: (@scope, @rootscope, @repo, @rs, @params, @q, @location, @navUrls, @appTitle, @auth, @translate) -> + constructor: (@scope, @rootscope, @repo, @rs, @params, @q, @location, @navUrls, @appTitle, @auth, @translate, @projectService) -> @scope.sectionName = "TEAM.SECTION_NAME" promise = @.loadInitialData() @@ -64,27 +65,28 @@ class TeamController extends mixOf(taiga.Controller, taiga.PageMixin) @scope.filtersRole = null loadMembers: -> - return @rs.memberships.list(@scope.projectId, {}, false).then (data) => - currentUser = @auth.getUser() - if currentUser? and not currentUser.photo? - currentUser.photo = "/images/unnamed.png" + currentUser = @auth.getUser() - @scope.currentUser = _.find data, (membership) => - return currentUser? and membership.user == currentUser.id + if currentUser? and not currentUser.photo? + currentUser.photo = "/images/unnamed.png" - @scope.totals = {} - _.forEach data, (membership) => - @scope.totals[membership.user] = 0 + memberships = @projectService.project.toJS().memberships - @scope.memberships = _.filter data, (membership) => - if membership.user && (not currentUser? or membership.user != currentUser.id) && membership.is_user_active - return membership + @scope.currentUser = _.find memberships, (membership) => + return currentUser? and membership.user == currentUser.id - for membership in @scope.memberships - if not membership.photo? - membership.photo = "/images/unnamed.png" + @scope.totals = {} - return data + _.forEach memberships, (membership) => + @scope.totals[membership.user] = 0 + + @scope.memberships = _.filter memberships, (membership) => + if membership.user && (not currentUser? or membership.user != currentUser.id) + return membership + + for membership in @scope.memberships + if not membership.photo? + membership.photo = "/images/unnamed.png" loadProject: -> return @rs.projects.getBySlug(@params.pslug).then (project) => @@ -130,7 +132,9 @@ class TeamController extends mixOf(taiga.Controller, taiga.PageMixin) promise = @.loadProject() return promise.then (project) => @.fillUsersAndRoles(project.users, project.roles) - return @.loadMembers().then(=> @.loadMemberStats()) + @.loadMembers() + + return @.loadMemberStats() module.controller("TeamController", TeamController) diff --git a/app/partials/team/team-members.jade b/app/partials/team/team-members.jade index 7cc07391..b941b9d7 100644 --- a/app/partials/team/team-members.jade +++ b/app/partials/team/team-members.jade @@ -4,9 +4,8 @@ img(tg-bo-src="user.photo", tg-bo-alt="user.full_name") figcaption - span.name(tg-bo-bind="user.full_name") - - span.position(tg-bo-bind="user.role_name") + a.name(tg-nav="user-profile:username=user.username", title="{{::user.full_name }}") {{::user.full_name}} + span.position {{::user.role_name}} .member-stats(tg-team-member-stats, stats="stats", user="user.user",