Sha256: c35c572f9802605d6133db4955a72dee453abb023668ccd2afc2712712dd195d

Contents?: true

Size: 916 Bytes

Versions: 27

Compression:

Stored size: 916 Bytes

Contents

module Spina
  class PhotoCollection < ActiveRecord::Base
    
    has_one :page_part, as: :page_partable
    has_many :photo_collections_photos, autosave: true
    has_many :photos, through: :photo_collections_photos

    attr_reader :photo_tokens, :photo_positions
    accepts_nested_attributes_for :photos, allow_destroy: true

    def photo_tokens=(ids)
      self.photo_ids = ids.split(",")
    end

    def photo_positions=(positions)
      positions = positions.split(",")
      self.photo_collections_photos.each do |photo|
        photo.position = positions.index(photo.photo.try(:id).try(:to_s))
      end
      logger.info self.photo_collections_photos.inspect
    end

    alias_method :old_update_attributes, :update_attributes
    def update_attributes(attributes)
      self.photos.clear if attributes.reject{|key,value| key == "id" }.blank?
      old_update_attributes(attributes)
    end

  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
spina-0.9.0 app/models/spina/photo_collection.rb
spina-0.8.3 app/models/spina/photo_collection.rb
spina-0.8.2 app/models/spina/photo_collection.rb
spina-0.8.1 app/models/spina/photo_collection.rb
spina-0.8.0 app/models/spina/photo_collection.rb
spina-0.7.3 app/models/spina/photo_collection.rb
spina-0.7.2 app/models/spina/photo_collection.rb
spina-0.7.0 app/models/spina/photo_collection.rb
spina-0.6.29 app/models/spina/photo_collection.rb
spina-0.6.28 app/models/spina/photo_collection.rb
spina-0.6.27 app/models/spina/photo_collection.rb
spina-0.6.26 app/models/spina/photo_collection.rb
spina-0.6.25 app/models/spina/photo_collection.rb
spina-0.6.24 app/models/spina/photo_collection.rb
spina-0.6.23 app/models/spina/photo_collection.rb
spina-0.6.22 app/models/spina/photo_collection.rb
spina-0.6.21 app/models/spina/photo_collection.rb
spina-0.6.20 app/models/spina/photo_collection.rb
spina-0.6.19 app/models/spina/photo_collection.rb
spina-0.6.18 app/models/spina/photo_collection.rb