179 renderer = self.form_default_renderer() |
179 renderer = self.form_default_renderer() |
180 return renderer.render(self, values) |
180 return renderer.render(self, values) |
181 |
181 |
182 def form_default_renderer(self): |
182 def form_default_renderer(self): |
183 return self._cw.vreg['formrenderers'].select(self.form_renderer_id, |
183 return self._cw.vreg['formrenderers'].select(self.form_renderer_id, |
184 self._cw, rset=self.cw_rset, |
184 self._cw, rset=self.cw_rset, |
185 row=self.cw_row, col=self.cw_col) |
185 row=self.cw_row, col=self.cw_col) |
186 |
186 |
187 def form_build_context(self, rendervalues=None): |
187 def form_build_context(self, rendervalues=None): |
188 """build form context values (the .context attribute which is a |
188 """build form context values (the .context attribute which is a |
189 dictionary with field instance as key associated to a dictionary |
189 dictionary with field instance as key associated to a dictionary |
190 containing field 'name' (qualified), 'id', 'value' (for display, always |
190 containing field 'name' (qualified), 'id', 'value' (for display, always |
301 def __init__(self, *args, **kwargs): |
301 def __init__(self, *args, **kwargs): |
302 self.edited_entity = kwargs.pop('entity', None) |
302 self.edited_entity = kwargs.pop('entity', None) |
303 msg = kwargs.pop('submitmsg', None) |
303 msg = kwargs.pop('submitmsg', None) |
304 super(EntityFieldsForm, self).__init__(*args, **kwargs) |
304 super(EntityFieldsForm, self).__init__(*args, **kwargs) |
305 if self.edited_entity is None: |
305 if self.edited_entity is None: |
306 self.edited_entity = self.complete_entity(self.cw_row or 0, self.cw_col or 0) |
306 self.edited_entity = self.cw_rset.complete_entity(self.cw_row or 0, self.cw_col or 0) |
307 self.form_add_hidden('__type', eidparam=True) |
307 self.form_add_hidden('__type', eidparam=True) |
308 self.form_add_hidden('eid') |
308 self.form_add_hidden('eid') |
309 if kwargs.get('mainform', True): # mainform default to true in parent |
309 if kwargs.get('mainform', True): # mainform default to true in parent |
310 self.form_add_hidden(u'__maineid', self.edited_entity.eid) |
310 self.form_add_hidden(u'__maineid', self.edited_entity.eid) |
311 # If we need to directly attach the new object to another one |
311 # If we need to directly attach the new object to another one |
556 |
556 |
557 |
557 |
558 class CompositeForm(FieldsForm): |
558 class CompositeForm(FieldsForm): |
559 """form composed of sub-forms""" |
559 """form composed of sub-forms""" |
560 __regid__ = 'composite' |
560 __regid__ = 'composite' |
561 form_renderer_id = id |
561 form_renderer_id = __regid__ |
562 |
562 |
563 def __init__(self, *args, **kwargs): |
563 def __init__(self, *args, **kwargs): |
564 super(CompositeForm, self).__init__(*args, **kwargs) |
564 super(CompositeForm, self).__init__(*args, **kwargs) |
565 self.forms = [] |
565 self.forms = [] |
566 |
566 |
571 |
571 |
572 |
572 |
573 class CompositeEntityForm(EntityFieldsForm): |
573 class CompositeEntityForm(EntityFieldsForm): |
574 """form composed of sub-forms""" |
574 """form composed of sub-forms""" |
575 __regid__ = 'composite' |
575 __regid__ = 'composite' |
576 form_renderer_id = id |
576 form_renderer_id = __regid__ |
577 |
577 |
578 def __init__(self, *args, **kwargs): |
578 def __init__(self, *args, **kwargs): |
579 super(CompositeEntityForm, self).__init__(*args, **kwargs) |
579 super(CompositeEntityForm, self).__init__(*args, **kwargs) |
580 self.forms = [] |
580 self.forms = [] |
581 |
581 |