mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-03-06 12:43:06 +08:00
Merge pull request #7802 from okriuchykhin/ok_SCI_10991_v2
Fix listing of globally shared inventories [SCI-10991]
This commit is contained in:
commit
3c877625ed
1 changed files with 5 additions and 9 deletions
|
@ -49,16 +49,12 @@ class Repository < RepositoryBase
|
||||||
scope :globally_shared, -> { where(permission_level: %i(shared_read shared_write)) }
|
scope :globally_shared, -> { where(permission_level: %i(shared_read shared_write)) }
|
||||||
|
|
||||||
scope :viewable_by_user, lambda { |user, teams = user.current_team|
|
scope :viewable_by_user, lambda { |user, teams = user.current_team|
|
||||||
readable_repositories = joins(user_assignments: :user_role)
|
readable_repositories = readable_by_user(user)
|
||||||
.left_outer_joins(:team_shared_objects)
|
|
||||||
.where(team: teams)
|
|
||||||
readable_repositories =
|
|
||||||
readable_repositories
|
readable_repositories
|
||||||
.where(user_assignments: { user: user })
|
.where(team: teams)
|
||||||
.where('? = ANY(user_roles.permissions)', RepositoryPermissions::READ)
|
|
||||||
.or(readable_repositories
|
.or(readable_repositories
|
||||||
.where(permission_level: [Extends::SHARED_OBJECTS_PERMISSION_LEVELS[:shared_read], Extends::SHARED_OBJECTS_PERMISSION_LEVELS[:shared_write]]))
|
.where(permission_level: [Extends::SHARED_OBJECTS_PERMISSION_LEVELS[:shared_read], Extends::SHARED_OBJECTS_PERMISSION_LEVELS[:shared_write]])
|
||||||
readable_repositories.distinct
|
.where.not(team: teams))
|
||||||
}
|
}
|
||||||
|
|
||||||
scope :assigned_to_project, lambda { |project|
|
scope :assigned_to_project, lambda { |project|
|
||||||
|
|
Loading…
Reference in a new issue