Class: Ddr::Auth::PublicationAbilityDefinitions
- Inherits:
-
AbilityDefinitions
- Object
- SimpleDelegator
- AbilityDefinitions
- Ddr::Auth::PublicationAbilityDefinitions
- Defined in:
- lib/ddr/auth/ability_definitions/publication_ability_definitions.rb
Instance Method Summary collapse
-
#call ⇒ Object
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 nonpublishable.
Methods inherited from AbilityDefinitions
Instance Method Details
#call ⇒ Object
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 nonpublishable
8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/ddr/auth/ability_definitions/publication_ability_definitions.rb', line 8 def call cannot :publish, Ddr::Resource do |obj| obj.published? || !obj.publishable? end cannot :unpublish, Ddr::Resource do |obj| !obj.published? && !obj.nonpublishable? end cannot :make_nonpublishable, Ddr::Resource do |obj| obj.nonpublishable? end end |