Sha256: 5273174bd3d7156c7d0651a5a40b8e304dc7e1b899db520960095b3c07b90905

Contents?: true

Size: 693 Bytes

Versions: 31

Compression:

Stored size: 693 Bytes

Contents

module Pageflow
  class UsedFile < SimpleDelegator
    def initialize(file, usage = nil)
      super(file)
      @file = file
      @usage = usage || file.usages.first
    end

    def configuration
      @usage.configuration
    end

    def update_attributes!(attributes)
      super(attributes.except(:configuration))
      @usage.update_attributes!(attributes.slice(:configuration))
    end

    def usage_id
      @usage.id
    end

    def perma_id
      @usage.perma_id
    end

    # Not delegated by default. Required to allow using instances in
    # Active Record conditions.

    def is_a?(klass)
      @file.is_a?(klass)
    end

    def class
      @file.class
    end
  end
end

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
pageflow-16.0.0 app/models/pageflow/used_file.rb
pageflow-15.8.0 app/models/pageflow/used_file.rb
pageflow-15.7.1 app/models/pageflow/used_file.rb
pageflow-15.7.0 app/models/pageflow/used_file.rb
pageflow-15.6.1 app/models/pageflow/used_file.rb
pageflow-15.6.0 app/models/pageflow/used_file.rb
pageflow-15.5.0 app/models/pageflow/used_file.rb
pageflow-15.4.0 app/models/pageflow/used_file.rb
pageflow-15.3.0 app/models/pageflow/used_file.rb
pageflow-15.2.2 app/models/pageflow/used_file.rb
pageflow-15.2.1 app/models/pageflow/used_file.rb
pageflow-15.2.0 app/models/pageflow/used_file.rb
pageflow-15.1.2 app/models/pageflow/used_file.rb
pageflow-15.1.1 app/models/pageflow/used_file.rb
pageflow-15.1.0 app/models/pageflow/used_file.rb
pageflow-15.1.0.rc0 app/models/pageflow/used_file.rb
pageflow-15.1.0.beta6 app/models/pageflow/used_file.rb
pageflow-15.1.0.beta5 app/models/pageflow/used_file.rb
pageflow-15.1.0.beta4 app/models/pageflow/used_file.rb
pageflow-15.1.0.beta3 app/models/pageflow/used_file.rb