Sha256: fc55985a1c49eaad07c19fb27556d1054376d2a87dc584b542363a968c973ff8
Contents?: true
Size: 714 Bytes
Versions: 2
Compression:
Stored size: 714 Bytes
Contents
module Ddr module Auth class PublicationAbilityDefinitions < AbilityDefinitions # An object can't be published if it's already published or not publishable # It can't be unpublished if it's already unpublished # It can't be made nonpublishable if it's already published (must be unpublished # first) or already nonpublishable def call cannot :publish, Ddr::Resource do |obj| obj.published? || !obj.publishable? end cannot :unpublish, Ddr::Resource do |obj| !obj.published? end cannot :make_nonpublishable, Ddr::Resource do |obj| obj.published? || !obj.publishable? end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ddr-core-1.2.0.rc2 | lib/ddr/auth/ability_definitions/publication_ability_definitions.rb |
ddr-core-1.2.0.rc1 | lib/ddr/auth/ability_definitions/publication_ability_definitions.rb |