Commit 97de6f851b54e87f5a01f9bbc16ce64464c88579

Authored by Dmitriy Zaporozhets
1 parent 1481d1cf

Fix not-working team memebership permissions change

app/assets/javascripts/main.js.coffee
... ... @@ -49,6 +49,10 @@ $ ->
49 49 # Bottom tooltip
50 50 $('.has_bottom_tooltip').tooltip(placement: 'bottom')
51 51  
  52 + # Form submitter
  53 + $('.trigger-submit').on 'change', ->
  54 + $(@).parents('form').submit()
  55 +
52 56 # Flash
53 57 if (flash = $("#flash-container")).length > 0
54 58 flash.click -> $(@).slideUp("slow")
... ...
app/controllers/teams/members_controller.rb
... ... @@ -27,7 +27,13 @@ class Teams::MembersController < Teams::ApplicationController
27 27 end
28 28  
29 29 def update
30   - options = {default_projects_access: params[:default_project_access], group_admin: params[:group_admin]}
  30 + member_params = params[:team_member]
  31 +
  32 + options = {
  33 + default_projects_access: member_params[:permission],
  34 + group_admin: member_params[:group_admin]
  35 + }
  36 +
31 37 if user_team.update_membership(team_member, options)
32 38 redirect_to team_members_path(user_team), notice: "Membership for #{team_member.name} was successfully updated in Team of users."
33 39 else
... ... @@ -45,5 +51,4 @@ class Teams::MembersController < Teams::ApplicationController
45 51 def team_member
46 52 @member ||= user_team.members.find_by_username(params[:id])
47 53 end
48   -
49 54 end
... ...
app/views/teams/members/_show.html.haml
... ... @@ -10,23 +10,21 @@
10 10 %br
11 11 %small.cgray= user.email
12 12  
13   - .span6.pull-right
  13 + .span4
14 14 - if allow_admin
15   - .left.span2
16   - = form_for(member, as: :team_member, url: team_member_path(@team, user)) do |f|
17   - = f.select :permission, options_for_select(UsersProject.access_roles, @team.default_projects_access(user)), {}, class: "medium project-access-select span2"
18   - .left.span2
19   - %span
20   - - if @team.admin?(user)
21   - %i.icon-check
22   - Admin access
23   - .pull-right
24   - - if current_user == user
25   - %span.btn.disabled This is you!
26   - - if @team.owner == user
27   - %span.btn.disabled Owner
28   - - elsif user.blocked
29   - %span.btn.disabled.blocked Blocked
30   - - elsif allow_admin
31   - = link_to team_member_path(@team, user), confirm: remove_from_user_team_message(@team, user), method: :delete, class: "btn-tiny btn btn-remove" do
32   - %i.icon-minus.icon-white
  15 + = form_for(member, as: :team_member, url: team_member_path(@team, user)) do |f|
  16 + = f.select :permission, options_for_select(UsersProject.access_roles, @team.default_projects_access(user)), {}, class: "medium trigger-submit"
  17 + %br
  18 + = label_tag do
  19 + = f.check_box :group_admin, class: 'trigger-submit'
  20 + %span Admin access
  21 + .pull-right
  22 + - if current_user == user
  23 + %span.btn.disabled This is you!
  24 + - if @team.owner == user
  25 + %span.btn.disabled Owner
  26 + - elsif user.blocked
  27 + %span.btn.disabled.blocked Blocked
  28 + - elsif allow_admin
  29 + = link_to team_member_path(@team, user), confirm: remove_from_user_team_message(@team, user), method: :delete, class: "btn-tiny btn btn-remove" do
  30 + %i.icon-minus.icon-white
... ...