Class FormHelper
Form helper library.
Automatic generation of HTML FORMs from given data.
- AppHelper
- FormHelper
Link: http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html
Copyright: Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
License: License (http://www.opensource.org/licenses/mit-license.php)
Location: Cake/View/Helper/FormHelper.php
Constants summary
-
string
SECURE_SKIP
¶'skip'
Properties summary
-
$_inputDefaults
protectedarray
Persistent default options used by input(). Set by FormHelper::create(). -
$_models
protectedarray
Holds the model references already loaded by this helper product of trying to inspect them out of field names
-
$_options
protectedarray
Options used by DateTime fields -
$_unlockedFields
protectedarray
An array of field names that have been excluded from the Token hash used by SecurityComponent's validatePost method
-
$defaultModel
publicstring
The default model being used for the current form. -
$fields
publicarray
List of fields created, used with secure forms. -
$helpers
publicarray
Other helpers used by FormHelper -
$requestType
publicstring
Defines the type of form being created. Set by FormHelper::create(). -
$validationErrors
publicarray
Holds all the validation errors for models loaded and inspected it can also be set manually to be able to display custom error messages in the any of the input fields generated by this helper
Magic properties summary
-
$Html
public
Method Summary
-
__call() public
Missing method handler - implements various simple input types. Is used to create inputs of various types. e.g.
$this->Form->text();
will create<input type="text" />
while$this->Form->range();
will create<input type="range" />
-
__construct() public
Copies the validationErrors variable from the View object into this instance -
_csrfField() protected
Return a CSRF input if the _Token is present. Used to secure forms in conjunction with SecurityComponent
-
_dateTimeSelected() protected
Selects values for dateTime selects. -
_extractOption() protected
Extracts a single option from an options array. -
_generateOptions() protected
Generates option lists for common menus -
_getModel() protected
Guess the location for a model based on its name and tries to create a new instance or get an already created instance of the model
-
_initInputField() protected
Sets field defaults and adds field to form security input hash -
_inputLabel() protected deprecated
Generate a label for an input() call. -
_introspectModel() protected
Inspects the model properties to extract information from them. Currently it can extract information from the the fields, the primary key and required fields
-
_isRequiredField() protected
Returns if a field is required to be filled based on validation properties from the validating object. -
_name() protected
Gets the input field name for the current tag -
_secure() protected
Determine which fields of a form should be used for hash. Populates $this->fields
-
_selectOptions() protected
Returns an array of formatted OPTION/OPTGROUP elements -
button() public
Creates a
<button>
tag. The type attribute defaults totype="submit"
You can change it to a different value by using$options['type']
. -
checkbox() public
Creates a checkbox input widget. -
create() public
Returns an HTML FORM element. -
dateTime() public
Returns a set of SELECT elements for a full datetime setup: day, month and year, and then time. -
day() public
Returns a SELECT element for days. -
end() public
Closes an HTML form, cleans up values set by FormHelper::create(), and writes hidden input fields where appropriate.
-
error() public
Returns a formatted error message for given FORM field, NULL if no errors. -
file() public
Creates file input widget. -
hidden() public
Creates a hidden input field. -
hour() public
Returns a SELECT element for hours. -
input() public
Generates a form input element complete with label and wrapper div -
inputs() public
Generate a set of inputs for
$fields
. If $fields is null the current model will be used. -
isFieldError() public
Returns true if there is an error for the given field, otherwise false -
label() public
Returns a formatted LABEL element for HTML FORMs. Will automatically generate a for attribute if one is not provided.
-
meridian() public
Returns a SELECT element for AM or PM. -
minute() public
Returns a SELECT element for minutes. -
month() public
Returns a SELECT element for months. -
postButton() public
Create a<button>
tag with a surrounding<form>
that submits via POST. -
postLink() public
Creates an HTML link, but access the url using method POST. Requires javascript to be enabled in browser.
-
radio() public
Creates a set of radio widgets. Will create a legend and fieldset by default. Use $options to control this
-
secure() public
Generates a hidden field with a security hash based on the fields used in the form. -
select() public
Returns a formatted SELECT element. -
submit() public
Creates a submit button element. This method will generate
<input />
elements that can be used to submit, and reset forms by using $options. image submits can be created by supplying an image path for $caption. -
tagIsInvalid() public
Returns false if given form field described by the current entity has no errors. Otherwise it returns the validation message
-
textarea() public
Creates a textarea widget. -
unlockField() public
Add to or get the list of fields that are currently unlocked. Unlocked fields are not included in the field hash used by SecurityComponent unlocking a field once its been added to the list of secured fields will remove it from the list of fields.
-
year() public
Returns a SELECT element for years
Method Detail
__call() public ¶
__call( string $method , array $params )
Missing method handler - implements various simple input types. Is used to create inputs
of various types. e.g. $this->Form->text();
will create <input type="text" />
while
$this->Form->range();
will create <input type="range" />
Usage
$this->Form->search('User.query', array('value' => 'test'));
Will make an input like:
<input type="search" id="UserQuery" name="data[User][query]" value="test" />
The first argument to an input type should always be the fieldname, in Model.field
format.
The second argument should always be an array of attributes for the input.
Parameters
- string $method
- Method name / input type to make.
- array $params
- Parameters for the method call
Returns
Formatted input method.
Throws
__construct() public ¶
__construct( View
$View , array $settings = array() )
Copies the validationErrors variable from the View object into this instance
Parameters
-
View
$View - The View this helper is being attached to.
- array $settings optional array()
- Configuration settings for the helper.
_csrfField() protected ¶
_csrfField( )
Return a CSRF input if the _Token is present. Used to secure forms in conjunction with SecurityComponent
Returns
_dateTimeSelected() protected ¶
_dateTimeSelected( string $select , string $fieldName , array $attributes )
Selects values for dateTime selects.
Parameters
- string $select
- Name of element field. ex. 'day'
- string $fieldName
- Name of fieldName being generated ex. Model.created
- array $attributes
- Array of attributes, must contain 'empty' key.
Returns
Attributes array with currently selected value.
_extractOption() protected ¶
_extractOption( string $name , array $options , mixed $default = null )
Extracts a single option from an options array.
Parameters
- string $name
- The name of the option to pull out.
- array $options
- The array of options you want to extract.
- mixed $default optional null
- The default option value
Returns
the contents of the option or default
_generateOptions() protected ¶
_generateOptions( string $name , array $options = array() )
Generates option lists for common menus
Parameters
- string $name
- array $options optional array()
Returns
_getModel() protected ¶
_getModel( string $model )
Guess the location for a model based on its name and tries to create a new instance or get an already created instance of the model
Parameters
- string $model
Returns
_initInputField() protected ¶
_initInputField( string $field , array $options = array() )
Sets field defaults and adds field to form security input hash
Options
secure
- boolean whether or not the field should be added to the security fields. Disabling the field using thedisabled
option, will also omit the field from being part of the hashed key.
Parameters
- string $field
- Name of the field to initialize options for.
- array $options optional array()
- Array of options to append options into.
Returns
Array of options for the input.
_inputLabel() protected deprecated ¶
_inputLabel( string $fieldName , string $label , array $options )
Generate a label for an input() call.
$options can contain a hash of id overrides. These overrides will be used instead of the generated values if present.
Deprecated
Parameters
- string $fieldName
- string $label
- array $options
- Options for the label element.
Returns
Generated label element
_introspectModel() protected ¶
_introspectModel( string $model , string $key , string $field = null )
Inspects the model properties to extract information from them. Currently it can extract information from the the fields, the primary key and required fields
The $key parameter accepts the following list of values:
- key: Returns the name of the primary key for the model
- fields: Returns the model schema
- validates: returns the list of fields that are required
- errors: returns the list of validation errors
If the $field parameter is passed if will return the information for that sole field.
$this->_introspectModel('Post', 'fields', 'title');
will return the schema information for title column
Parameters
- string $model
- name of the model to extract information from
- string $key
- name of the special information key to obtain (key, fields, validates, errors)
- string $field optional null
- name of the model field to get information from
Returns
information extracted for the special key and field in a model
_isRequiredField() protected ¶
_isRequiredField( array $validateProperties )
Returns if a field is required to be filled based on validation properties from the validating object.
Parameters
- array $validateProperties
Returns
true if field is required to be filled, false otherwise
_name() protected ¶
_name( array $options = array() , string $field = null , string $key = 'name' )
Gets the input field name for the current tag
Parameters
- array $options optional array()
- string $field optional null
- string $key optional 'name'
Returns
_secure() protected ¶
_secure( boolean $lock , mixed $field = null , mixed $value = null )
Determine which fields of a form should be used for hash. Populates $this->fields
Parameters
- boolean $lock
Whether this field should be part of the validation or excluded as part of the unlockedFields.
- mixed $field optional null
- Reference to field to be secured. Should be dot separated to indicate nesting.
- mixed $value optional null
- Field value, if value should not be tampered with.
_selectOptions() protected ¶
_selectOptions( array $elements = array() , array $parents = array() , boolean $showParents = null , array $attributes = array() )
Returns an array of formatted OPTION/OPTGROUP elements
Parameters
- array $elements optional array()
- array $parents optional array()
- boolean $showParents optional null
- array $attributes optional array()
Returns
button() public ¶
button( string $title , array $options = array() )
Creates a <button>
tag. The type attribute defaults to type="submit"
You can change it to a different value by using $options['type']
.
Options:
escape
- HTML entity encode the $title of the button. Defaults to false.
Parameters
- string $title
- The button's caption. Not automatically HTML encoded
- array $options optional array()
- Array of options and HTML attributes.
Returns
A HTML button tag.
Link
checkbox() public ¶
checkbox( string $fieldName , array $options = array() )
Creates a checkbox input widget.
Options:
value
- the value of the checkboxchecked
- boolean indicate that this checkbox is checked.hiddenField
- boolean to indicate if you want the results of checkbox() to include a hidden input with a value of ''.disabled
- create a disabled input.default
- Set the default value for the checkbox. This allows you to start checkboxes as checked, without having to check the POST data. A matching POST data value, will overwrite the default value.
Parameters
- string $fieldName
- Name of a field, like this "Modelname.fieldname"
- array $options optional array()
- Array of HTML attributes.
Returns
An HTML text input element.
Link
create() public ¶
create( string $model = null , array $options = array() )
Returns an HTML FORM element.
Options:
type
Form method defaults to POSTaction
The controller action the form submits to, (optional).url
The url the form submits to. Can be a string or a url array. If you use 'url' you should leave 'action' undefined.default
Allows for the creation of Ajax forms. Set this to false to prevent the default event handler. Will create an onsubmit attribute if it doesn't not exist. If it does, default action suppression will be appended.onsubmit
Used in conjunction with 'default' to create ajax forms.inputDefaults
set the default $options for FormHelper::input(). Any options that would be set when using FormHelper::input() can be set here. Options set withinputDefaults
can be overridden when calling input()encoding
Set the accept-charset encoding for the form. Defaults toConfigure::read('App.encoding')
Parameters
- string $model optional null
The model object which the form is being defined for. Should include the plugin name for plugin forms. e.g.
ContactManager.Contact
.- array $options optional array()
- An array of html attributes and options.
Returns
An formatted opening FORM tag.
Link
dateTime() public ¶
dateTime( string $fieldName , string $dateFormat = 'DMY' , string $timeFormat = '12' , string $attributes = array() )
Returns a set of SELECT elements for a full datetime setup: day, month and year, and then time.
Attributes:
monthNames
If false, 2 digit numbers will be used instead of text. If a array, the given array will be used.minYear
The lowest year to use in the year selectmaxYear
The maximum year to use in the year selectinterval
The interval for the minutes select. Defaults to 1separator
The contents of the string between select elements. Defaults to '-'empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.value
|default
The default value to be used by the input. A value in$this->data
matching the field name will override this value. If no default is providedtime()
will be used.
Parameters
- string $fieldName
- Prefix name for the SELECT element
- string $dateFormat optional 'DMY'
- DMY, MDY, YMD, or null to not generate date inputs.
- string $timeFormat optional '12'
- 12, 24, or null to not generate time inputs.
- string $attributes optional array()
- array of Attributes
Returns
Generated set of select boxes for the date and time formats chosen.
Link
day() public ¶
day( string $fieldName = null , array $attributes = array() )
Returns a SELECT element for days.
Attributes:
empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.value
The selected value of the input.
Parameters
- string $fieldName optional null
- Prefix name for the SELECT element
- array $attributes optional array()
- HTML attributes for the select element
Returns
A generated day select box.
Link
end() public ¶
end( mixed $options = null )
Closes an HTML form, cleans up values set by FormHelper::create(), and writes hidden input fields where appropriate.
If $options is set a form submit button will be created. Options can be either a string or an array.
{{{ array usage:
array('label' => 'save'); value="save" array('label' => 'save', 'name' => 'Whatever'); value="save" name="Whatever" array('name' => 'Whatever'); value="Submit" name="Whatever" array('label' => 'save', 'name' => 'Whatever', 'div' => 'good')
<
div class="good"> value="save" name="Whatever" array('label' => 'save', 'name' => 'Whatever', 'div' => array('class' => 'good'));
<
div class="good"> value="save" name="Whatever" }}}
Parameters
- mixed $options optional null
- as a string will use $options as the value of button,
Returns
a closing FORM tag optional submit button.
Link
error() public ¶
error( string $field , mixed $text = null , array $options = array() )
Returns a formatted error message for given FORM field, NULL if no errors.
Options:
escape
bool Whether or not to html escape the contents of the error.wrap
mixed Whether or not the error message should be wrapped in a div. If a string, will be used as the HTML tag to use.class
string The classname for the error message
Parameters
- string $field
- A field name, like "Modelname.fieldname"
- mixed $text optional null
Error message as string or array of messages. If array contains
attributes
key it will be used as options for error container- array $options optional array()
Rendering options for
wrapper tag
Returns
If there are errors this method returns an error message, otherwise null.
Link
file() public ¶
file( string $fieldName , array $options = array() )
Creates file input widget.
Parameters
- string $fieldName
- Name of a field, in the form "Modelname.fieldname"
- array $options optional array()
- Array of HTML attributes.
Returns
A generated file input.
Link
hidden() public ¶
hidden( string $fieldName , array $options = array() )
Creates a hidden input field.
Parameters
- string $fieldName
- Name of a field, in the form of "Modelname.fieldname"
- array $options optional array()
- Array of HTML attributes.
Returns
A generated hidden input
Link
hour() public ¶
hour( string $fieldName , boolean $format24Hours = false , array $attributes = array() )
Returns a SELECT element for hours.
Attributes:
empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.value
The selected value of the input.
Parameters
- string $fieldName
- Prefix name for the SELECT element
- boolean $format24Hours optional false
- True for 24 hours format
- array $attributes optional array()
- List of HTML attributes
Returns
Completed hour select input
Link
input() public ¶
input( string $fieldName , array $options = array() )
Generates a form input element complete with label and wrapper div
Options
See each field type method for more information. Any options that are part of
$attributes or $options for the different type methods can be included in $options
for input().i
Additionally, any unknown keys that are not in the list below, or part of the selected type's options
will be treated as a regular html attribute for the generated input.
type
- Force the type of widget you want. e.g.type => 'select'
label
- Either a string label, or an array of options for the label. See FormHelper::label()div
- Eitherfalse
to disable the div, or an array of options for the div. See HtmlHelper::div() for more options.options
- for widgets that take options e.g. radio, selecterror
- control the error message that is producedempty
- String or boolean to enable empty select box options.before
- Content to place before the label + input.after
- Content to place after the label + input.between
- Content to place between the label + input.format
- format template for element order. Any element that is not in the array, will not be in the output.- Default input format order: array('before', 'label', 'between', 'input', 'after', 'error')
- Default checkbox format order: array('before', 'input', 'between', 'label', 'after', 'error')
- Hidden input will not be formatted
- Radio buttons cannot have the order of input and label elements controlled with these settings.
Parameters
- string $fieldName
- This should be "Modelname.fieldname"
- array $options optional array()
- Each type of input takes different options.
Returns
Completed form widget.
Link
inputs() public ¶
inputs( mixed $fields = null , array $blacklist = null )
Generate a set of inputs for $fields
. If $fields is null the current model
will be used.
In addition to controller fields output, $fields
can be used to control legend
and fieldset rendering with the fieldset
and legend
keys.
$form->inputs(array('legend' => 'My legend'));
Would generate an input set with
a custom legend. You can customize individual inputs through $fields
as well.
{{{ $form->inputs(array( 'name' => array('label' => 'custom label') )); }}}
In addition to fields control, inputs() allows you to use a few additional options.
fieldset
Set to false to disable the fieldset. If a string is supplied it will be used as the classname for the fieldset element.legend
Set to false to disable the legend for the generated input set. Or supply a string to customize the legend text.
Parameters
- mixed $fields optional null
- An array of fields to generate inputs for, or null.
- array $blacklist optional null
- a simple array of fields to not create inputs for.
Returns
Completed form inputs.
Link
isFieldError() public ¶
isFieldError( string $field )
Returns true if there is an error for the given field, otherwise false
Parameters
- string $field
- This should be "Modelname.fieldname"
Returns
If there are errors this method returns true, else false.
Link
label() public ¶
label( string $fieldName = null , string $text = null , mixed $options = array() )
Returns a formatted LABEL element for HTML FORMs. Will automatically generate a for attribute if one is not provided.
Options
for
- Set the for attribute, if its not defined the for attribute will be generated from the $fieldName parameter using FormHelper::domId().
Examples:
The text and for attribute are generated off of the fieldname
{{{ echo $this->Form->label('Post.published'); }}}
Custom text:
{{{ echo $this->Form->label('Post.published', 'Publish'); }}}
Custom class name:
{{{ echo $this->Form->label('Post.published', 'Publish', 'required'); }}}
Custom attributes:
{{{ echo $this->Form->label('Post.published', 'Publish', array( 'for' => 'post-publish' )); }}}
Parameters
- string $fieldName optional null
- This should be "Modelname.fieldname"
- string $text optional null
Text that will appear in the label field. If $text is left undefined the text will be inflected from the fieldName.
- mixed $options optional array()
- An array of HTML attributes, or a string, to be used as a class name.
Returns
The formatted LABEL element
Link
meridian() public ¶
meridian( string $fieldName , string $attributes = array() )
Returns a SELECT element for AM or PM.
Attributes:
empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.value
The selected value of the input.
Parameters
- string $fieldName
- Prefix name for the SELECT element
- string $attributes optional array()
- Array of Attributes
Returns
Completed meridian select input
Link
minute() public ¶
minute( string $fieldName , string $attributes = array() )
Returns a SELECT element for minutes.
Attributes:
empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.value
The selected value of the input.
Parameters
- string $fieldName
- Prefix name for the SELECT element
- string $attributes optional array()
- Array of Attributes
Returns
Completed minute select input.
Link
month() public ¶
month( string $fieldName , array $attributes = array() )
Returns a SELECT element for months.
Attributes:
monthNames
- If false, 2 digit numbers will be used instead of text. If a array, the given array will be used.empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.value
The selected value of the input.
Parameters
- string $fieldName
- Prefix name for the SELECT element
- array $attributes optional array()
- Attributes for the select element
Returns
A generated month select dropdown.
Link
postButton() public ¶
postButton( string $title , mixed $url , array $options = array() )
Create a <button>
tag with a surrounding <form>
that submits via POST.
This method creates a <form>
element. So do not use this method in an already opened form.
Instead use FormHelper::submit() or FormHelper::button() to create buttons inside opened forms.
Options:
data
- Array with key/value to pass in input hidden- Other options is the same of button method.
Parameters
- string $title
- The button's caption. Not automatically HTML encoded
- mixed $url
- URL as string or array
- array $options optional array()
- Array of options and HTML attributes.
Returns
A HTML button tag.
Link
postLink() public ¶
postLink( string $title , mixed $url = null , array $options = array() , string $confirmMessage = false )
Creates an HTML link, but access the url using method POST. Requires javascript to be enabled in browser.
This method creates a <form>
element. So do not use this method inside an existing form.
Instead you should add a submit button using FormHelper::submit()
Options:
data
- Array with key/value to pass in input hiddenconfirm
- Can be used instead of $confirmMessage.- Other options is the same of HtmlHelper::link() method.
- The option
onclick
will be replaced.
Parameters
- string $title
- The content to be wrapped by tags.
- mixed $url optional null
- Cake-relative URL or array of URL parameters, or external URL (starts with http://)
- array $options optional array()
- Array of HTML attributes.
- string $confirmMessage optional false
- JavaScript confirmation message.
Returns
An
<a />
element.Link
radio() public ¶
radio( string $fieldName , array $options = array() , array $attributes = array() )
Creates a set of radio widgets. Will create a legend and fieldset by default. Use $options to control this
Attributes:
separator
- define the string in between the radio buttonsbetween
- the string between legend and input setlegend
- control whether or not the widget set has a fieldset & legendvalue
- indicate a value that is should be checkedlabel
- boolean to indicate whether or not labels for widgets show be displayedhiddenField
- boolean to indicate if you want the results of radio() to include a hidden input with a value of ''. This is useful for creating radio sets that non-continuousdisabled
- Set totrue
ordisabled
to disable all the radio buttons.
Parameters
- string $fieldName
- Name of a field, like this "Modelname.fieldname"
- array $options optional array()
- Radio button options array.
- array $attributes optional array()
- Array of HTML attributes, and special attributes above.
Returns
Completed radio widget set.
Link
secure() public ¶
secure( array $fields = array() )
Generates a hidden field with a security hash based on the fields used in the form.
Parameters
- array $fields optional array()
- The list of fields to use when generating the hash
Returns
A hidden input field with a security hash
Link
select() public ¶
select( string $fieldName , array $options = array() , array $attributes = array() )
Returns a formatted SELECT element.
Attributes:
showParents
- If included in the array and set to true, an additional option element will be added for the parent of each option group. You can set an option with the same name and it's key will be used for the value of the option.multiple
- show a multiple select box. If set to 'checkbox' multiple checkboxes will be created instead.empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.escape
- If true contents of options will be HTML entity encoded. Defaults to true.value
The selected value of the input.class
- When using multiple = checkbox the classname to apply to the divs. Defaults to 'checkbox'.
Using options
A simple array will create normal options:
{{{ $options = array(1 => 'one', 2 => 'two); $this->Form->select('Model.field', $options)); }}}
While a nested options array will create optgroups with options inside them. {{{ $options = array( 1 => 'bill', 'fred' => array( 2 => 'fred', 3 => 'fred jr.' ) ); $this->Form->select('Model.field', $options); }}}
In the above 2 => 'fred'
will not generate an option element. You should enable the showParents
attribute to show the fred option.
If you have multiple options that need to have the same value attribute, you can use an array of arrays to express this:
{{{ $options = array( array('name' => 'United states', 'value' => 'USA'), array('name' => 'USA', 'value' => 'USA'), ); }}}
Parameters
- string $fieldName
- Name attribute of the SELECT
- array $options optional array()
Array of the OPTION elements (as 'value'=>'Text' pairs) to be used in the SELECT element
- array $attributes optional array()
- The HTML attributes of the select element.
Returns
Formatted SELECT element
Link
submit() public ¶
submit( string $caption = null , array $options = array() )
Creates a submit button element. This method will generate <input />
elements that
can be used to submit, and reset forms by using $options. image submits can be created by supplying an
image path for $caption.
Options
div
- Include a wrapping div? Defaults to true. Accepts sub options similar to FormHelper::input().before
- Content to include before the input.after
- Content to include after the input.type
- Set to 'reset' for reset inputs. Defaults to 'submit'- Other attributes will be assigned to the input element.
Options
div
- Include a wrapping div? Defaults to true. Accepts sub options similar to FormHelper::input().- Other attributes will be assigned to the input element.
Parameters
- string $caption optional null
The label appearing on the button OR if string contains :// or the extension .jpg, .jpe, .jpeg, .gif, .png use an image if the extension exists, AND the first character is /, image is relative to webroot, OR if the first character is not /, image is relative to webroot/img.
- array $options optional array()
- Array of options. See above.
Returns
A HTML submit button
Link
tagIsInvalid() public ¶
tagIsInvalid( )
Returns false if given form field described by the current entity has no errors. Otherwise it returns the validation message
Returns
Either false when there or no errors, or an array of error strings. An error string could be ''.
Link
textarea() public ¶
textarea( string $fieldName , array $options = array() )
Creates a textarea widget.
Options:
escape
- Whether or not the contents of the textarea should be escaped. Defaults to true.
Parameters
- string $fieldName
- Name of a field, in the form "Modelname.fieldname"
- array $options optional array()
- Array of HTML attributes, and special options above.
Returns
A generated HTML text input element
Link
unlockField() public ¶
unlockField( string $name = null )
Add to or get the list of fields that are currently unlocked. Unlocked fields are not included in the field hash used by SecurityComponent unlocking a field once its been added to the list of secured fields will remove it from the list of fields.
Parameters
- string $name optional null
- The dot separated name for the field.
Returns
Either null, or the list of fields.
Link
year() public ¶
year( string $fieldName , integer $minYear = null , integer $maxYear = null , array $attributes = array() )
Returns a SELECT element for years
Attributes:
empty
- If true, the empty select option is shown. If a string, that string is displayed as the empty element.orderYear
- Ordering of year values in select options. Possible values 'asc', 'desc'. Default 'desc'value
The selected value of the input.
Parameters
- string $fieldName
- Prefix name for the SELECT element
- integer $minYear optional null
- First year in sequence
- integer $maxYear optional null
- Last year in sequence
- array $attributes optional array()
- Attribute array for the select elements.
Returns
Completed year select input
Link
Properties detail
$_inputDefaults ¶
Persistent default options used by input(). Set by FormHelper::create().
array()
$_models ¶
Holds the model references already loaded by this helper product of trying to inspect them out of field names
array()
$_options ¶
Options used by DateTime fields
array( 'day' => array(), 'minute' => array(), 'hour' => array(), 'month' => array(), 'year' => array(), 'meridian' => array() )
$_unlockedFields ¶
An array of field names that have been excluded from the Token hash used by SecurityComponent's validatePost method
See
SecurityComponent::validatePost()
array()
$requestType ¶
Defines the type of form being created. Set by FormHelper::create().
null
$validationErrors ¶
Holds all the validation errors for models loaded and inspected it can also be set manually to be able to display custom error messages in the any of the input fields generated by this helper
array()