Merge pull request #4537 from okriuchykhin/ok_SCI_7343

Allow team owners to manage project users [SCI-7343]
This commit is contained in:
Alex Kriuchykhin 2022-10-17 10:16:50 +02:00 committed by GitHub
commit 15813166fe
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 13 deletions

View file

@ -15,8 +15,8 @@ class ProjectsController < ApplicationController
before_action :load_vars, only: %i(show permissions edit update notifications
sidebar experiments_cards view_type actions_dropdown)
before_action :load_current_folder, only: %i(index cards new show)
before_action :check_view_permissions, only: %i(show permissions notifications sidebar
experiments_cards view_type actions_dropdown)
before_action :check_view_permissions, except: %i(index cards new create edit update archive_group restore_group
users_filter actions_dropdown)
before_action :check_create_permissions, only: %i(new create)
before_action :check_manage_permissions, only: :edit
before_action :load_exp_sort_var, only: :show

View file

@ -52,7 +52,8 @@ Canaid::Permissions.register_for(Project) do
end
can :manage_project_users do |user, project|
project.permission_granted?(user, ProjectPermissions::USERS_MANAGE)
project.permission_granted?(user, ProjectPermissions::USERS_MANAGE) ||
project.team.permission_granted?(user, TeamPermissions::MANAGE)
end
can :archive_project do |user, project|

View file

@ -44,16 +44,14 @@
</li>
<% end %>
<!-- Project members access -->
<% if can_read_project?(project) %>
<li class="form-dropdown-item">
<%= link_to can_manage_project_users?(project) ? edit_access_permissions_project_path(project) : access_permissions_project_path(project),
class: 'btn btn-light',
data: { action: 'remote-modal'} do %>
<i class="fas fa-door-open"></i>
<%= I18n.t('projects.index.project_members_access') %>
<% end %>
</li>
<% end %>
<li class="form-dropdown-item">
<%= link_to can_manage_project_users?(project) ? edit_access_permissions_project_path(project) : access_permissions_project_path(project),
class: 'btn btn-light',
data: { action: 'remote-modal'} do %>
<i class="fas fa-door-open"></i>
<%= I18n.t('projects.index.project_members_access') %>
<% end %>
</li>
<!-- Show comments -->
<li>
<a href="#"