MediaWiki master
|
Helper class to keep track of options when mixing links and form elements. More...
Inherits ArrayAccess.
Public Member Functions | |
add ( $name, $default, $type=self::AUTO) | |
Add an option to be handled by this FormOptions instance. | |
consumeValue ( $name) | |
Get the value of given option and mark it as 'consumed'. | |
consumeValues ( $names) | |
Get the values of given options and mark them as 'consumed'. | |
delete ( $name) | |
Remove an option being handled by this FormOptions instance. | |
fetchValuesFromRequest (WebRequest $r, $optionKeys=null) | |
Fetch values for all options (or selected options) from the given WebRequest, making them available for accessing with getValue() or consumeValue() etc. | |
getAllValues () | |
Format options to an array ( name => value ) | |
getChangedValues () | |
Return options modified as an array ( name => value ) | |
getUnconsumedValues ( $all=false) | |
Get all remaining values which have not been consumed by consumeValue() or consumeValues(). | |
getValue ( $name) | |
Get the value for the given option name. | |
reset ( $name) | |
Delete the option value. | |
setValue ( $name, $value, $force=false) | |
Use to set the value of an option. | |
validateBounds ( $name, $min, $max) | |
Constrain a numeric value for a given option to a given range. | |
validateIntBounds ( $name, $min, $max) | |
validateName ( $name, $strict=false) | |
Verify that the given option name exists. | |
ArrayAccess functions | |
These functions implement the ArrayAccess PHP interface. | |
offsetExists ( $name) | |
Whether the option exists. | |
offsetGet ( $name) | |
Retrieve an option value. | |
offsetSet ( $name, $value) | |
Set an option to given value. | |
offsetUnset ( $name) | |
Delete the option. | |
Static Public Member Functions | |
static | guessType ( $data) |
Used to find out which type the data is. | |
Public Attributes | |
Type constants | |
Used internally to map an option value to a WebRequest accessor | |
const | AUTO = -1 |
Mark value for automatic detection (for simple data types only) | |
const | STRING = 0 |
String type, maps guessType() to WebRequest::getText() | |
const | INT = 1 |
Integer type, maps guessType() to WebRequest::getInt() | |
const | FLOAT = 4 |
Float type, maps guessType() to WebRequest::getFloat() | |
const | BOOL = 2 |
Boolean type, maps guessType() to WebRequest::getBool() | |
const | INTNULL = 3 |
Integer type or null, maps to WebRequest::getIntOrNull() This is useful for the namespace selector. | |
const | ARR = 5 |
Array type, maps guessType() to WebRequest::getArray() | |
Protected Member Functions | |
getValueReal ( $option) | |
Return current option value, based on a structure taken from $options. | |
Protected Attributes | |
array | $options = [] |
Map of known option names to information about them. | |
Helper class to keep track of options when mixing links and form elements.
Definition at line 42 of file FormOptions.php.
MediaWiki\Html\FormOptions::add | ( | $name, | |
$default, | |||
$type = self::AUTO ) |
Add an option to be handled by this FormOptions instance.
string | $name | Request parameter name |
mixed | $default | Default value when the request parameter is not present |
int | $type | One of the type constants (optional, defaults to AUTO) |
Definition at line 91 of file FormOptions.php.
References MediaWiki\Html\FormOptions\guessType().
Referenced by ChangesListBooleanFilterGroup\addOptions(), ChangesListStringOptionsFilterGroup\addOptions(), MediaWiki\Specials\SpecialLog\execute(), MediaWiki\Specials\SpecialNewFiles\execute(), and MediaWiki\Specials\SpecialNewPages\setup().
MediaWiki\Html\FormOptions::consumeValue | ( | $name | ) |
Get the value of given option and mark it as 'consumed'.
Consumed options are not returned by getUnconsumedValues(). Callers should verify that the given option exists.
string | $name | Option name |
Definition at line 227 of file FormOptions.php.
References MediaWiki\Html\FormOptions\getValueReal(), and MediaWiki\Html\FormOptions\validateName().
MediaWiki\Html\FormOptions::consumeValues | ( | $names | ) |
Get the values of given options and mark them as 'consumed'.
Consumed options are not returned by getUnconsumedValues(). Callers should verify that all the given options exist.
string[] | $names | List of option names |
Definition at line 242 of file FormOptions.php.
References MediaWiki\Html\FormOptions\getValueReal(), and MediaWiki\Html\FormOptions\validateName().
MediaWiki\Html\FormOptions::delete | ( | $name | ) |
Remove an option being handled by this FormOptions instance.
This is the inverse of add().
string | $name | Request parameter name |
Definition at line 111 of file FormOptions.php.
References MediaWiki\Html\FormOptions\validateName().
MediaWiki\Html\FormOptions::fetchValuesFromRequest | ( | WebRequest | $r, |
$optionKeys = null ) |
Fetch values for all options (or selected options) from the given WebRequest, making them available for accessing with getValue() or consumeValue() etc.
WebRequest | $r | The request to fetch values from |
array | null | $optionKeys | Which options to fetch the values for (default: all of them). Note that passing an empty array will also result in values for all keys being fetched. |
Definition at line 349 of file FormOptions.php.
References MediaWiki\Html\FormOptions\ARR, MediaWiki\Html\FormOptions\BOOL, MediaWiki\Html\FormOptions\FLOAT, MediaWiki\Request\WebRequest\getArray(), MediaWiki\Request\WebRequest\getBool(), MediaWiki\Request\WebRequest\getFloat(), MediaWiki\Request\WebRequest\getInt(), MediaWiki\Request\WebRequest\getIntOrNull(), MediaWiki\Request\WebRequest\getText(), MediaWiki\Html\FormOptions\INT, MediaWiki\Html\FormOptions\INTNULL, and MediaWiki\Html\FormOptions\STRING.
Referenced by MediaWiki\Specials\SpecialNewFiles\execute(), and MediaWiki\Specials\SpecialNewPages\setup().
MediaWiki\Html\FormOptions::getAllValues | ( | ) |
Format options to an array ( name => value )
Definition at line 328 of file FormOptions.php.
References MediaWiki\Html\FormOptions\getValueReal().
MediaWiki\Html\FormOptions::getChangedValues | ( | ) |
Return options modified as an array ( name => value )
Definition at line 312 of file FormOptions.php.
Referenced by MediaWiki\Specials\SpecialWatchlist\setTopText(), and MediaWiki\SpecialPage\ChangesListSpecialPage\validateOptions().
MediaWiki\Html\FormOptions::getUnconsumedValues | ( | $all = false | ) |
Get all remaining values which have not been consumed by consumeValue() or consumeValues().
bool | $all | Whether to include unchanged options (default: false) |
Definition at line 294 of file FormOptions.php.
References MediaWiki\Html\FormOptions\getValueReal().
MediaWiki\Html\FormOptions::getValue | ( | $name | ) |
Get the value for the given option name.
Uses getValueReal() internally.
string | $name | Option name |
statically.
Definition at line 189 of file FormOptions.php.
References MediaWiki\Html\FormOptions\getValueReal(), and MediaWiki\Html\FormOptions\validateName().
Referenced by MediaWiki\Pager\NewFilesPager\__construct(), MediaWiki\Pager\ActiveUsersPager\__construct(), MediaWiki\Pager\AllMessagesTablePager\__construct(), MediaWiki\Specials\SpecialNewFiles\execute(), and MediaWiki\Pager\NewFilesPager\getQueryInfo().
|
protected |
Return current option value, based on a structure taken from $options.
array | $option | Array structure describing the option |
Definition at line 201 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\consumeValue(), MediaWiki\Html\FormOptions\consumeValues(), MediaWiki\Html\FormOptions\getAllValues(), MediaWiki\Html\FormOptions\getUnconsumedValues(), MediaWiki\Html\FormOptions\getValue(), and MediaWiki\Html\FormOptions\validateBounds().
|
static |
Used to find out which type the data is.
All types are defined in the 'Type constants' section of this class.
Detection of the INTNULL type is not supported; INT will be assumed if the data is an integer.
mixed | $data | Value to guess the type for |
Definition at line 125 of file FormOptions.php.
References MediaWiki\Html\FormOptions\ARR, MediaWiki\Html\FormOptions\BOOL, MediaWiki\Html\FormOptions\FLOAT, MediaWiki\Html\FormOptions\INT, and MediaWiki\Html\FormOptions\STRING.
Referenced by MediaWiki\Html\FormOptions\add().
MediaWiki\Html\FormOptions::offsetExists | ( | $name | ) |
Whether the option exists.
string | $name |
Definition at line 404 of file FormOptions.php.
MediaWiki\Html\FormOptions::offsetGet | ( | $name | ) |
Retrieve an option value.
string | $name |
Definition at line 414 of file FormOptions.php.
MediaWiki\Html\FormOptions::offsetSet | ( | $name, | |
$value ) |
Set an option to given value.
string | $name | |
mixed | $value |
Definition at line 423 of file FormOptions.php.
MediaWiki\Html\FormOptions::offsetUnset | ( | $name | ) |
MediaWiki\Html\FormOptions::reset | ( | $name | ) |
Delete the option value.
This will make future calls to getValue() return the default value.
string | $name | Option name |
Definition at line 214 of file FormOptions.php.
References MediaWiki\Html\FormOptions\validateName().
Referenced by MediaWiki\SpecialPage\ChangesListSpecialPage\buildQuery(), and MediaWiki\SpecialPage\ChangesListSpecialPage\replaceOldOptions().
MediaWiki\Html\FormOptions::setValue | ( | $name, | |
$value, | |||
$force = false ) |
Use to set the value of an option.
string | $name | Option name |
mixed | $value | Value for the option |
bool | $force | Whether to set the value when it is equivalent to the default value for this option (default false). |
Definition at line 170 of file FormOptions.php.
References MediaWiki\Html\FormOptions\validateName().
Referenced by MediaWiki\Specials\SpecialNewFiles\execute(), MediaWiki\Specials\SpecialNewPages\setup(), and MediaWiki\Html\FormOptions\validateBounds().
MediaWiki\Html\FormOptions::validateBounds | ( | $name, | |
$min, | |||
$max ) |
Constrain a numeric value for a given option to a given range.
The value will be altered to fit in the range.
string | $name | Option name. Must be of numeric type. |
int | float | $min | Minimum value |
int | float | $max | Maximum value |
Definition at line 274 of file FormOptions.php.
References MediaWiki\Html\FormOptions\getValueReal(), MediaWiki\Html\FormOptions\setValue(), and MediaWiki\Html\FormOptions\validateName().
Referenced by MediaWiki\Html\FormOptions\validateIntBounds(), and MediaWiki\SpecialPage\ChangesListSpecialPage\validateOptions().
MediaWiki\Html\FormOptions::validateIntBounds | ( | $name, | |
$min, | |||
$max ) |
string | $name | |
int | $min | |
int | $max |
Definition at line 260 of file FormOptions.php.
References MediaWiki\Html\FormOptions\validateBounds().
Referenced by MediaWiki\Specials\SpecialNewFiles\execute(), MediaWiki\Specials\SpecialNewPages\setup(), and MediaWiki\SpecialPage\ChangesListSpecialPage\validateOptions().
MediaWiki\Html\FormOptions::validateName | ( | $name, | |
$strict = false ) |
Verify that the given option name exists.
string | $name | Option name |
bool | $strict | Throw an exception when the option doesn't exist instead of returning false |
Definition at line 150 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\consumeValue(), MediaWiki\Html\FormOptions\consumeValues(), MediaWiki\Html\FormOptions\delete(), MediaWiki\Html\FormOptions\getValue(), MediaWiki\Html\FormOptions\reset(), MediaWiki\Html\FormOptions\setValue(), and MediaWiki\Html\FormOptions\validateBounds().
|
protected |
Map of known option names to information about them.
Each value is an array with the following keys:
Definition at line 80 of file FormOptions.php.
const MediaWiki\Html\FormOptions::ARR = 5 |
Array type, maps guessType() to WebRequest::getArray()
Definition at line 66 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\fetchValuesFromRequest(), and MediaWiki\Html\FormOptions\guessType().
const MediaWiki\Html\FormOptions::AUTO = -1 |
Mark value for automatic detection (for simple data types only)
Definition at line 48 of file FormOptions.php.
const MediaWiki\Html\FormOptions::BOOL = 2 |
Boolean type, maps guessType() to WebRequest::getBool()
Definition at line 58 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\fetchValuesFromRequest(), and MediaWiki\Html\FormOptions\guessType().
const MediaWiki\Html\FormOptions::FLOAT = 4 |
Float type, maps guessType() to WebRequest::getFloat()
Definition at line 56 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\fetchValuesFromRequest(), and MediaWiki\Html\FormOptions\guessType().
const MediaWiki\Html\FormOptions::INT = 1 |
Integer type, maps guessType() to WebRequest::getInt()
Definition at line 52 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\fetchValuesFromRequest(), and MediaWiki\Html\FormOptions\guessType().
const MediaWiki\Html\FormOptions::INTNULL = 3 |
Integer type or null, maps to WebRequest::getIntOrNull() This is useful for the namespace selector.
Definition at line 62 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\fetchValuesFromRequest().
const MediaWiki\Html\FormOptions::STRING = 0 |
String type, maps guessType() to WebRequest::getText()
Definition at line 50 of file FormOptions.php.
Referenced by MediaWiki\Html\FormOptions\fetchValuesFromRequest(), and MediaWiki\Html\FormOptions\guessType().