Module: AcmsRuby::FieldSelectMethods

Included in:
Blog, Category, Column, Entry, User
Defined in:
lib/acms_ruby/models/field_select_methods.rb

Instance Method Summary collapse

Instance Method Details

#field(key, sort_no = nil) ⇒ Object



4
5
6
7
8
9
# File 'lib/acms_ruby/models/field_select_methods.rb', line 4

def field(key, sort_no=nil)
  return fields.where(field_key: key, field_sort: sort_no).first if sort_no
  fields.where(field_key: key).collect do |field|
    field
  end
end

#field_group_namesObject



31
32
33
34
35
36
# File 'lib/acms_ruby/models/field_select_methods.rb', line 31

def field_group_names
  field_names.collect do |name|
    image_name = name.split('@')[1]
    image_name if name =~ /^\@/
  end.compact
end

#field_groupsObject



38
39
40
41
42
# File 'lib/acms_ruby/models/field_select_methods.rb', line 38

def field_groups
  field_group_names.collect do |group_name|
    AcmsRuby::FieldGroup.new(group_name, self)
  end
end

#field_namesObject



18
19
20
21
22
# File 'lib/acms_ruby/models/field_select_methods.rb', line 18

def field_names
  fields.collect do |field|
    field.key
  end.uniq
end

#image_field_namesObject



24
25
26
27
28
29
# File 'lib/acms_ruby/models/field_select_methods.rb', line 24

def image_field_names
  field_names.collect do |name|
    image_name = name.split('@')[0]
    image_name if name =~ /\@/ && image_name != ''
  end.uniq.compact
end

#image_fieldsObject



44
45
46
47
48
# File 'lib/acms_ruby/models/field_select_methods.rb', line 44

def image_fields
  image_field_names.collect do |image_name|
    AcmsRuby::ImageField.new(image_name, self)
  end
end

#val(key, sort_no = nil) ⇒ Object



11
12
13
14
15
16
# File 'lib/acms_ruby/models/field_select_methods.rb', line 11

def val(key, sort_no=nil)
  return field(key, sort_no) if sort_no
  field(key).collect do |f|
    f.value
  end
end