3 def self.included(base)
4 base.extend(ClassMethods)
5 base.__send__ :include, InstanceMethods
13 def list_opt_for_panel
17 def show_opt_for_panel
21 def json_opt_for_panel
25 def path_name with_engine = false
31 module InstanceMethods
48 def has_helper? column_name
49 self.class.colum_structures[column_name] and self.class.colum_structures[column_name][:helper]
53 self.class.to_s.underscore
60 def extend_element_name
61 self.extend_column ? self.attributes[extend_column] : self.element_name
64 def find_configurations hash, key
65 if hash[key].is_a? String
66 self.find_configurations hash, hash[key]
73 @element_index ||= self.t
77 @parent ||= self.panel
101 self.panel || @new_panel
105 'panel' + self.tag_panel_id + self.tag_element_type + self.tag_element_id + c.to_s
113 self.get_panel.new_record? ? '0' : self.get_panel.id.to_s
117 self.new_record? ? '0' : self.id.to_s
128 def path_name with_engine = false
129 self.class.path_name(with_engine)
132 def form_template with_engine = false
133 self.path_name(with_engine) + '/form'
136 def scenario_template with_engine = false
137 self.path_name(with_engine) + '/scenario'
140 def element_face_template with_engine = false
141 self.path_name(with_engine) + '/element_face'
144 def form_helper_template(colum_name)
145 self.class.colum_structures[colum_name][:helper]
148 def tag_attributes column = nil, opt = {}
150 :id => self.field_tag_id(column), :panel_id => self.tag_panel_id,
151 :element_id => self.tag_element_id, :element_type => self.tag_element_type
155 def field_tag_attributes column, no_attr, opt = {}
156 self.tag_attributes(column).merge(
157 {:column => column, :new_index => self.tag_new_index, :no_attr => no_attr}
161 #render element by body
162 def any_tag_attributes name = nil, opt = {}
163 r = self.tag_attributes(name)
165 {:new_index => self.tag_new_index}
170 def select_tag_attributes(selected, column, no_attr)
173 {:html => {:selected => selected}},
174 self.field_tag_attributes(column, no_attr)
178 def tag_attr column = nil, opt = {}
179 self.tag_attributes(column, opt).to_attr
182 def field_tag_attr column, no_attr, opt = {}
183 self.field_tag_attributes(column, no_attr, opt).to_attr
186 def any_tag_attr name = nil, opt = {}
187 self.any_tag_attributes(name, opt).to_attr