class AcmsRuby::ImageField

Attributes

fields[RW]
images[RW]
name[RW]

Public Class Methods

new(field_name, base) click to toggle source
# File lib/acms_ruby/models/image_field.rb, line 9
def initialize(field_name, base)
  @base = base
  @name = field_name
  load_image
end

Public Instance Methods

each() { |field| ... } click to toggle source
# File lib/acms_ruby/models/image_field.rb, line 36
def each
  @fields.each do |field|
    yield field
  end
end
field(key, sort_no=nil) click to toggle source
# File lib/acms_ruby/models/image_field.rb, line 24
def field(key, sort_no=nil)
  key = @name+'@'+key
  return nil if !field_names.include?(key)
  @base.field(key, sort_no)
end
field_names() click to toggle source
# File lib/acms_ruby/models/image_field.rb, line 30
def field_names
  @fields.collect do |field|
    field.key
  end.uniq
end
load_image() click to toggle source
# File lib/acms_ruby/models/image_field.rb, line 15
def load_image
  @fields = @base.fields.where(['field_key like ?', @name+"@%"])
  image_count = @fields.collect{|f| f.field_sort }.max
  @images = []
  image_count.times do |i|
    @images.push AcmsRuby::Image.new(@name, i+1, self)
  end
end