Commit fed6ab2481257e67822825fad1203ed073028a22

Authored by Dmitriy Zaporozhets
1 parent 61c74493

Change representation of team members. Group by role

Gemfile.lock
... ... @@ -108,7 +108,7 @@ GEM
108 108 bcrypt-ruby (3.0.1)
109 109 blankslate (2.1.2.4)
110 110 bootstrap-sass (2.0.4.0)
111   - builder (3.0.0)
  111 + builder (3.0.2)
112 112 capybara (1.1.2)
113 113 mime-types (>= 1.16)
114 114 nokogiri (>= 1.3.3)
... ... @@ -125,7 +125,7 @@ GEM
125 125 charlock_holmes (0.6.8)
126 126 childprocess (0.3.2)
127 127 ffi (~> 1.0.6)
128   - chosen-rails (0.9.8)
  128 + chosen-rails (0.9.8.3)
129 129 railties (~> 3.0)
130 130 thor (~> 0.14)
131 131 coderay (1.0.6)
... ...
app/views/keys/index.html.haml
... ... @@ -3,7 +3,7 @@
3 3 = link_to "Add new", new_key_path, class: "btn right"
4 4  
5 5 %hr
6   -%p.slead
  6 +%p.slead
7 7 SSH key allows you to establish a secure connection between your computer and GitLab
8 8  
9 9  
... ... @@ -15,7 +15,7 @@
15 15 %th
16 16 - @keys.each do |key|
17 17 = render(partial: 'show', locals: {key: key})
18   - - if @keys.blank?
  18 + - if @keys.blank?
19 19 %tr
20 20 %td{colspan: 3}
21 21 %h3.nothing_here_message There are no SSH keys with access to your account.
... ...
app/views/projects/_team.html.haml
1   -%table
2   - %thead
3   - %tr
4   - %th User
5   - %th Permissions
6   - %tbody
7   - - @project.users_projects.each do |up|
8   - = render(partial: 'team_members/show', locals: {member: up})
  1 +- @project.users_projects.group_by(&:project_access).each do |access, members|
  2 + %table
  3 + %thead
  4 + %tr
  5 + %th.span7= Project.access_options.key(access).pluralize
  6 + %th
  7 + %tbody
  8 + - members.each do |up|
  9 + = render(partial: 'team_members/show', locals: {member: up})
9 10  
10 11  
11 12 :javascript
... ...
app/views/team_members/_show.html.haml
... ... @@ -2,12 +2,6 @@
2 2 - allow_admin = can? current_user, :admin_project, @project
3 3 %tr{id: dom_id(member), class: "team_member_row user_#{user.id}"}
4 4 %td
5   - .right
6   - - if @project.owner == user
7   - %span.label Project Owner
8   - - if user.blocked
9   - %span.label Blocked
10   -
11 5 = link_to project_team_member_path(@project, member), title: user.name, class: "dark" do
12 6 = image_tag gravatar_icon(user.email, 40), class: "avatar s32"
13 7 = link_to project_team_member_path(@project, member), title: user.name, class: "dark" do
... ... @@ -16,5 +10,11 @@
16 10 %div.cgray= user.email
17 11  
18 12 %td
19   - = form_for(member, as: :team_member, url: project_team_member_path(@project, member)) do |f|
20   - = f.select :project_access, options_for_select(UsersProject.access_roles, member.project_access), {}, class: "medium project-access-select", disabled: !allow_admin
  13 + .right
  14 + - if @project.owner == user
  15 + %span.btn.disabled.success Project Owner
  16 + - if user.blocked
  17 + %span.btn.disabled.blocked Blocked
  18 + - if allow_admin
  19 + = form_for(member, as: :team_member, url: project_team_member_path(@project, member)) do |f|
  20 + = f.select :project_access, options_for_select(UsersProject.access_roles, member.project_access), {}, class: "medium project-access-select"
... ...