mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-11-17 22:42:22 +08:00
Merge pull request #8658 from andrej-scinote/aj_SCI_12081
Fix repository read permission for deleted repositories [SCI-12081]
This commit is contained in:
commit
ccce7cfac2
2 changed files with 4 additions and 1 deletions
|
|
@ -90,6 +90,7 @@ class MyModuleShareableLinksController < ApplicationController
|
|||
page = (params[:start].to_i / per_page) + 1
|
||||
datatable_service = RepositorySnapshotDatatableService.new(@repository_snapshot, params, nil, @my_module, preload_cells: false)
|
||||
|
||||
@datatable_params = { shareable_link_view: true }
|
||||
@all_rows_count = datatable_service.all_count
|
||||
@filtered_rows_count = datatable_service.filtered_count
|
||||
@columns_mappings = datatable_service.mappings
|
||||
|
|
|
|||
|
|
@ -4,7 +4,9 @@ Canaid::Permissions.register_for(RepositoryBase) do
|
|||
# repository: read/export
|
||||
can :read_repository do |user, repository|
|
||||
if repository.is_a?(RepositorySnapshot)
|
||||
repository.original_repository.permission_granted?(user, RepositoryPermissions::READ) && can_read_my_module?(user, repository.my_module)
|
||||
original_repository = repository.original_repository
|
||||
# If original repository is deleted, snapshot ownership should be transferred to task
|
||||
(!original_repository || original_repository.permission_granted?(user, RepositoryPermissions::READ)) && can_read_my_module?(user, repository.my_module)
|
||||
else
|
||||
repository.permission_granted?(user, RepositoryPermissions::READ)
|
||||
end
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue