MediaWiki REL1_28
HTMLTitleTextField Class Reference

Implements a text input field for page titles. More...

Inheritance diagram for HTMLTitleTextField:
Collaboration diagram for HTMLTitleTextField:

Public Member Functions

 __construct ( $params)
 
 getInputHtml ( $value)
 
 validate ( $value, $alldata)
 Override this function to add specific validation checks on the field input.
 
- Public Member Functions inherited from HTMLTextField
 getInputHTML ( $value)
 This function must be implemented to return the HTML to generate the input object itself.
 
 getInputOOUI ( $value)
 Same as getInputHTML, but returns an OOUI object.
 
 getSize ()
 
 getSpellCheck ()
 
 isPersistent ()
 
- Public Member Functions inherited from HTMLFormField
 cancelSubmit ( $value, $alldata)
 Override this function if the control can somehow trigger a form submission that shouldn't actually submit the HTMLForm.
 
 canDisplayErrors ()
 True if this field type is able to display errors; false if validation errors need to be displayed in the main HTMLForm error area.
 
 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.
 
 getErrorsRaw ( $value)
 Determine form errors to display, returning them in an array.
 
 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.
 
 getInline ( $value)
 Get the complete field as an inline element.
 
 getLabel ()
 
 getLabelHtml ( $cellAttributes=[])
 
 getNotices ()
 Determine notices to display for the field.
 
 getOOUI ( $value)
 Get the OOUI version of the div.
 
 getOptions ()
 Fetch the array of options from the field's parameters.
 
 getOptionsOOUI ()
 Get options and make them into arrays suitable for OOUI.
 
 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.
 
 getVForm ( $value)
 Get the complete field for the input, including help text, labels, and whatever.
 
 hasVisibleOutput ()
 If this field has a user-visible output or not.
 
 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.
 
 skipLoadData ( $request)
 Skip this field when collecting data.
 

Protected Member Functions

 getDataAttribs ()
 Returns an array of data-* attributes to add to the field.
 
 getInputWidget ( $params)
 
 getOOUIModules ()
 Get the list of extra ResourceLoader modules which must be loaded client-side before it's possible to infuse this field's OOjs UI widget.
 
 shouldInfuseOOUI ()
 Whether the field should be automatically infused.
 
- Protected Member Functions inherited from HTMLTextField
 getType (&$attribs)
 
- Protected Member Functions inherited from HTMLFormField
 getFieldLayoutOOUI ( $inputField, $config)
 Get a FieldLayout (or subclass thereof) to wrap this field in when using OOUI output.
 
 getLabelAlignOOUI ()
 Get label alignment when generating field for OOUI.
 
 getMessage ( $value)
 Turns a *-message parameter (which could be a MessageSpecifier, or a message name, or a name + parameters array) into a Message.
 
 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.
 
 isSubmitAttempt (WebRequest $request)
 Can we assume that the request is an attempt to submit a HTMLForm, as opposed to an attempt to just view it? This can't normally be distinguished for e.g.
 
 needsLabel ()
 Should this field have a label, or is there no input element with the appropriate id for the label to point to?
 

Additional Inherited Members

- Static Public Member Functions inherited from HTMLFormField
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 inherited from HTMLFormField
 $mParams
 
HTMLForm null $mParent
 
- Static Protected Member Functions inherited from HTMLFormField
static formatErrors ( $errors)
 Formats one or more errors as accepted by field validation-callback.
 
- Protected Attributes inherited from HTMLTextField
 $mPlaceholder = ''
 
- Protected Attributes inherited from HTMLFormField
 $mClass = ''
 
 $mDefault
 
 $mDir
 
 $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
 
 $mVFormClass = ''
 

Detailed Description

Implements a text input field for page titles.

Automatically does validation that the title is valid, as well as autocompletion if using the OOUI display format.

Note: Forms using GET requests will need to make sure the title value is not an empty string.

Optional parameters: 'namespace' - Namespace the page must be in 'relative' - If true and 'namespace' given, strip/add the namespace from/to the title as needed 'creatable' - Whether to validate the title is creatable (not a special page) 'exists' - Whether to validate that the title already exists

Since
1.26

Definition at line 21 of file HTMLTitleTextField.php.

Constructor & Destructor Documentation

◆ __construct()

HTMLTitleTextField::__construct (   $params)
Parameters
array$params
  • type: HTML textfield type
  • size: field size in characters (defaults to 45)
  • placeholder/placeholder-message: set HTML placeholder attribute
  • spellcheck: set HTML spellcheck attribute
  • persistent: upon unsuccessful requests, retain the value (defaults to true, except for password fields)

Reimplemented from HTMLTextField.

Definition at line 22 of file HTMLTitleTextField.php.

References $params.

Member Function Documentation

◆ getDataAttribs()

HTMLTitleTextField::getDataAttribs ( )
protected

Returns an array of data-* attributes to add to the field.

Returns
array

Reimplemented from HTMLTextField.

Definition at line 100 of file HTMLTitleTextField.php.

◆ getInputHtml()

HTMLTitleTextField::getInputHtml (   $value)

Definition at line 92 of file HTMLTitleTextField.php.

References $value.

◆ getInputWidget()

HTMLTitleTextField::getInputWidget (   $params)
protected

Reimplemented from HTMLTextField.

Definition at line 75 of file HTMLTitleTextField.php.

References $params.

◆ getOOUIModules()

HTMLTitleTextField::getOOUIModules ( )
protected

Get the list of extra ResourceLoader modules which must be loaded client-side before it's possible to infuse this field's OOjs UI widget.

Returns
string[]

Reimplemented from HTMLFormField.

Definition at line 87 of file HTMLTitleTextField.php.

◆ shouldInfuseOOUI()

HTMLTitleTextField::shouldInfuseOOUI ( )
protected

Whether the field should be automatically infused.

Note that all OOjs UI HTMLForm fields are infusable (you can call OO.ui.infuse() on them), but not all are infused by default, since there is no benefit in doing it e.g. for buttons and it's a small performance hit on page load.

Returns
bool

Reimplemented from HTMLFormField.

Definition at line 83 of file HTMLTitleTextField.php.

◆ validate()

HTMLTitleTextField::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

Parameters
string | array$valueThe value the field was submitted with
array$alldataThe data collected from the form
Returns
bool|string True on success, or String error to display, or false to fail validation without displaying an error.

Reimplemented from HTMLFormField.

Definition at line 33 of file HTMLTitleTextField.php.

References $e, $params, $title, $value, $wgContLang, MalformedTitleException\getErrorMessage(), global, and HTMLFormField\msg().


The documentation for this class was generated from the following file: