MediaWiki  master
WikiFilePage Class Reference

Special handling for file pages. More...

Inheritance diagram for WikiFilePage:
Collaboration diagram for WikiFilePage:

Public Member Functions

 __construct ( $title)
 
 doPurge ()
 Override handling of action=purge. More...
 
 followRedirect ()
 
 getDuplicates ()
 
 getFile ()
 
 getForeignCategories ()
 Get the categories this file is a member of on the wiki where it was uploaded. More...
 
 getRedirectTarget ()
 
 getSourceURL ()
 
 getWikiDisplayName ()
 
 isLocal ()
 
 isRedirect ()
 
 setFile ( $file)
 
- Public Member Functions inherited from WikiPage
 __clone ()
 Makes sure that the mTitle object is cloned to the newly cloned WikiPage. More...
 
 __construct (Title $title)
 Constructor and clear the article. More...
 
 checkFlags ( $flags)
 Check flags and add EDIT_NEW or EDIT_UPDATE to them as needed. More...
 
 checkTouched ()
 Loads page_touched and returns a value indicating if it should be used. More...
 
 clear ()
 Clear the object. More...
 
 clearPreparedEdit ()
 Clear the mPreparedEdit cache field, as may be needed by mutable content types. More...
 
 commitRollback ( $fromP, $summary, $bot, &$resultDetails, User $guser, $tags=null)
 Backend implementation of doRollback(), please refer there for parameter and return value documentation. More...
 
 doDeleteArticle ( $reason, $suppress=false, $u1=null, $u2=null, &$error='', User $user=null, $immediate=false)
 Same as doDeleteArticleReal(), but returns a simple boolean. More...
 
 doDeleteArticleBatched ( $reason, $suppress, User $deleter, $tags, $logsubtype, $immediate=false, $webRequestId=null)
 Back-end article deletion. More...
 
 doDeleteArticleReal ( $reason, $suppress=false, $u1=null, $u2=null, &$error='', User $deleter=null, $tags=[], $logsubtype='delete', $immediate=false)
 Back-end article deletion Deletes the article with database consistency, writes logs, purges caches. More...
 
 doDeleteUpdates ( $id, Content $content=null, Revision $revision=null, User $user=null)
 Do some database updates after deletion. More...
 
 doEditContent (Content $content, $summary, $flags=0, $originalRevId=false, User $user=null, $serialFormat=null, $tags=[], $undidRevId=0)
 Change an existing article or create a new article. More...
 
 doEditUpdates (Revision $revision, User $user, array $options=[])
 Do standard deferred updates after page edit. More...
 
 doPurge ()
 Perform the actions of a page purging. More...
 
 doRollback ( $fromP, $summary, $token, $bot, &$resultDetails, User $user, $tags=null)
 Roll back the most recent consecutive set of edits to a page from the same user; fails if there are no eligible edits to roll back to, e.g. More...
 
 doSecondaryDataUpdates (array $options=[])
 Do secondary data updates (such as updating link tables). More...
 
 doUpdateRestrictions (array $limit, array $expiry, &$cascade, $reason, User $user, $tags=null)
 Update the article's restriction field, and leave a log entry. More...
 
 doViewUpdates (User $user, $oldid=0)
 Do standard deferred updates after page view (existing or missing page) More...
 
 exists ()
 
 followRedirect ()
 Get the Title object or URL this page redirects to. More...
 
 getActionOverrides ()
 
 getAutoDeleteReason (&$hasHistory)
 Auto-generates a deletion reason. More...
 
 getCategories ()
 Returns a list of categories this page is a member of. More...
 
 getComment ( $audience=RevisionRecord::FOR_PUBLIC, User $user=null)
 
 getContent ( $audience=RevisionRecord::FOR_PUBLIC, User $user=null)
 Get the content of the current revision. More...
 
 getContentHandler ()
 Returns the ContentHandler instance to be used to deal with the content of this WikiPage. More...
 
 getContentModel ()
 Returns the page's content model id (see the CONTENT_MODEL_XXX constants). More...
 
 getContributors ()
 Get a list of users who have edited this article, not including the user who made the most recent revision, which you can get from $article->getUser() if you want it. More...
 
 getCreator ( $audience=RevisionRecord::FOR_PUBLIC, User $user=null)
 Get the User object of the user who created the page. More...
 
 getDeletionUpdates ( $rev=null)
 Returns a list of updates to be performed when this page is deleted. More...
 
 getHiddenCategories ()
 Returns a list of hidden categories this page is a member of. More...
 
 getId ()
 
 getLatest ()
 Get the page_latest field. More...
 
 getLinksTimestamp ()
 Get the page_links_updated field. More...
 
 getMinorEdit ()
 Returns true if last revision was marked as "minor edit". More...
 
 getMutableCacheKeys (WANObjectCache $cache)
 
 getOldestRevision ()
 Get the Revision object of the oldest revision. More...
 
 getParserOutput (ParserOptions $parserOptions, $oldid=null, $forceParse=false)
 Get a ParserOutput for the given ParserOptions and revision ID. More...
 
 getRedirectTarget ()
 If this page is a redirect, get its target. More...
 
 getRedirectURL ( $rt)
 Get the Title object or URL to use for a redirect. More...
 
 getRevision ()
 Get the latest revision. More...
 
 getRevisionRecord ()
 Get the latest revision. More...
 
 getSourceURL ()
 Get the source URL for the content on this page, typically the canonical URL, but may be a remote link if the content comes from another site. More...
 
 getTimestamp ()
 
 getTitle ()
 Get the title object of the article. More...
 
 getTouched ()
 Get the page_touched field. More...
 
 getUndoContent (Revision $undo, Revision $undoafter)
 Get the content that needs to be saved in order to undo all revisions between $undo and $undoafter. More...
 
 getUser ( $audience=RevisionRecord::FOR_PUBLIC, User $user=null)
 
 getUserText ( $audience=RevisionRecord::FOR_PUBLIC, User $user=null)
 
 getWikiDisplayName ()
 The display name for the site this content come from. More...
 
 hasViewableContent ()
 Check if this page is something we're going to be showing some sort of sensible content for. More...
 
 insertOn ( $dbw, $pageId=null)
 Insert a new empty page record for this article. More...
 
 insertProtectNullRevision ( $revCommentMsg, array $limit, array $expiry, $cascade, $reason, $user=null)
 Insert a new null revision for this page. More...
 
 insertRedirect ()
 Insert an entry for this page into the redirect table if the content is a redirect. More...
 
 insertRedirectEntry (Title $rt, $oldLatest=null)
 Insert or update the redirect table entry for this page to indicate it redirects to $rt. More...
 
 isBatchedDelete ( $safetyMargin=0)
 Determines if deletion of this page would be batched (executed over time by the job queue) or not (completed in the same request as the delete call). More...
 
 isCountable ( $editInfo=false)
 Determine whether a page would be suitable for being counted as an article in the site_stats table based on the title & its content. More...
 
 isLocal ()
 Whether this content displayed on this page comes from the local database. More...
 
 isRedirect ()
 Tests if the article content represents a redirect. More...
 
 loadFromRow ( $data, $from)
 Load the object from a database row. More...
 
 loadPageData ( $from='fromdb')
 Load the object from a given source by title. More...
 
 lockAndGetLatest ()
 Lock the page row for this title+id and return page_latest (or 0) More...
 
 makeParserOptions ( $context)
 Get parser options suitable for rendering the primary article wikitext. More...
 
 newPageUpdater (User $user, RevisionSlotsUpdate $forUpdate=null)
 Returns a PageUpdater for creating new revisions on this page (or creating the page). More...
 
 pageDataFromId ( $dbr, $id, $options=[])
 Fetch a page record matching the requested ID. More...
 
 pageDataFromTitle ( $dbr, $title, $options=[])
 Fetch a page record matching the Title object's namespace and title using a sanitized title string. More...
 
 prepareContentForEdit (Content $content, $revision=null, User $user=null, $serialFormat=null, $useCache=true)
 Prepare content which is about to be saved. More...
 
 protectDescription (array $limit, array $expiry)
 Builds the description to serve as comment for the edit. More...
 
 protectDescriptionLog (array $limit, array $expiry)
 Builds the description to serve as comment for the log entry. More...
 
 replaceSectionAtRev ( $sectionId, Content $sectionContent, $sectionTitle='', $baseRevId=null)
 
 replaceSectionContent ( $sectionId, Content $sectionContent, $sectionTitle='', $edittime=null)
 
 setTimestamp ( $ts)
 Set the page timestamp (use only to avoid DB queries) More...
 
 shouldCheckParserCache (ParserOptions $parserOptions, $oldId)
 Should the parser cache be used? More...
 
 supportsSections ()
 Returns true if this page's content model supports sections. More...
 
 triggerOpportunisticLinksUpdate (ParserOutput $parserOutput)
 Opportunistically enqueue link update jobs given fresh parser output if useful. More...
 
 updateCategoryCounts (array $added, array $deleted, $id=0)
 Update all the appropriate counts in the category table, given that we've added the categories $added and deleted the categories $deleted. More...
 
 updateIfNewerOn ( $dbw, $revision)
 If the given revision is newer than the currently set page_latest, update the page record. More...
 
 updateParserCache (array $options=[])
 Update the parser cache. More...
 
 updateRedirectOn ( $dbw, $redirectTitle, $lastRevIsRedirect=null)
 Add row to the redirect table if this is a redirect, remove otherwise. More...
 
 updateRevisionOn ( $dbw, $revision, $lastRevision=null, $lastRevIsRedirect=null)
 Update the page record to point to a newly saved revision. More...
 
 wasLoadedFrom ( $from)
 Checks whether the page data was loaded using the given database access mode (or better). More...
 

Protected Member Functions

 loadFile ()
 
- Protected Member Functions inherited from WikiPage
 archiveRevisions ( $dbw, $id, $suppress)
 Archives revisions as part of page deletion. More...
 
 clearCacheFields ()
 Clear the object cache fields. More...
 
 formatExpiry ( $expiry)
 
 loadLastEdit ()
 Loads everything except the text This isn't necessary for all uses, so it's only done if needed. More...
 
 pageData ( $dbr, $conditions, $options=[])
 Fetch a page record with the given conditions. More...
 
 setLastEdit (Revision $revision)
 Set the latest revision. More...
 

Protected Attributes

array null $mDupes = null
 
File false $mFile = false
 
bool $mFileLoaded = false
 
LocalRepo null $mRepo = null
 
- Protected Attributes inherited from WikiPage
int $mDataLoadedFrom = self::READ_NONE
 One of the READ_* constants. More...
 
int $mId = null
 
Revision $mLastRevision = null
 
string $mLinksUpdated = '19700101000000'
 
Title $mRedirectTarget = null
 
string $mTimestamp = ''
 Timestamp of the current revision or empty string if not loaded. More...
 
string $mTouched = '19700101000000'
 

Additional Inherited Members

- Static Public Member Functions inherited from WikiPage
static factory (Title $title)
 Create a WikiPage object of the appropriate class for the given title. More...
 
static getQueryInfo ()
 Return the tables, fields, and join conditions to be selected to create a new page object. More...
 
static hasDifferencesOutsideMainSlot (Revision $a, Revision $b)
 Helper method for checking whether two revisions have differences that go beyond the main slot. More...
 
static newFromID ( $id, $from='fromdb')
 Constructor from a page id. More...
 
static newFromRow ( $row, $from='fromdb')
 Constructor from a database row. More...
 
static onArticleCreate (Title $title)
 The onArticle*() functions are supposed to be a kind of hooks which should be called whenever any of the specified actions are done. More...
 
static onArticleDelete (Title $title)
 Clears caches when article is deleted. More...
 
static onArticleEdit (Title $title, Revision $revision=null, $slotsChanged=null)
 Purge caches on page update etc. More...
 
static selectFields ()
 Return the list of revision fields that should be selected to create a new page. More...
 
- Public Attributes inherited from WikiPage
bool $mDataLoaded = false
 
bool $mIsRedirect = false
 
int false $mLatest = false
 False means "not loaded". More...
 
PreparedEdit $mPreparedEdit = false
 Map of cache fields (text, parser output, ect) for a proposed/new edit. More...
 
Title $mTitle = null
 
- Public Attributes inherited from IDBAccessObject
const READ_LOCKING = self::READ_LATEST | 2
 Constants for object loading bitfield flags (higher => higher QoS) More...
 
const READ_NONE = -1
 
- Static Protected Member Functions inherited from WikiPage
static convertSelectType ( $type)
 Convert 'fromdb', 'fromdbmaster' and 'forupdate' to READ_* constants. More...
 
static flattenRestrictions ( $limit)
 Take an array of page restrictions and flatten it to a string suitable for insertion into the page_restrictions field. More...
 

Detailed Description

Special handling for file pages.

Definition at line 31 of file WikiFilePage.php.

Constructor & Destructor Documentation

◆ __construct()

WikiFilePage::__construct (   $title)

Definition at line 41 of file WikiFilePage.php.

References $title, and null.

Member Function Documentation

◆ doPurge()

WikiFilePage::doPurge ( )

Override handling of action=purge.

Returns
bool

Definition at line 174 of file WikiFilePage.php.

References DeferredUpdates\addUpdate(), as, loadFile(), and wfDebug().

◆ followRedirect()

WikiFilePage::followRedirect ( )
Returns
bool|mixed|Title

Definition at line 95 of file WikiFilePage.php.

References loadFile(), Title\makeTitle(), and NS_FILE.

◆ getDuplicates()

WikiFilePage::getDuplicates ( )
Returns
array|null

Definition at line 139 of file WikiFilePage.php.

References $file, $mDupes, $self, as, loadFile(), and RepoGroup\singleton().

◆ getFile()

WikiFilePage::getFile ( )
Returns
bool|File

Definition at line 131 of file WikiFilePage.php.

References $mFile, and loadFile().

Referenced by getSourceURL(), and getWikiDisplayName().

◆ getForeignCategories()

WikiFilePage::getForeignCategories ( )

Get the categories this file is a member of on the wiki where it was uploaded.

For local files, this is the same as getCategories(). For foreign API files (InstantCommons), this is not supported currently. Results will include hidden categories.

Returns
TitleArray|Title[]
Since
1.23

Definition at line 215 of file WikiFilePage.php.

References $dbr, $file, $mFile, WikiPage\$mTitle, $res, $title, loadFile(), TitleArray\newFromResult(), NS_CATEGORY, and wfDebug().

◆ getRedirectTarget()

WikiFilePage::getRedirectTarget ( )
Returns
mixed|null|Title

Definition at line 77 of file WikiFilePage.php.

References WikiPage\$mRedirectTarget, loadFile(), Title\makeTitle(), NS_FILE, and null.

◆ getSourceURL()

WikiFilePage::getSourceURL ( )
Since
1.28
Returns
string

Definition at line 259 of file WikiFilePage.php.

References getFile().

◆ getWikiDisplayName()

WikiFilePage::getWikiDisplayName ( )
Since
1.28
Returns
string

Definition at line 251 of file WikiFilePage.php.

References getFile().

◆ isLocal()

WikiFilePage::isLocal ( )
Returns
bool

Definition at line 123 of file WikiFilePage.php.

References loadFile().

◆ isRedirect()

WikiFilePage::isRedirect ( )
Returns
bool

Definition at line 111 of file WikiFilePage.php.

References loadFile().

◆ loadFile()

WikiFilePage::loadFile ( )
protected

◆ setFile()

WikiFilePage::setFile (   $file)
Parameters
File$file

Definition at line 50 of file WikiFilePage.php.

References $file.

Member Data Documentation

◆ $mDupes

array null WikiFilePage::$mDupes = null
protected

Definition at line 39 of file WikiFilePage.php.

Referenced by getDuplicates().

◆ $mFile

File false WikiFilePage::$mFile = false
protected

Definition at line 33 of file WikiFilePage.php.

Referenced by getFile(), and getForeignCategories().

◆ $mFileLoaded

bool WikiFilePage::$mFileLoaded = false
protected

Definition at line 37 of file WikiFilePage.php.

◆ $mRepo

LocalRepo null WikiFilePage::$mRepo = null
protected

Definition at line 35 of file WikiFilePage.php.


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