MediaWiki REL1_31
MovePage Class Reference

Handles the backend logic of moving a page from one title to another. More...

Collaboration diagram for MovePage:

Public Member Functions

 __construct (Title $oldTitle, Title $newTitle)
 
 checkPermissions (User $user, $reason)
 
 isValidMove ()
 Does various sanity checks that the move is valid.
 
 move (User $user, $reason, $createRedirect, array $changeTags=[])
 

Protected Member Functions

 isValidFileMove ()
 Sanity checks for when a file is being moved.
 
 isValidMoveTarget ()
 Checks if $this can be moved to a given Title.
 

Protected Attributes

Title $newTitle
 
Title $oldTitle
 

Private Member Functions

 moveToInternal (User $user, &$nt, $reason='', $createRedirect=true, array $changeTags=[])
 Move page to a title which is either a redirect to the source page or nonexistent.
 

Detailed Description

Handles the backend logic of moving a page from one title to another.

Since
1.24

Definition at line 30 of file MovePage.php.

Constructor & Destructor Documentation

◆ __construct()

MovePage::__construct ( Title $oldTitle,
Title $newTitle )

Definition at line 42 of file MovePage.php.

References $newTitle, and $oldTitle.

Member Function Documentation

◆ checkPermissions()

MovePage::checkPermissions ( User $user,
$reason )

Definition at line 47 of file MovePage.php.

References EditPage\matchSummarySpamRegex(), and wfMergeErrorArrays().

◆ isValidFileMove()

MovePage::isValidFileMove ( )
protected

Sanity checks for when a file is being moved.

Returns
Status

Definition at line 166 of file MovePage.php.

References File\checkExtensionCompatibility(), NS_FILE, wfLocalFile(), and wfStripIllegalFilenameChars().

Referenced by isValidMove().

◆ isValidMove()

MovePage::isValidMove ( )

Does various sanity checks that the move is valid.

Only things based on the two titles should be checked here.

Returns
Status

Definition at line 88 of file MovePage.php.

References $wgContentHandlerUseDB, isValidFileMove(), and NS_FILE.

◆ isValidMoveTarget()

MovePage::isValidMoveTarget ( )
protected

Checks if $this can be moved to a given Title.

  • Selects for update, so don't call it unless you mean business
Since
1.25
Returns
bool

Definition at line 193 of file MovePage.php.

References $rev, NS_FILE, wfDebug(), and wfLocalFile().

◆ move()

MovePage::move ( User $user,
$reason,
$createRedirect,
array $changeTags = [] )
Parameters
User$user
string$reason
bool$createRedirect
string[]$changeTagsChange tags to apply to the entry in the move log. Caller should perform permission checks with ChangeTags::canAddTagsAccompanyingChange
Returns
Status

Definition at line 242 of file MovePage.php.

References $newTitle, $oldTitle, $params, $res, $type, $user, $wgCategoryCollation, cache, DB_MASTER, moveToInternal(), NS_CATEGORY, NS_FILE, Collation\singleton(), RepoGroup\singleton(), wfGetDB(), wfLocalFile(), and wfMessage().

◆ moveToInternal()

MovePage::moveToInternal ( User $user,
& $nt,
$reason = '',
$createRedirect = true,
array $changeTags = [] )
private

Move page to a title which is either a redirect to the source page or nonexistent.

Todo
This was basically directly moved from Title, it should be split into smaller functions
Parameters
User$userthe User doing the move
Title$ntThe page to move to, which should be a redirect or non-existent
string$reasonThe reason for the move
bool$createRedirectWhether to leave a redirect at the old title. Does not check if the user has the suppressredirect right
string[]$changeTagsChange tags to apply to the entry in the move log
Returns
Revision the revision created by the move
Exceptions
MWException

Definition at line 446 of file MovePage.php.

References $oldTitle, ChangeTags\addTags(), DB_MASTER, ChangeTags\getSoftwareTags(), RequestContext\newExtraneousContext(), LogFormatter\newFromEntry(), NS_CATEGORY, plain, wfGetDB(), and wfMessage().

Referenced by move().

Member Data Documentation

◆ $newTitle

Title MovePage::$newTitle
protected

Definition at line 40 of file MovePage.php.

Referenced by __construct(), and move().

◆ $oldTitle

Title MovePage::$oldTitle
protected

Definition at line 35 of file MovePage.php.

Referenced by __construct(), move(), and moveToInternal().


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