mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-02-21 22:33:13 +08:00
Merge pull request #3693 from artoscinote/ma_SCI_6292
Make all except public project assignments manual [SCI-6292]
This commit is contained in:
commit
5bb26ae6fa
2 changed files with 10 additions and 10 deletions
|
@ -41,7 +41,7 @@ module Assignable
|
|||
def create_users_assignments
|
||||
return if skip_user_assignments
|
||||
|
||||
role = if self.class == Project
|
||||
role = if is_a?(Project)
|
||||
UserRole.find_by(name: I18n.t('user_roles.predefined.owner'))
|
||||
else
|
||||
permission_parent.user_assignments.find_by(user: created_by).user_role
|
||||
|
@ -50,7 +50,7 @@ module Assignable
|
|||
UserAssignment.create!(
|
||||
user: created_by,
|
||||
assignable: self,
|
||||
assigned: :automatically,
|
||||
assigned: is_a?(Project) ? :manually : :automatically,
|
||||
user_role: role
|
||||
)
|
||||
|
||||
|
|
|
@ -30,11 +30,11 @@ class MigrateToNewUserRoles < ActiveRecord::Migration[6.1]
|
|||
|
||||
private
|
||||
|
||||
def new_user_assignment(user, assignable, user_role)
|
||||
def new_user_assignment(user, assignable, user_role, assigned)
|
||||
UserAssignment.new(
|
||||
user: user,
|
||||
assignable: assignable,
|
||||
assigned: :automatically,
|
||||
assigned: assigned,
|
||||
user_role: user_role
|
||||
)
|
||||
end
|
||||
|
@ -52,11 +52,11 @@ class MigrateToNewUserRoles < ActiveRecord::Migration[6.1]
|
|||
unassigned_users = team.users.reject { |u| already_assigned_user_ids.include?(u.id) }
|
||||
|
||||
unassigned_users.each do |user|
|
||||
user_assignments << new_user_assignment(user, project, viewer_role)
|
||||
user_assignments << new_user_assignment(user, project, viewer_role, :automatically)
|
||||
project.experiments.each do |experiment|
|
||||
user_assignments << new_user_assignment(user, experiment, viewer_role)
|
||||
user_assignments << new_user_assignment(user, experiment, viewer_role, :automatically)
|
||||
experiment.my_modules.each do |my_module|
|
||||
user_assignments << new_user_assignment(user, my_module, viewer_role)
|
||||
user_assignments << new_user_assignment(user, my_module, viewer_role, :automatically)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -69,11 +69,11 @@ class MigrateToNewUserRoles < ActiveRecord::Migration[6.1]
|
|||
user_projects.includes(:user, :project).find_in_batches(batch_size: 100) do |user_project_batch|
|
||||
user_assignments = []
|
||||
user_project_batch.each do |user_project|
|
||||
user_assignments << new_user_assignment(user_project.user, user_project.project, user_role)
|
||||
user_assignments << new_user_assignment(user_project.user, user_project.project, user_role, :manually)
|
||||
user_project.project.experiments.preload(:my_modules).each do |experiment|
|
||||
user_assignments << new_user_assignment(user_project.user, experiment, user_role)
|
||||
user_assignments << new_user_assignment(user_project.user, experiment, user_role, :automatically)
|
||||
experiment.my_modules.each do |my_module|
|
||||
user_assignments << new_user_assignment(user_project.user, my_module, user_role)
|
||||
user_assignments << new_user_assignment(user_project.user, my_module, user_role, :automatically)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue