-require_dependency "locmare/bucket/member"
-require_dependency "locmare/bucket/form_field_name"
module Locmare
class Bucket
- include BucketModule
- attr :manifest, :bucket_name, :item, :mounted, :submit, :operators, :template_dir,
+ attr :manifest, :bucket_name, :use_name, :item, :mounted, :submit, :operators, :template_dir,
:fields
- def self.factory bucket_or_form_name, item, mounted, submit, operators
+ def self.factory bucket_or_form_name, use_name, item, mounted, submit, operators
bucket = LocalManifest.manifest.buckets[bucket_or_form_name]
c = if bucket and bucket.has_member?
Locmare::Bucket
else
Locmare::Form
end
- c.new bucket_or_form_name, item, mounted, submit, operators
+ c.new bucket_or_form_name, use_name, item, mounted, submit, operators
end
- def initialize bucket_name, item, mounted, submit, operators
+ def initialize bucket_name, use_name, item, mounted, submit, operators
@bucket_name = bucket_name
+ @use_name = use_name
@item = item
@mounted = mounted
@submit = submit
@template_dir = 'templates/r/form/'
@form_fields = []
@forms = {}
- self.push_form @item.item_name, @item.item_name, @item
+ @forms[@item.item_name] = Locmare::Form.new @item.item_name, @use_name, @item, @mounted, false, @operators
self.init_forms @item.item_name, @manifest, @item
self.init_fields
end
def fold_extend_settings params
- p params
- p params[@item.item_name]['speech']
@item.class.fold_extend_settings params[@item.item_name]
self.members_fold_extend_settings @item, params[@item.item_name], @manifest
end
def members_fold_extend_settings fold_item, attr, man
- p attr
man.members.each do |member_name, member_manifest|
member_item = fold_item.__send__ member_name
member_item.class.fold_extend_settings attr[member_name + '_attributes']
end
def each_field
- @form_fields.each do |field_manifest|
- yield field_manifest.field_name, field_manifest
+ @form_fields.each do |form_field|
+ yield form_field.field_name, form_field
end
end
def push_form key, form_name, item
- @forms[key] = Locmare::Form.new form_name, item, @mounted, @submit, @operators
end
def init_forms key, man, item
form_name = member_name # write exchange function if you want
member_item = item.__send__(form_name)
new_key = key + '.' + form_name
- self.push_form new_key, form_name, member_item
+ @forms[new_key] = Locmare::Form.new new_key, member_item, @mounted, false, @operators
self.init_forms new_key, member_manifest, member_item
end
end