diff options
| author | Zog | 2018-04-19 16:59:19 +0200 |
|---|---|---|
| committer | Johan Van Ryseghem | 2018-04-27 11:17:19 +0200 |
| commit | 682fc27aad1027850cdb77b5c9720914bb84ca56 (patch) | |
| tree | 04169757d9aeeeaf7f59927fc303f5bce934ffff | |
| parent | edceff7093d00fa9c411793ecddc7357ea51377c (diff) | |
| download | chouette-core-682fc27aad1027850cdb77b5c9720914bb84ca56.tar.bz2 | |
Refs #6572; Update policies
disable all actions for non-ready referentials
| -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 |
