mirror of
https://github.com/scinote-eln/scinote-web.git
synced 2025-03-05 20:23:16 +08:00
SCI-4674 create special permissions for snapshots on task
This commit is contained in:
parent
cd70d9c5a6
commit
5994e8c6a6
3 changed files with 16 additions and 6 deletions
|
@ -36,7 +36,7 @@ class MyModuleRepositorySnapshotsController < ApplicationController
|
||||||
render json: {
|
render json: {
|
||||||
html: render_to_string(partial: 'my_modules/repositories/full_view_version',
|
html: render_to_string(partial: 'my_modules/repositories/full_view_version',
|
||||||
locals: { repository_snapshot: repository_snapshot,
|
locals: { repository_snapshot: repository_snapshot,
|
||||||
can_delete_snapshot: can_assign_repository_rows_to_module?(@my_module) })
|
can_delete_snapshot: can_manage_repository_snapshots?(@my_module) })
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -50,7 +50,7 @@ class MyModuleRepositorySnapshotsController < ApplicationController
|
||||||
render json: {
|
render json: {
|
||||||
html: render_to_string(partial: 'my_modules/repositories/full_view_version',
|
html: render_to_string(partial: 'my_modules/repositories/full_view_version',
|
||||||
locals: { repository_snapshot: @repository_snapshot,
|
locals: { repository_snapshot: @repository_snapshot,
|
||||||
can_delete_snapshot: can_assign_repository_rows_to_module?@my_module) })
|
can_delete_snapshot: can_manage_repository_snapshots?(@my_module) })
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -124,6 +124,6 @@ class MyModuleRepositorySnapshotsController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def check_manage_permissions
|
def check_manage_permissions
|
||||||
render_403 unless can_assign_repository_rows_to_module?(@my_module)
|
render_403 unless can_manage_repository_snapshots?(@my_module)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -112,6 +112,16 @@ Canaid::Permissions.register_for(MyModule) do
|
||||||
can :create_comments_in_module do |user, my_module|
|
can :create_comments_in_module do |user, my_module|
|
||||||
can_create_comments_in_project?(user, my_module.experiment.project)
|
can_create_comments_in_project?(user, my_module.experiment.project)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# module: create a snapshot of repository item
|
||||||
|
can :create_repository_snapshot do |user, my_module|
|
||||||
|
user.is_technician_or_higher_of_project?(my_module.experiment.project)
|
||||||
|
end
|
||||||
|
|
||||||
|
# module: make a repository snapshot selected
|
||||||
|
can :manage_repository_snapshots do |user, my_module|
|
||||||
|
user.is_technician_or_higher_of_project?(my_module.experiment.project)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
Canaid::Permissions.register_for(Protocol) do
|
Canaid::Permissions.register_for(Protocol) do
|
||||||
|
|
|
@ -32,7 +32,7 @@
|
||||||
<% end %>
|
<% end %>
|
||||||
</div>
|
</div>
|
||||||
<% end %>
|
<% end %>
|
||||||
<% if @repository.present? && live_items_present && can_assign_repository_rows_to_module?(@my_module) %>
|
<% if @repository.present? && live_items_present && can_create_repository_snapshot?(@my_module) %>
|
||||||
<div class="create-snapshot-item">
|
<div class="create-snapshot-item">
|
||||||
<p class="info <%= 'hidden' unless @repository_snapshots.blank? %>">
|
<p class="info <%= 'hidden' unless @repository_snapshots.blank? %>">
|
||||||
<%= t('my_modules.repository.snapshots.full_view.no_snapshots_label') %>
|
<%= t('my_modules.repository.snapshots.full_view.no_snapshots_label') %>
|
||||||
|
@ -48,11 +48,11 @@
|
||||||
<%= render partial: 'my_modules/repositories/full_view_version',
|
<%= render partial: 'my_modules/repositories/full_view_version',
|
||||||
collection: @repository_snapshots,
|
collection: @repository_snapshots,
|
||||||
as: :repository_snapshot,
|
as: :repository_snapshot,
|
||||||
locals: { can_delete_snapshot: can_assign_repository_rows_to_module?(@my_module) } %>
|
locals: { can_delete_snapshot: can_manage_repository_snapshots?(@my_module) } %>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<% if can_assign_repository_rows_to_module(@my_module) %>
|
<% if can_manage_repository_snapshots(@my_module) %>
|
||||||
<div class="list-group-item text-center hidden">
|
<div class="list-group-item text-center hidden">
|
||||||
<a id="setDefaultVersionButton" class="btn btn-primary default-version-button" data-select-path="<%= my_module_select_default_snapshot_path(@my_module) %>">
|
<a id="setDefaultVersionButton" class="btn btn-primary default-version-button" data-select-path="<%= my_module_select_default_snapshot_path(@my_module) %>">
|
||||||
<%= t('my_modules.repository.snapshots.full_view.set_default_button') %>
|
<%= t('my_modules.repository.snapshots.full_view.set_default_button') %>
|
||||||
|
|
Loading…
Reference in a new issue