scinote-web/app/permissions/repository_column.rb

17 lines
584 B
Ruby
Raw Normal View History

2019-07-12 22:43:54 +08:00
# frozen_string_literal: true
Canaid::Permissions.register_for(RepositoryColumn) do
# repository: update/delete field
# Tested in scope of RepositoryPermissions spec
can :manage_repository_column do |user, repository_column|
managable = repository_column.repository.repository_snapshots.provisioning.none? &&
can_create_repository_columns?(user, repository_column.repository)
if repository_column.data_type == 'RepositoryStockValue'
managable = can_manage_repository_stock?(user, repository_column.repository) && managable
end
managable
2019-07-12 22:43:54 +08:00
end
end