Commit ed9cff9a3c0a230f5497e85e8e178699ed02683e
1 parent
7d57b96e
Exists in
master
and in
4 other branches
Restyle project members page to fit both group and personal projects
Showing
7 changed files
with
44 additions
and
63 deletions
Show diff stats
app/assets/stylesheets/gitlab_bootstrap/lists.scss
app/controllers/dashboard_controller.rb
@@ -34,11 +34,12 @@ class DashboardController < ApplicationController | @@ -34,11 +34,12 @@ class DashboardController < ApplicationController | ||
34 | @projects | 34 | @projects |
35 | end | 35 | end |
36 | 36 | ||
37 | - @projects = @projects.tagged_with(params[:label]) if params[:label].present? | ||
38 | @projects = @projects.search(params[:search]) if params[:search].present? | 37 | @projects = @projects.search(params[:search]) if params[:search].present? |
39 | - @projects = @projects.page(params[:page]).per(30) | ||
40 | 38 | ||
41 | @labels = Project.where(id: @projects.map(&:id)).tags_on(:labels) | 39 | @labels = Project.where(id: @projects.map(&:id)).tags_on(:labels) |
40 | + | ||
41 | + @projects = @projects.tagged_with(params[:label]) if params[:label].present? | ||
42 | + @projects = @projects.page(params[:page]).per(30) | ||
42 | end | 43 | end |
43 | 44 | ||
44 | # Get authored or assigned open merge requests | 45 | # Get authored or assigned open merge requests |
app/controllers/groups_controller.rb
@@ -63,7 +63,7 @@ class GroupsController < ApplicationController | @@ -63,7 +63,7 @@ class GroupsController < ApplicationController | ||
63 | 63 | ||
64 | def people | 64 | def people |
65 | @project = group.projects.find(params[:project_id]) if params[:project_id] | 65 | @project = group.projects.find(params[:project_id]) if params[:project_id] |
66 | - @members = group.users_groups | 66 | + @members = group.users_groups.order('group_access DESC') |
67 | @users_group = UsersGroup.new | 67 | @users_group = UsersGroup.new |
68 | end | 68 | end |
69 | 69 |
app/controllers/team_members_controller.rb
@@ -4,11 +4,8 @@ class TeamMembersController < ProjectResourceController | @@ -4,11 +4,8 @@ class TeamMembersController < ProjectResourceController | ||
4 | before_filter :authorize_admin_project!, except: [:index, :show] | 4 | before_filter :authorize_admin_project!, except: [:index, :show] |
5 | 5 | ||
6 | def index | 6 | def index |
7 | - @team = @project.users_projects.scoped | ||
8 | - @team = @team.send(params[:type]) if %w(masters developers reporters guests).include?(params[:type]) | ||
9 | - @team = @team.sort_by(&:project_access).reverse.group_by(&:project_access) | ||
10 | - | ||
11 | @group = @project.group | 7 | @group = @project.group |
8 | + @users_projects = @project.users_projects.order('project_access DESC') | ||
12 | @assigned_teams = @project.user_team_project_relationships | 9 | @assigned_teams = @project.user_team_project_relationships |
13 | end | 10 | end |
14 | 11 |
@@ -0,0 +1,7 @@ | @@ -0,0 +1,7 @@ | ||
1 | +.ui-box | ||
2 | + %h5.title | ||
3 | + = link_to people_group_path(@group) do | ||
4 | + Members of #{@group.name} group | ||
5 | + %ul.well-list | ||
6 | + - @group.users_groups.order('group_access DESC').each do |member| | ||
7 | + = render 'users_groups/users_group', member: member, show_controls: false |
app/views/team_members/_team.html.haml
1 | -- can_admin_project = (can? current_user, :admin_project, @project) | ||
2 | -- team.each do |access, members| | ||
3 | - - role = Project.access_options.key(access).pluralize | ||
4 | - .ui-box{class: role.downcase} | 1 | +.team-table |
2 | + - can_admin_project = (can? current_user, :admin_project, @project) | ||
3 | + .ui-box | ||
5 | %h5.title | 4 | %h5.title |
6 | - = role | ||
7 | - %span.light (#{members.size}) | 5 | + Project members (#{members.count}) |
8 | %ul.well-list | 6 | %ul.well-list |
9 | - - members.sort_by(&:user_name).each do |team_member| | 7 | + - members.each do |team_member| |
10 | = render 'team_members/team_member', member: team_member, current_user_can_admin_project: can_admin_project | 8 | = render 'team_members/team_member', member: team_member, current_user_can_admin_project: can_admin_project |
app/views/team_members/index.html.haml
1 | = render "projects/settings_nav" | 1 | = render "projects/settings_nav" |
2 | %h3.page_title | 2 | %h3.page_title |
3 | - Project Members | ||
4 | - (#{@project.users.count}) | ||
5 | - %small | ||
6 | - Read more about project permissions | ||
7 | - %strong= link_to "here", help_permissions_path, class: "vlink" | 3 | + Users with access to this project |
8 | 4 | ||
9 | - if can? current_user, :admin_team_member, @project | 5 | - if can? current_user, :admin_team_member, @project |
10 | %span.pull-right | 6 | %span.pull-right |
@@ -15,51 +11,27 @@ | @@ -15,51 +11,27 @@ | ||
15 | = link_to new_project_team_member_path(@project), class: "btn btn-primary small grouped", title: "New Team Member" do | 11 | = link_to new_project_team_member_path(@project), class: "btn btn-primary small grouped", title: "New Team Member" do |
16 | New Team Member | 12 | New Team Member |
17 | 13 | ||
18 | -%hr | 14 | +%p.light |
15 | + Read more about project permissions | ||
16 | + %strong= link_to "here", help_permissions_path, class: "vlink" | ||
19 | 17 | ||
20 | 18 | ||
21 | -.clearfix | ||
22 | -.row | ||
23 | - .span3 | ||
24 | - %ul.nav.nav-pills.nav-stacked | ||
25 | - %li{class: ("active" if !params[:type])} | ||
26 | - = link_to project_team_index_path(type: nil) do | ||
27 | - All | ||
28 | - %li{class: ("active" if params[:type] == 'masters')} | ||
29 | - = link_to project_team_index_path(type: 'masters') do | ||
30 | - Masters | ||
31 | - %span.pull-right= @project.users_projects.masters.count | ||
32 | - %li{class: ("active" if params[:type] == 'developers')} | ||
33 | - = link_to project_team_index_path(type: 'developers') do | ||
34 | - Developers | ||
35 | - %span.pull-right= @project.users_projects.developers.count | ||
36 | - %li{class: ("active" if params[:type] == 'reporters')} | ||
37 | - = link_to project_team_index_path(type: 'reporters') do | ||
38 | - Reporters | ||
39 | - %span.pull-right= @project.users_projects.reporters.count | ||
40 | - %li{class: ("active" if params[:type] == 'guests')} | ||
41 | - = link_to project_team_index_path(type: 'guests') do | ||
42 | - Guests | ||
43 | - %span.pull-right= @project.users_projects.guests.count | ||
44 | - | ||
45 | - - if @assigned_teams.present? | ||
46 | - %h5 | ||
47 | - Assigned teams | ||
48 | - (#{@project.user_teams.count}) | ||
49 | - %div | ||
50 | - = render "team_members/assigned_teams", assigned_teams: @assigned_teams | ||
51 | - | ||
52 | - .span9 | ||
53 | - - if @group | ||
54 | - .ui-box | ||
55 | - %h5.title | ||
56 | - = link_to people_group_path(@group) do | ||
57 | - Members of #{@group.name} group | ||
58 | - %ul.well-list | ||
59 | - - @group.users_groups.each do |member| | ||
60 | - = render 'users_groups/users_group', member: member, show_controls: false | ||
61 | - %div.team-table | ||
62 | - = render "team_members/team", team: @team | ||
63 | - | ||
64 | 19 | ||
20 | +.clearfix | ||
65 | 21 | ||
22 | +- if @group | ||
23 | + .row | ||
24 | + .span6 | ||
25 | + = render "team_members/group_members" | ||
26 | + .span6 | ||
27 | + = render "team_members/team", members: @users_projects | ||
28 | + | ||
29 | +- else | ||
30 | + = render "team_members/team", members: @users_projects | ||
31 | + | ||
32 | +- if @assigned_teams.present? | ||
33 | + %h5 | ||
34 | + Assigned teams | ||
35 | + (#{@project.user_teams.count}) | ||
36 | + %div | ||
37 | + = render "team_members/assigned_teams", assigned_teams: @assigned_teams |