mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-03-04 19:53:19 +08:00
Merge pull request #1166 from okriuchykhin/ok_SCI_2342
Fix WOPI controller to support repositories [SCI-2342]
This commit is contained in:
commit
0e6c89c3de
1 changed files with 20 additions and 3 deletions
|
@ -245,15 +245,20 @@ class WopiController < ActionController::Base
|
|||
logger.warn 'Found asset: ' + @asset.id.to_s
|
||||
step_assoc = @asset.step
|
||||
result_assoc = @asset.result
|
||||
repository_cell_assoc = @asset.repository_cell
|
||||
@assoc = step_assoc unless step_assoc.nil?
|
||||
@assoc = result_assoc unless result_assoc.nil?
|
||||
@assoc = repository_cell_assoc unless repository_cell_assoc.nil?
|
||||
|
||||
if @assoc.class == Step
|
||||
@protocol = @asset.step.protocol
|
||||
@team = @protocol.team
|
||||
else
|
||||
elsif @assoc.class == Result
|
||||
@my_module = @assoc.my_module
|
||||
@team = @my_module.experiment.project.team
|
||||
elsif @assoc.class == RepositoryCell
|
||||
@repository = @assoc.repository_column.repository
|
||||
@team = @repository.team
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -303,8 +308,8 @@ class WopiController < ActionController::Base
|
|||
host: ENV['WOPI_USER_HOST'])
|
||||
@breadcrumb_folder_name = 'Protocol managament'
|
||||
end
|
||||
@breadcrumb_folder_url = @close_url
|
||||
else
|
||||
@breadcrumb_folder_url = @close_url
|
||||
elsif @assoc.class == Result
|
||||
@can_read = can_read_experiment?(@my_module.experiment)
|
||||
@can_write = can_manage_module?(@my_module)
|
||||
|
||||
|
@ -318,6 +323,18 @@ class WopiController < ActionController::Base
|
|||
host: ENV['WOPI_USER_HOST'])
|
||||
@breadcrumb_folder_name = @my_module.name
|
||||
@breadcrumb_folder_url = @close_url
|
||||
elsif @assoc.class == RepositoryCell
|
||||
@can_read = can_read_team?(@team)
|
||||
@can_write = can_manage_repository_rows?(@team)
|
||||
|
||||
@close_url = repository_url(@repository,
|
||||
only_path: false,
|
||||
host: ENV['WOPI_USER_HOST'])
|
||||
|
||||
@breadcrumb_brand_name = @team.name
|
||||
@breadcrumb_brand_url = @close_url
|
||||
@breadcrumb_folder_name = @assoc.repository_row.name
|
||||
@breadcrumb_folder_url = @close_url
|
||||
end
|
||||
|
||||
render body: nil, status: 404 and return unless @can_read
|
||||
|
|
Loading…
Reference in a new issue