Fetching contributors…
Cannot retrieve contributors at this time
144 lines (90 sloc) 4.46 KB
- [_] Easier JQuery UI theme changing.
- [X] Put input element on left hand side of label in
RadioChoiceWidget and CheckboxChoiceWidget.
- [_] RadioChoiceWidget doesn't work when used multiple times in a
- [X] Make error message translations possible.
- [_] Progressive form validation (show validation errors as you
- [X] Date widget with picker (see ``deform.widget.DateInputWidget``).
- [_] Time widget with picker.
- [_] DateTime widget with pickers.
- [X] Add a single-select widget.
- [X] Add a multi-select checkbox widget.
- [X] Add a "combo-box" widget (serviced by AutoComplete text box)
o Mixes free-form input with a drop-down.
- [_] Add a multi-select widget using dual lists.
- [X] Add "fixed-lentgh" string widgets (done by using jquery.maskedinput in
text input field)
o E.g., in parts of an SSN, filling in all digits in the first
part's field jumps automatically to the second.
- [_] Add a country / postal code widget
o Does a lookup and shows city and state / province.
- [_] Add an ISBN widget.
o Does a lookup and shows author, title, etc..
- [X] Make forms automagically put the cursor into the first field of a form.
- [X] Readonly widget variants
- [X] Use case: require (email or phonenumber; see
require_one_or_another in deformdemo).
- [X] Add a convention that allows a widget to specify the (logical)
resources it requires (e.g. ["foo.css", "jquery"]). Add an API
that allows you to retrieve all the logical resources required
by all widgets that are part of a form.
- [X] Provide a lame default widget for tuples in order to avoid ``
File "/Users/...deform/", line 92, in serialize raise
NotImplementedError`` during serialization or provide a better
error message (maybe a subclass of Widget that spits out a more
informative error message). (used TextInputCSV widget).
- [ ] Somehow prevent schemas that have sequence types (tuples and
sequences) that have no schema children from reaching the point
where we try to serialize them, as a hapless user will wind up
with a `` File "/Users/...../deform/", line 773, in
serialize item_field = field.children[0]`` exception instead of
a more sensible error message.
- [ ] Allow for single-field readonly renderings (e.g. on an add form,
the name must be provided, on an edit form the name cannot be
- [ ] Make deform.widget.RichText render only on oid specific element
in templates.
- [ ] Work out RichTextWidget default height and width and overrides
for them, then document how to do so.
- [ ] Add placeholder text to
- [ ] CSRF:
<DanielHolth> I came up with a repoze.bfg.formish CSRF solution
that I don't entirely hate. The token stored on the
FormController is hmac(''.join(user_id, str(self.__class__),
request.url, csrf_secret), session_identifier). The main form
template inserts the token into the form if
hasattr(form.controller.csrf_token) and it's checked with a
decorator on the action method.
<DanielHolth> I tried setting
the token as a default value for a String() but then the form
will compute the correct csrf token when submitted without that
<wiggy> I use a CSRForm class which is derived from formish.Form
and every user gets a secret which is reset on login
- Apply patches:
[ ]
- [ ] Spinner for upload widget.
- [ ] Focus first element in node when sequence item is added.
- [ ] has weird styling.
- [X] Date parts widget renders error "Incomplete" if all blank.
should be "Required" for consistency with others
Topics Needing Documentation
- Associating a Colander type with a new default widget type.
- Changing the close button image.
- Interfield validation.
- Explain ``widget_maker``.
Documentation Done, But Could be Better
- The Form class (and thee Button class) explanations.
- Multiple forms on the same page (in Form API docs only).
- FileUploadWidget tmpstore (in FileUploadWidget API docs only).
- Form post target changing (only in API docs)
- Internationalization (weak chapter)
- Creating a new schema type (punts to Colander docs in basic.rst)