equal
deleted
inserted
replaced
191 |
191 |
192 def _render_fields(self, fields, w, form): |
192 def _render_fields(self, fields, w, form): |
193 byfieldset = {} |
193 byfieldset = {} |
194 for field in fields: |
194 for field in fields: |
195 byfieldset.setdefault(field.fieldset, []).append(field) |
195 byfieldset.setdefault(field.fieldset, []).append(field) |
196 for fieldset, fields in byfieldset.iteritems(): |
196 if form.fieldsets_in_order: |
|
197 fieldsets = form.fieldsets_in_order |
|
198 else: |
|
199 fieldsets = byfieldset.keys() |
|
200 for fieldset in fieldsets: |
|
201 try: |
|
202 fields = byfieldset.pop(fieldset) |
|
203 except KeyError: |
|
204 self.warning('no such fieldset: %s (%s)', fieldset, form) |
|
205 continue |
197 w(u'<fieldset class="%s">' % (fieldset or u'default')) |
206 w(u'<fieldset class="%s">' % (fieldset or u'default')) |
198 if fieldset: |
207 if fieldset: |
199 w(u'<legend>%s</legend>' % self.req._(fieldset)) |
208 w(u'<legend>%s</legend>' % self.req._(fieldset)) |
200 w(u'<table class="%s">' % self.table_class) |
209 w(u'<table class="%s">' % self.table_class) |
201 for field in fields: |
210 for field in fields: |
211 w(field.render(form, self)) |
220 w(field.render(form, self)) |
212 if self.display_help: |
221 if self.display_help: |
213 w(self.render_help(form, field)) |
222 w(self.render_help(form, field)) |
214 w(u'</td></tr>') |
223 w(u'</td></tr>') |
215 w(u'</table></fieldset>') |
224 w(u'</table></fieldset>') |
|
225 if byfieldset: |
|
226 self.warning('unused fieldsets: %s', ', '.join(byfieldset)) |
216 |
227 |
217 def render_buttons(self, w, form): |
228 def render_buttons(self, w, form): |
218 if not form.form_buttons: |
229 if not form.form_buttons: |
219 return |
230 return |
220 w(u'<table class="%s">\n<tr>\n' % self.button_bar_class) |
231 w(u'<table class="%s">\n<tr>\n' % self.button_bar_class) |