Commit ed9cff9a3c0a230f5497e85e8e178699ed02683e

Authored by Dmitriy Zaporozhets
1 parent 7d57b96e

Restyle project members page to fit both group and personal projects

app/assets/stylesheets/gitlab_bootstrap/lists.scss
... ... @@ -16,6 +16,12 @@
16 16 color: #888;
17 17 }
18 18  
  19 + &.unstyled {
  20 + &:hover {
  21 + background: none;
  22 + }
  23 + }
  24 +
19 25 &.smoke { background-color: #f5f5f5; }
20 26  
21 27 &:hover {
... ...
app/controllers/dashboard_controller.rb
... ... @@ -34,11 +34,12 @@ class DashboardController < ApplicationController
34 34 @projects
35 35 end
36 36  
37   - @projects = @projects.tagged_with(params[:label]) if params[:label].present?
38 37 @projects = @projects.search(params[:search]) if params[:search].present?
39   - @projects = @projects.page(params[:page]).per(30)
40 38  
41 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 43 end
43 44  
44 45 # Get authored or assigned open merge requests
... ...
app/controllers/groups_controller.rb
... ... @@ -63,7 +63,7 @@ class GroupsController < ApplicationController
63 63  
64 64 def people
65 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 67 @users_group = UsersGroup.new
68 68 end
69 69  
... ...
app/controllers/team_members_controller.rb
... ... @@ -4,11 +4,8 @@ class TeamMembersController < ProjectResourceController
4 4 before_filter :authorize_admin_project!, except: [:index, :show]
5 5  
6 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 7 @group = @project.group
  8 + @users_projects = @project.users_projects.order('project_access DESC')
12 9 @assigned_teams = @project.user_team_project_relationships
13 10 end
14 11  
... ...
app/views/team_members/_group_members.html.haml 0 → 100644
... ... @@ -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 4 %h5.title
6   - = role
7   - %span.light (#{members.size})
  5 + Project members (#{members.count})
8 6 %ul.well-list
9   - - members.sort_by(&:user_name).each do |team_member|
  7 + - members.each do |team_member|
10 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 1 = render "projects/settings_nav"
2 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 5 - if can? current_user, :admin_team_member, @project
10 6 %span.pull-right
... ... @@ -15,51 +11,27 @@
15 11 = link_to new_project_team_member_path(@project), class: "btn btn-primary small grouped", title: "New Team Member" do
16 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
... ...