MediaWiki  master
FormAction Class Reference

An action which shows a form and does something based on the input from the form. More...

Inheritance diagram for FormAction:
Collaboration diagram for FormAction:

Public Member Functions

 doesWrites ()
 
 onSubmit ( $data)
 Process the form on POST submission. More...
 
 onSuccess ()
 Do something exciting on successful processing of the form. More...
 
 show ()
 The basic pattern for actions is to display some sort of HTMLForm UI, maybe with some stuff underneath (history etc); to do some processing on submission of that form (delete, protect, etc) and to do something exciting on 'success', be that display something new or redirect to somewhere. More...
 
- Public Member Functions inherited from Action
 __construct (Page $page, IContextSource $context=null)
 Only public since 1.21. More...
 
 addHelpLink ( $to, $overrideBaseUrl=false)
 Adds help link with an icon via page indicators. More...
 
 doesWrites ()
 Indicates whether this action may perform database writes. More...
 
 getContext ()
 Get the IContextSource in use here. More...
 
 getLanguage ()
 Shortcut to get the user Language being used for this instance. More...
 
 getName ()
 Return the name of the action this object responds to. More...
 
 getOutput ()
 Get the OutputPage being used for this instance. More...
 
 getRequest ()
 Get the WebRequest being used for this instance. More...
 
 getRestriction ()
 Get the permission required to perform this action. More...
 
 getSkin ()
 Shortcut to get the Skin being used for this instance. More...
 
 getTitle ()
 Shortcut to get the Title object from the page. More...
 
 getUser ()
 Shortcut to get the User being used for this instance. More...
 
 msg ( $key)
 Get a Message object with context set Parameters are the same as wfMessage() More...
 
 requiresUnblock ()
 Whether this action can still be executed by a blocked user. More...
 
 requiresWrite ()
 Whether this action requires the wiki not to be locked. More...
 
 show ()
 The main action entry point. More...
 

Protected Member Functions

 alterForm (HTMLForm $form)
 Play with the HTMLForm if you need to more substantially. More...
 
 getForm ()
 Get the HTMLForm to control behavior. More...
 
 getFormFields ()
 Get an HTMLForm descriptor array. More...
 
 postText ()
 
 preText ()
 Add pre- or post-text to the form. More...
 
 usesOOUI ()
 Whether the form should use OOUI. More...
 
- Protected Member Functions inherited from Action
 checkCanExecute (User $user)
 Checks if the given user (identified by an object) can perform this action. More...
 
 getDescription ()
 Returns the description that goes below the \<h1\> tag. More...
 
 getPageTitle ()
 Returns the name that goes in the \<h1\> page title. More...
 
 setHeaders ()
 Set output headers for noindexing etc. More...
 
 useTransactionalTimeLimit ()
 Call wfTransactionalTimeLimit() if this request was POSTed. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Action
static exists ( $name)
 Check if a given action is recognised, even if it's disabled. More...
 
static factory ( $action, Page $page, IContextSource $context=null)
 Get an appropriate Action subclass for the given action. More...
 
static getActionName (IContextSource $context)
 Get the action that will be executed, not necessarily the one passed passed through the "action" request parameter. More...
 
- Protected Attributes inherited from Action
 $context
 IContextSource if specified; otherwise we'll use the Context from the Page. More...
 
 $fields
 The fields used to create the HTMLForm. More...
 
 $page
 Page on which we're performing the action. More...
 

Detailed Description

An action which shows a form and does something based on the input from the form.

Definition at line 28 of file FormAction.php.

Member Function Documentation

◆ alterForm()

FormAction::alterForm ( HTMLForm  $form)
protected

Play with the HTMLForm if you need to more substantially.

Parameters
HTMLForm$form

Definition at line 58 of file FormAction.php.

Referenced by getForm().

◆ doesWrites()

FormAction::doesWrites ( )

Definition at line 148 of file FormAction.php.

◆ getForm()

◆ getFormFields()

FormAction::getFormFields ( )
protected

Get an HTMLForm descriptor array.

Returns
array

Definition at line 34 of file FormAction.php.

Referenced by getForm().

◆ onSubmit()

FormAction::onSubmit (   $data)
abstract

Process the form on POST submission.

If you don't want to do anything with the form, just return false here.

This method will be passed to the HTMLForm as a submit callback (see HTMLForm::setSubmitCallback) and must return as documented for HTMLForm::trySubmit.

See also
HTMLForm::setSubmitCallback()
HTMLForm::trySubmit()
Parameters
array$data
Returns
bool|string|array|Status Must return as documented for HTMLForm::trySubmit

Referenced by getForm().

◆ onSuccess()

FormAction::onSuccess ( )
abstract

Do something exciting on successful processing of the form.

This might be to show a confirmation message (watch, rollback, etc) or to redirect somewhere else (edit, protect, etc).

Referenced by getForm(), and show().

◆ postText()

FormAction::postText ( )
protected
Returns
string

Definition at line 50 of file FormAction.php.

Referenced by getForm().

◆ preText()

FormAction::preText ( )
protected

Add pre- or post-text to the form.

Returns
string HTML which will be sent to $form->addPreText()

Definition at line 43 of file FormAction.php.

Referenced by getForm().

◆ show()

FormAction::show ( )

The basic pattern for actions is to display some sort of HTMLForm UI, maybe with some stuff underneath (history etc); to do some processing on submission of that form (delete, protect, etc) and to do something exciting on 'success', be that display something new or redirect to somewhere.

Some actions have more exotic behavior, but that's what subclassing is for :D

Definition at line 136 of file FormAction.php.

References Action\checkCanExecute(), getForm(), Action\getUser(), onSuccess(), and Action\setHeaders().

Referenced by WatchActionTest\testShowUserLoggedInNoException(), and WatchActionTest\testShowUserNotLoggedIn().

◆ usesOOUI()

FormAction::usesOOUI ( )
protected

Whether the form should use OOUI.

Returns
bool

Definition at line 65 of file FormAction.php.

Referenced by getForm().


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