The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Jifty::Web::Form - Tools for rendering and dealing with HTML forms

METHODS

new ARGS

Creates a new Jifty::Web::Form. Arguments:

id

The HTML id attribute given to the form. This is aliased to name. That is, name and id are always equal and changing one changes the other.

class

The HTML class attribute given to the form.

name

The name given to the form. This is mostly for naming specific forms for testing.

call

All buttons in this form will act as continuation calls for the given continuation id.

disable_autocomplete

Disable browser autocomplete for this form. Jifty autocomplete will still work.

PRIVATE _init

Reinitialize this form.

name

The form name

call

The continuation id to call

actions

Returns a reference to a hash of Jifty::Action objects in this form keyed by moniker.

If you want to add actions to this form, use "add_action"

name [VALUE]

Gets or sets the HTML name given to the form element.

call [CONTID]

Gets or sets the continuation ID that will be called for this form.

is_open [BOOL]

This accessor returns true if Jifty is currently in the middle of rendering a form (if it's printed a <form> but not yet printed a </form> tag.) Use this in your components to decide whether to open a form or not if you might be called from a template that opened the form for you.

add_action PARAMHASH

Calls "new_action" in Jifty::Web with the paramhash given, and adds it to the form.

register_action ACTION

Adds ACTION as an action for this form. Called so that actions' form fields can register the action against the form they're being used in.

has_action MONIKER

If this form has an action whose moniker is MONIKER, returns it. Otherwise returns undef.

start

Renders the opening form tag.

submit MESSAGE, [PARAMETERS]

Renders a submit button with the text MESSAGE on it (which will be HTML escaped). Returns the empty string (for ease of use in interpolation). Any extra PARAMETERS are passed to Jifty::Web::Form::Field::Clickable's constructor.

return MESSAGE, [PARAMETERS]

Renders a return button with the text MESSAGE on it (which will be HTML escaped). Returns the empty string (for ease of use in interpolation). Any extra PARAMETERS are passed to Jifty::Web::Form::Field::Button's constructor.

end

Renders the closing form tag (including rendering errors for and registering all of the actions) After doing this, it resets its internal state such that "start" may be called again.

Print out the action registration goo for this action _right now_, unless we've already done so.

next_page PARAMHASH

Set the page this form should go to on success. This simply creates a Jifty::Action::Redirect action; any parameters in the PARAMHASH are passed as arguments to the Jifty::Action::Redirect action.

Returns an empty string so it can be included in forms

DESTROY

Checks to ensure that forms that were opened were actually closed, which is when actions are registered.