175 etype = entity.e_schema.type |
175 etype = entity.e_schema.type |
176 ctrl_default = self._rules.get('default_value', default_value) |
176 ctrl_default = self._rules.get('default_value', default_value) |
177 if ctrl_default: |
177 if ctrl_default: |
178 return ctrl_default |
178 return ctrl_default |
179 if default_value is None: |
179 if default_value is None: |
180 return xml_escape(self._cw._('<%s not specified>') % |
180 if self._rules.get('default_showlabel'): |
181 display_name(self._cw, rschema.type, role)) |
181 return xml_escape(self._cw._('<%s not specified>') % |
|
182 display_name(self._cw, rschema.type, role)) |
|
183 return xml_escape(self._cw._('<not specified>')) |
182 return default_value |
184 return default_value |
183 |
185 |
184 def _is_composite(self): |
186 def _is_composite(self): |
185 return self._rules.get('edit_target') == 'related' |
187 return self._rules.get('edit_target') == 'related' |
186 |
188 |
245 display_label = False |
247 display_label = False |
246 related_entity = entity |
248 related_entity = entity |
247 return display_label, related_entity |
249 return display_label, related_entity |
248 |
250 |
249 def _prepare_composite_form(self, entity, rtype, role, edit_related, add_related): |
251 def _prepare_composite_form(self, entity, rtype, role, edit_related, add_related): |
|
252 display_label = True |
250 if edit_related and not add_related: |
253 if edit_related and not add_related: |
251 display_label = True |
|
252 related_entity = entity.related(rtype, role).get_entity(0, 0) |
254 related_entity = entity.related(rtype, role).get_entity(0, 0) |
253 elif add_related: |
255 elif add_related: |
254 display_label = True |
|
255 _new_entity = self._cw.vreg['etypes'].etype_class(add_related)(self._cw) |
256 _new_entity = self._cw.vreg['etypes'].etype_class(add_related)(self._cw) |
256 _new_entity.eid = self._cw.varmaker.next() |
257 _new_entity.eid = self._cw.varmaker.next() |
257 related_entity = _new_entity |
258 related_entity = _new_entity |
258 # XXX see forms.py ~ 276 and entities.linked_to method |
259 # XXX see forms.py ~ 276 and entities.linked_to method |
259 # is there another way ? |
260 # is there another way ? |