Sha256: d71cfcd449e13ed3bf282a30836538aa441447913439b9b7c30659f8e76310ee
Contents?: true
Size: 1.49 KB
Versions: 2
Compression:
Stored size: 1.49 KB
Contents
module Ecm module Pictures class Gallery < ActiveRecord::Base # associations has_many :pictures, -> { order :position }, dependent: :destroy # attributes accepts_nested_attributes_for :pictures, allow_destroy: true # acts as list acts_as_list default_scope { order(:position) } # acts as markup acts_as_markup language: :variable, columns: [:description] # callbacks after_initialize :set_defaults # friendly id extend FriendlyId friendly_id :name, use: [:slugged, :finders] # tagging acts_as_taggable if respond_to?(:acts_as_taggable) # validations validates :markup_language, presence: true, inclusion: Ecm::Pictures::Configuration.markup_languages validates :name, presence: true, uniqueness: true def display_code_for_erb "<%= render_picture_gallery '#{name}' %>" end def picture_images=(picture_images) picture_images.each do |image| next if image.respond_to?(:empty?) && image.empty? pictures.build(image: image) end end def to_s name end def human name end private def set_defaults if self.new_record? self.link_images = true if link_images.nil? self.markup_language ||= Ecm::Pictures::Configuration.default_markup_language end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ecm_pictures2-3.0.1 | app/models/ecm/pictures/gallery.rb |
ecm_pictures2-3.0.0 | app/models/ecm/pictures/gallery.rb |