MediaWiki
REL1_24
|
The parent class to generate form fields. More...
Public Member Functions | |
__construct ($params) | |
Initialise the object. | |
cancelSubmit ($value, $alldata) | |
Override this function if the control can somehow trigger a form submission that shouldn't actually submit the HTMLForm. | |
filter ($value, $alldata) | |
getAttributes (array $list) | |
Returns the given attributes from the parameters. | |
getDefault () | |
getDiv ($value) | |
Get the complete div for the input, including help text, labels, and whatever. | |
getErrorsAndErrorClass ($value) | |
Determine form errors to display and their classes. | |
getHelpText () | |
Determine the help text to display. | |
getHelpTextHtmlDiv ($helptext) | |
Generate help text HTML in div format. | |
getHelpTextHtmlRaw ($helptext) | |
Generate help text HTML formatted for raw output. | |
getHelpTextHtmlTable ($helptext) | |
Generate help text HTML in table format. | |
getInputHTML ($value) | |
This function must be implemented to return the HTML to generate the input object itself. | |
getLabel () | |
getLabelHtml ($cellAttributes=array()) | |
getOptions () | |
Fetch the array of options from the field's parameters. | |
getRaw ($value) | |
Get the complete raw fields for the input, including help text, labels, and whatever. | |
getTableRow ($value) | |
Get the complete table row for the input, including help text, labels, and whatever. | |
getTooltipAndAccessKey () | |
Returns the attributes required for the tooltip and accesskey. | |
isHidden ($alldata) | |
Test whether this field is supposed to be hidden, based on the values of the other form fields. | |
loadDataFromRequest ($request) | |
Get the value that this input has been set to from a posted form, or the input's default value if it has not been set. | |
msg () | |
Get a translated interface message. | |
setShowEmptyLabel ($show) | |
Tell the field whether to generate a separate label element if its label is blank. | |
validate ($value, $alldata) | |
Override this function to add specific validation checks on the field input. | |
Static Public Member Functions | |
static | flattenOptions ($options) |
flatten an array of options to a single array, for instance, a set of "<options>" inside "<optgroups>". | |
static | forceToStringRecursive ($array) |
Recursively forces values in an array to strings, because issues arise with integer 0 as a value. | |
Public Attributes | |
$mParams | |
HTMLForm | $mParent |
Protected Member Functions | |
getNearestFieldByName ($alldata, $name) | |
Fetch a field value from $alldata for the closest field matching a given name. | |
isHiddenRecurse (array $alldata, array $params) | |
Helper function for isHidden to handle recursive data structures. | |
needsLabel () | |
Should this field have a label, or is there no input element with the appropriate id for the label to point to? | |
Static Protected Member Functions | |
static | formatErrors ($errors) |
Formats one or more errors as accepted by field validation-callback. | |
Protected Attributes | |
$mClass = '' | |
$mDefault | |
$mFilterCallback | |
$mHelpClass = false | |
$mHideIf = null | |
$mID | |
$mLabel | |
$mName | |
$mOptions = false | |
$mOptionsLabelsNotFromMessage = false | |
bool | $mShowEmptyLabels = true |
If true will generate an empty div element with no label. | |
$mValidationCallback | |
Private Member Functions | |
lookupOptionsKeys ($options) | |
Given an array of msg-key => value mappings, returns an array with keys being the message texts. |
The parent class to generate form fields.
Any field type should be a subclass of this.
Definition at line 7 of file HTMLFormField.php.
HTMLFormField::__construct | ( | $ | params | ) |
Initialise the object.
array | $params | Associative Array. See HTMLForm doc for syntax. |
MWException |
Reimplemented in HTMLFormFieldCloner, Licenses, HTMLCheckMatrix, HTMLAutoCompleteSelectField, HTMLSelectAndOtherField, HTMLButtonField, HTMLInfoField, HTMLSelectOrOtherField, and HTMLHiddenField.
Definition at line 341 of file HTMLFormField.php.
HTMLFormField::cancelSubmit | ( | $ | value, |
$ | alldata | ||
) |
Override this function if the control can somehow trigger a form submission that shouldn't actually submit the HTMLForm.
string | array | $value | The value the field was submitted with |
array | $alldata | The data collected from the form |
Reimplemented in HTMLFormFieldCloner.
Definition at line 253 of file HTMLFormField.php.
HTMLFormField::filter | ( | $ | value, |
$ | alldata | ||
) |
Definition at line 287 of file HTMLFormField.php.
static HTMLFormField::flattenOptions | ( | $ | options | ) | [static] |
flatten an array of options to a single array, for instance, a set of "<options>" inside "<optgroups>".
array | $options | Associative Array with values either Strings or Arrays |
Definition at line 846 of file HTMLFormField.php.
Referenced by HTMLSelectAndOtherField\__construct(), Preferences\datetimePreferences(), HTMLMultiSelectField\filterDataForSubmit(), HTMLCheckMatrix\filterDataForSubmit(), HTMLSelectOrOtherField\getInputHTML(), HTMLAutoCompleteSelectField\getInputHTML(), Preferences\getOptionFromUser(), HTMLRadioField\validate(), HTMLSelectField\validate(), HTMLMultiSelectField\validate(), and HTMLAutoCompleteSelectField\validate().
static HTMLFormField::forceToStringRecursive | ( | $ | array | ) | [static] |
Recursively forces values in an array to strings, because issues arise with integer 0 as a value.
array | $array |
Definition at line 782 of file HTMLFormField.php.
Referenced by HTMLMultiSelectField\filterDataForSubmit(), and HTMLMultiSelectField\getInputHTML().
static HTMLFormField::formatErrors | ( | $ | errors | ) | [static, protected] |
Formats one or more errors as accepted by field validation-callback.
Definition at line 867 of file HTMLFormField.php.
HTMLFormField::getAttributes | ( | array $ | list | ) |
Returns the given attributes from the parameters.
array | $list | List of attributes to get |
Reimplemented in HTMLAutoCompleteSelectField.
Definition at line 739 of file HTMLFormField.php.
Referenced by HTMLMultiSelectField\formatOptions(), HTMLRadioField\formatOptions(), HTMLCheckField\getInputHTML(), HTMLTextField\getInputHTML(), HTMLTextAreaField\getInputHTML(), HTMLButtonField\getInputHTML(), HTMLSelectField\getInputHTML(), HTMLSelectAndOtherField\getInputHTML(), and HTMLCheckMatrix\getInputHTML().
Reimplemented in HTMLCheckMatrix, HTMLFormFieldCloner, and HTMLMultiSelectField.
Definition at line 712 of file HTMLFormField.php.
Referenced by HTMLAutoCompleteSelectField\loadDataFromRequest(), HTMLSelectAndOtherField\loadDataFromRequest(), HTMLCheckField\loadDataFromRequest(), and HTMLSelectOrOtherField\loadDataFromRequest().
HTMLFormField::getDiv | ( | $ | value | ) |
Get the complete div for the input, including help text, labels, and whatever.
string | $value | The value to set the input to. |
Reimplemented in HTMLInfoField, HTMLHiddenField, HTMLEditTools, and HTMLApiField.
Definition at line 490 of file HTMLFormField.php.
HTMLFormField::getErrorsAndErrorClass | ( | $ | value | ) |
Determine form errors to display and their classes.
string | $value | The value of the input |
Definition at line 657 of file HTMLFormField.php.
Referenced by HTMLCheckMatrix\getTableRow().
Determine the help text to display.
Definition at line 622 of file HTMLFormField.php.
Referenced by HTMLCheckMatrix\getTableRow().
HTMLFormField::getHelpTextHtmlDiv | ( | $ | helptext | ) |
Generate help text HTML in div format.
string | null | $helptext |
Definition at line 586 of file HTMLFormField.php.
HTMLFormField::getHelpTextHtmlRaw | ( | $ | helptext | ) |
Generate help text HTML formatted for raw output.
string | null | $helptext |
Definition at line 613 of file HTMLFormField.php.
HTMLFormField::getHelpTextHtmlTable | ( | $ | helptext | ) |
Generate help text HTML in table format.
string | null | $helptext |
Definition at line 557 of file HTMLFormField.php.
Referenced by HTMLCheckMatrix\getTableRow().
HTMLFormField::getInputHTML | ( | $ | value | ) | [abstract] |
This function must be implemented to return the HTML to generate the input object itself.
It should not implement the surrounding table cells/rows, or labels/help messages.
string | $value | The value to set the input to; eg a default text for a text input. |
Reimplemented in HTMLFormFieldCloner, Licenses, HTMLAutoCompleteSelectField, HTMLCheckMatrix, HTMLHiddenField, HTMLSelectAndOtherField, HTMLRadioField, HTMLMultiSelectField, HTMLSelectField, HTMLSelectOrOtherField, HTMLButtonField, HTMLApiField, HTMLTextAreaField, HTMLInfoField, HTMLTextField, HTMLCheckField, and HTMLEditTools.
Reimplemented in HTMLCheckField.
Definition at line 671 of file HTMLFormField.php.
HTMLFormField::getLabelHtml | ( | $ | cellAttributes = array() | ) |
Reimplemented in UploadSourceField.
Definition at line 675 of file HTMLFormField.php.
Referenced by HTMLCheckMatrix\getTableRow().
HTMLFormField::getNearestFieldByName | ( | $ | alldata, |
$ | name | ||
) | [protected] |
Fetch a field value from $alldata for the closest field matching a given name.
This is complex because it needs to handle array fields like the user would expect. The general algorithm is to look for $name as a sibling of $this, then a sibling of $this's parent, and so on. Keeping in mind that $name itself might be referencing an array.
array | $alldata | |
string | $name |
Definition at line 79 of file HTMLFormField.php.
Fetch the array of options from the field's parameters.
In order, this checks 'options-messages', 'options', then 'options-message'.
Definition at line 796 of file HTMLFormField.php.
Referenced by HTMLSelectOrOtherField\__construct(), HTMLSelectAndOtherField\__construct(), HTMLAutoCompleteSelectField\__construct(), HTMLMultiSelectField\filterDataForSubmit(), HTMLAutoCompleteSelectField\getAttributes(), HTMLSelectOrOtherField\getInputHTML(), HTMLSelectField\getInputHTML(), HTMLMultiSelectField\getInputHTML(), HTMLRadioField\getInputHTML(), HTMLAutoCompleteSelectField\getInputHTML(), HTMLRadioField\validate(), HTMLMultiSelectField\validate(), HTMLSelectField\validate(), and HTMLAutoCompleteSelectField\validate().
HTMLFormField::getRaw | ( | $ | value | ) |
Get the complete raw fields for the input, including help text, labels, and whatever.
string | $value | The value to set the input to. |
Reimplemented in HTMLInfoField, HTMLHiddenField, HTMLEditTools, and HTMLApiField.
Definition at line 535 of file HTMLFormField.php.
HTMLFormField::getTableRow | ( | $ | value | ) |
Get the complete table row for the input, including help text, labels, and whatever.
string | $value | The value to set the input to. |
Reimplemented in HTMLCheckMatrix, HTMLInfoField, HTMLHiddenField, HTMLEditTools, and HTMLApiField.
Definition at line 432 of file HTMLFormField.php.
Returns the attributes required for the tooltip and accesskey.
Definition at line 725 of file HTMLFormField.php.
Referenced by HTMLCheckField\getInputHTML(), HTMLTextField\getInputHTML(), and HTMLTextAreaField\getInputHTML().
HTMLFormField::isHidden | ( | $ | alldata | ) |
Test whether this field is supposed to be hidden, based on the values of the other form fields.
array | $alldata | The data collected from the form |
Definition at line 235 of file HTMLFormField.php.
HTMLFormField::isHiddenRecurse | ( | array $ | alldata, |
array $ | params | ||
) | [protected] |
Helper function for isHidden to handle recursive data structures.
array | $alldata | |
array | $params |
Definition at line 128 of file HTMLFormField.php.
HTMLFormField::loadDataFromRequest | ( | $ | request | ) |
Get the value that this input has been set to from a posted form, or the input's default value if it has not been set.
WebRequest | $request |
Reimplemented in HTMLCheckMatrix, HTMLFormFieldCloner, HTMLMultiSelectField, HTMLSelectOrOtherField, HTMLCheckField, HTMLSelectAndOtherField, and HTMLAutoCompleteSelectField.
Definition at line 325 of file HTMLFormField.php.
HTMLFormField::lookupOptionsKeys | ( | $ | options | ) | [private] |
Given an array of msg-key => value mappings, returns an array with keys being the message texts.
It also forces values to strings.
array | $options |
Definition at line 764 of file HTMLFormField.php.
Get a translated interface message.
This is a wrapper around $this->mParent->msg() if $this->mParent is set and wfMessage() otherwise.
Parameters are the same as wfMessage().
Definition at line 53 of file HTMLFormField.php.
Referenced by HTMLAutoCompleteSelectField\__construct(), HTMLEditTools\formatMsg(), HTMLFormFieldCloner\getInputHTML(), HTMLSelectAndOtherField\loadDataFromRequest(), HTMLIntField\validate(), HTMLMultiSelectField\validate(), HTMLRadioField\validate(), HTMLSelectField\validate(), HTMLFloatField\validate(), HTMLCheckMatrix\validate(), HTMLAutoCompleteSelectField\validate(), HTMLSelectAndOtherField\validate(), and HTMLFormFieldCloner\validate().
HTMLFormField::needsLabel | ( | ) | [protected] |
Should this field have a label, or is there no input element with the appropriate id for the label to point to?
Reimplemented in HTMLFormFieldCloner, HTMLMultiSelectField, HTMLRadioField, HTMLCheckField, HTMLInfoField, and HTMLButtonField.
Definition at line 301 of file HTMLFormField.php.
HTMLFormField::setShowEmptyLabel | ( | $ | show | ) |
Tell the field whether to generate a separate label element if its label is blank.
bool | $show | Set to false to not generate a label. |
Definition at line 314 of file HTMLFormField.php.
HTMLFormField::validate | ( | $ | value, |
$ | alldata | ||
) |
Override this function to add specific validation checks on the field input.
Don't forget to call parent::validate() to ensure that the user-defined callback mValidationCallback is still run
string | array | $value | The value the field was submitted with |
array | $alldata | The data collected from the form |
Reimplemented in EditWatchlistCheckboxSeriesField, HTMLFormFieldCloner, HTMLSelectAndOtherField, HTMLAutoCompleteSelectField, HTMLCheckMatrix, HTMLButtonField, HTMLSelectLimitField, HTMLFloatField, HTMLIntField, HTMLMultiSelectField, HTMLRadioField, and HTMLSelectField.
Definition at line 268 of file HTMLFormField.php.
Referenced by HtmlCheckMatrixTest\validate().
HTMLFormField::$mClass = '' [protected] |
Definition at line 15 of file HTMLFormField.php.
HTMLFormField::$mDefault [protected] |
Definition at line 17 of file HTMLFormField.php.
HTMLFormField::$mFilterCallback [protected] |
Definition at line 11 of file HTMLFormField.php.
HTMLFormField::$mHelpClass = false [protected] |
Definition at line 16 of file HTMLFormField.php.
HTMLFormField::$mHideIf = null [protected] |
Definition at line 20 of file HTMLFormField.php.
HTMLFormField::$mID [protected] |
Definition at line 14 of file HTMLFormField.php.
HTMLFormField::$mLabel [protected] |
Definition at line 13 of file HTMLFormField.php.
HTMLFormField::$mName [protected] |
Definition at line 12 of file HTMLFormField.php.
HTMLFormField::$mOptions = false [protected] |
Definition at line 18 of file HTMLFormField.php.
HTMLFormField::$mOptionsLabelsNotFromMessage = false [protected] |
Definition at line 19 of file HTMLFormField.php.
HTMLFormField::$mParams |
Definition at line 8 of file HTMLFormField.php.
HTMLForm HTMLFormField::$mParent |
Definition at line 29 of file HTMLFormField.php.
bool HTMLFormField::$mShowEmptyLabels = true [protected] |
If true will generate an empty div element with no label.
Definition at line 25 of file HTMLFormField.php.
HTMLFormField::$mValidationCallback [protected] |
Definition at line 10 of file HTMLFormField.php.