MediaWiki  1.28.0
ProtectionForm Class Reference

Handles the page protection UI and backend. More...

Collaboration diagram for ProtectionForm:

Public Member Functions

 __construct (Article $article)
 
 buildForm ()
 Build the input form. More...
 
 buildSelector ($action, $selected)
 Build protection level selector. More...
 
 execute ()
 Main entry point for action=protect and action=unprotect. More...
 
 getExpiry ($action)
 Get the expiry time for a given action, by combining the relevant inputs. More...
 
 loadData ()
 Loads the current state of protection into the object. More...
 
 save ()
 Save submitted protection form. More...
 
 show ($err=null)
 Show the input form with optional error message. More...
 
 showLogExtract (&$out)
 Show protection long extracts for this page. More...
 

Protected Attributes

array $mApplicableTypes = []
 Types (i.e. More...
 
bool $mCascade = false
 True if the restrictions are cascading, from request or existing protection. More...
 
array $mExistingExpiry = []
 Map of action to the expiry time of the existing protection. More...
 
array $mExpiry = []
 Map of action to "other" expiry time. More...
 
array $mExpirySelection = []
 Map of action to value selected in expiry drop-down list. More...
 
array $mPermErrors = []
 Permissions errors for the protect action. More...
 
string $mReason = ''
 The custom/additional protection reason. More...
 
string $mReasonSelection = ''
 The reason selected from the list, blank for other/additional. More...
 
array $mRestrictions = []
 A map of action to restriction level, from request or default. More...
 

Private Member Functions

 getOptionLabel ($permission)
 Prepare the label for a protection selector option. More...
 

Private Attributes

IContextSource $mContext
 

Detailed Description

Handles the page protection UI and backend.

Definition at line 29 of file ProtectionForm.php.

Constructor & Destructor Documentation

ProtectionForm::__construct ( Article  $article)

Member Function Documentation

ProtectionForm::buildSelector (   $action,
  $selected 
)

Build protection level selector.

Parameters
string$actionAction to protect
string$selectedCurrent protection level
Returns
string HTML fragment

Definition at line 573 of file ProtectionForm.php.

References as, getOptionLabel(), and MWNamespace\getRestrictionLevels().

Referenced by buildForm().

ProtectionForm::execute ( )

Main entry point for action=protect and action=unprotect.

Definition at line 180 of file ProtectionForm.php.

References MWNamespace\getRestrictionLevels(), save(), and show().

ProtectionForm::getExpiry (   $action)

Get the expiry time for a given action, by combining the relevant inputs.

Parameters
string$action
Returns
string 14-char timestamp or "infinity", or false if the input was invalid

Definition at line 153 of file ProtectionForm.php.

References $time, $value, TS_MW, wfIsInfinity(), and wfTimestamp().

Referenced by save().

ProtectionForm::getOptionLabel (   $permission)
private

Prepare the label for a protection selector option.

Parameters
string$permissionPermission required
Returns
string

Definition at line 601 of file ProtectionForm.php.

Referenced by buildSelector().

ProtectionForm::loadData ( )

Loads the current state of protection into the object.

Definition at line 91 of file ProtectionForm.php.

References $request, as, ContextSource\getRequest(), and MWNamespace\getRestrictionLevels().

Referenced by __construct().

ProtectionForm::save ( )

Save submitted protection form.

Returns
bool Success

Definition at line 264 of file ProtectionForm.php.

References $mReason, $mReasonSelection, $out, $request, $status, $user, as, WatchAction\doWatchOrUnwatch(), getExpiry(), ContextSource\getRequest(), Hooks\run(), show(), and wfTimestampNow().

Referenced by execute().

ProtectionForm::show (   $err = null)

Show the input form with optional error message.

Parameters
string$errError message or null if there's no error

Definition at line 200 of file ProtectionForm.php.

References $out, $title, $titles, as, buildForm(), list, showLogExtract(), and wfEscapeWikiText().

Referenced by execute(), and save().

ProtectionForm::showLogExtract ( $out)

Show protection long extracts for this page.

Parameters
OutputPage$outprivate

Definition at line 620 of file ProtectionForm.php.

References $out, Xml\element(), Hooks\run(), and LogEventsList\showLogExtract().

Referenced by show().

Member Data Documentation

array ProtectionForm::$mApplicableTypes = []
protected

Types (i.e.

actions) for which levels can be selected

Definition at line 55 of file ProtectionForm.php.

bool ProtectionForm::$mCascade = false
protected

True if the restrictions are cascading, from request or existing protection.

Definition at line 40 of file ProtectionForm.php.

Referenced by buildForm().

IContextSource ProtectionForm::$mContext
private

Definition at line 61 of file ProtectionForm.php.

Referenced by buildForm().

array ProtectionForm::$mExistingExpiry = []
protected

Map of action to the expiry time of the existing protection.

Definition at line 58 of file ProtectionForm.php.

array ProtectionForm::$mExpiry = []
protected

Map of action to "other" expiry time.

Used in preference to mExpirySelection.

Definition at line 43 of file ProtectionForm.php.

array ProtectionForm::$mExpirySelection = []
protected

Map of action to value selected in expiry drop-down list.

Will be set to 'othertime' whenever mExpiry is set.

Definition at line 49 of file ProtectionForm.php.

array ProtectionForm::$mPermErrors = []
protected

Permissions errors for the protect action.

Definition at line 52 of file ProtectionForm.php.

string ProtectionForm::$mReason = ''
protected

The custom/additional protection reason.

Definition at line 34 of file ProtectionForm.php.

Referenced by save().

string ProtectionForm::$mReasonSelection = ''
protected

The reason selected from the list, blank for other/additional.

Definition at line 37 of file ProtectionForm.php.

Referenced by save().

array ProtectionForm::$mRestrictions = []
protected

A map of action to restriction level, from request or default.

Definition at line 31 of file ProtectionForm.php.


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