--- a/web/views/forms.py Thu Feb 18 14:30:23 2010 +0100
+++ b/web/views/forms.py Tue Feb 23 17:32:31 2010 +0100
@@ -58,54 +58,20 @@
"""
__regid__ = 'base'
- internal_fields = ('__errorurl',) + NAV_FORM_PARAMETERS
# attributes overrideable by subclasses or through __init__
needs_js = ('cubicweb.ajax.js', 'cubicweb.edition.js',)
needs_css = ('cubicweb.form.css',)
- domid = 'form'
action = None
onsubmit = "return freezeFormButtons('%(domid)s');"
cssclass = None
cssstyle = None
cwtarget = None
redirect_path = None
- copy_nav_params = False
form_buttons = None
form_renderer_id = 'default'
fieldsets_in_order = None
- def __init__(self, req, rset=None, row=None, col=None,
- submitmsg=None, mainform=True,
- **kwargs):
- super(FieldsForm, self).__init__(req, rset=rset, row=row, col=col)
- self.fields = list(self.__class__._fields_)
- for key, val in kwargs.items():
- if key in NAV_FORM_PARAMETERS:
- self.add_hidden(key, val)
- elif hasattr(self.__class__, key) and not key[0] == '_':
- setattr(self, key, val)
- else:
- self.cw_extra_kwargs[key] = val
- # skip other parameters, usually given for selection
- # (else write a custom class to handle them)
- if mainform:
- self.add_hidden('__errorurl', self.session_key())
- self.add_hidden('__domid', self.domid)
- self.restore_previous_post(self.session_key())
-
- # XXX why do we need two different variables (mainform and copy_nav_params ?)
- if self.copy_nav_params:
- for param in NAV_FORM_PARAMETERS:
- if not param in kwargs:
- value = req.form.get(param)
- if value:
- self.add_hidden(param, value)
- if submitmsg is not None:
- self.add_hidden('__message', submitmsg)
- if 'domid' in kwargs:# session key changed
- self.restore_previous_post(self.session_key())
-
@property
def needs_multipart(self):
"""true if the form needs enctype=multipart/form-data"""