diff options
| -rw-r--r-- | app/policies/referential_policy.rb | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/app/policies/referential_policy.rb b/app/policies/referential_policy.rb index e86da7c35..b92e80937 100644 --- a/app/policies/referential_policy.rb +++ b/app/policies/referential_policy.rb @@ -14,27 +14,27 @@ class ReferentialPolicy < ApplicationPolicy end def destroy? - !referential_read_only? && organisation_match? && user.has_permission?('referentials.destroy') + referential_ready? && !referential_read_only? && organisation_match? && user.has_permission?('referentials.destroy') end def update? - !referential_read_only? && organisation_match? && user.has_permission?('referentials.update') + referential_ready? && !referential_read_only? && organisation_match? && user.has_permission?('referentials.update') end def clone? - !record.in_referential_suite? && create? + referential_ready? && !record.in_referential_suite? && create? end def validate? - !referential_read_only? && create? && organisation_match? + referential_ready? && !referential_read_only? && create? && organisation_match? end def archive? - !referential_read_only? && record.archived_at.nil? && organisation_match? && user.has_permission?('referentials.update') + referential_ready? && !referential_read_only? && record.archived_at.nil? && organisation_match? && user.has_permission?('referentials.update') end def unarchive? - record.archived? && !record.merged? && organisation_match? && user.has_permission?('referentials.update') + referential_ready? && record.archived? && !record.merged? && organisation_match? && user.has_permission?('referentials.update') end def common_lines? @@ -42,4 +42,8 @@ class ReferentialPolicy < ApplicationPolicy true end + def referential_ready? + record.ready? + end + end |
