MediaWiki  master
WikitextContent Class Reference

Content object for wiki text pages. More...

Inheritance diagram for WikitextContent:
Collaboration diagram for WikitextContent:

Public Member Functions

 __construct ( $text)
 
 addSectionHeader ( $header)
 Returns a new WikitextContent object with the given section heading prepended. More...
 
 getRedirectTarget ()
 Implement redirect extraction for wikitext. More...
 
 getSection ( $sectionId)
 
 getTextForSummary ( $maxlength=250)
 
 isCountable ( $hasLinks=null, Title $title=null)
 Returns true if this content is not a redirect, and this content's text is countable according to the criteria defined by $wgArticleCountMethod. More...
 
 matchMagicWord (MagicWord $word)
 This implementation calls $word->match() on the this TextContent object's text. More...
 
 preloadTransform (Title $title, ParserOptions $popts, $params=[])
 Returns a Content object with preload transformations applied (or this object if no transformations apply). More...
 
 preSaveTransform (Title $title, User $user, ParserOptions $popts)
 Returns a Content object with pre-save transformations applied using Parser::preSaveTransform(). More...
 
 replaceSection ( $sectionId, Content $with, $sectionTitle='')
 
 updateRedirect (Title $target)
 This implementation replaces the first link on the page with the given new target if this Content object is a redirect. More...
 
- Public Member Functions inherited from TextContent
 __construct ( $text, $model_id=CONTENT_MODEL_TEXT)
 
 convert ( $toModel, $lossy='')
 This implementation provides lossless conversion between content models based on TextContent. More...
 
 copy ()
 
 diff (Content $that, Language $lang=null)
 Diff this content object with another content object. More...
 
 getNativeData ()
 Returns the text represented by this Content object, as a string. More...
 
 getSize ()
 Returns the text's size in bytes. More...
 
 getText ()
 Returns the text represented by this Content object, as a string. More...
 
 getTextForSearchIndex ()
 Returns the text represented by this Content object, as a string. More...
 
 getTextForSummary ( $maxlength=250)
 Returns a textual representation of the content suitable for use in edit summaries and log messages. More...
 
 getWikitextForTransclusion ()
 Returns attempts to convert this content object to wikitext, and then returns the text string. More...
 
 isCountable ( $hasLinks=null)
 Returns true if this content is not a redirect, and $wgArticleCountMethod is "any". More...
 
 preSaveTransform (Title $title, User $user, ParserOptions $popts)
 Returns a Content object with pre-save transformations applied. More...
 
- Public Member Functions inherited from AbstractContent
 __construct ( $modelId=null)
 
 addSectionHeader ( $header)
 
 convert ( $toModel, $lossy='')
 This base implementation calls the hook ConvertContent to enable custom conversions. More...
 
 equals (Content $that=null)
 Decides whether two Content objects are equal. More...
 
 getContentHandler ()
 
 getDefaultFormat ()
 
 getDeletionUpdates (WikiPage $page, ParserOutput $parserOutput=null)
 
 getModel ()
 
 getParserOutput (Title $title, $revId=null, ParserOptions $options=null, $generateHtml=true)
 Returns a ParserOutput object containing information derived from this content. More...
 
 getRedirectChain ()
 
 getRedirectTarget ()
 Subclasses that implement redirects should override this. More...
 
 getSecondaryDataUpdates (Title $title, Content $old=null, $recursive=true, ParserOutput $parserOutput=null)
 Returns a list of DataUpdate objects for recording information about this Content in some secondary data store. More...
 
 getSection ( $sectionId)
 
 getSupportedFormats ()
 
 getUltimateRedirectTarget ()
 
 isEmpty ()
 
 isRedirect ()
 
 isSupportedFormat ( $format)
 
 isValid ()
 Subclasses may override this to implement (light weight) validation. More...
 
 matchMagicWord (MagicWord $word)
 This default implementation always returns false. More...
 
 preloadTransform (Title $title, ParserOptions $popts, $params=[])
 
 prepareSave (WikiPage $page, $flags, $parentRevId, User $user)
 
 preSaveTransform (Title $title, User $user, ParserOptions $popts)
 
 replaceSection ( $sectionId, Content $with, $sectionTitle='')
 
 serialize ( $format=null)
 
 updateRedirect (Title $target)
 This default implementation always returns $this. More...
 

Protected Member Functions

 fillParserOutput (Title $title, $revId, ParserOptions $options, $generateHtml, ParserOutput &$output)
 Returns a ParserOutput object resulting from parsing the content's text using the global Parser service. More...
 
 getHtml ()
 
 getRedirectTargetAndText ()
 Extract the redirect target and the remaining text on the page. More...
 
- Protected Member Functions inherited from TextContent
 fillParserOutput (Title $title, $revId, ParserOptions $options, $generateHtml, ParserOutput &$output)
 Fills the provided ParserOutput object with information derived from the content. More...
 
 getHighlightHtml ()
 Generates an HTML version of the content, for display. More...
 
 getHtml ()
 Generates an HTML version of the content, for display. More...
 
- Protected Member Functions inherited from AbstractContent
 checkFormat ( $format)
 
 checkModelID ( $modelId)
 
 equalsInternal (Content $that)
 Checks whether $that is logically equal to this Content object. More...
 
 fillParserOutput (Title $title, $revId, ParserOptions $options, $generateHtml, ParserOutput &$output)
 Fills the provided ParserOutput with information derived from the content. More...
 

Private Attributes

bool $hadSignature = false
 Tracks if the parser set the user-signature flag when creating this content, which would make it expire faster in ApiStashEdit. More...
 
array null $previousParseStackTrace = null
 Stack trace of the previous parse. More...
 
 $redirectTargetAndText = null
 

Additional Inherited Members

- Static Public Member Functions inherited from TextContent
static normalizeLineEndings ( $text)
 Do a "\\r\\n" -> "\\n" and "\\r" -> "\\n" transformation as well as trim trailing whitespace. More...
 
- Protected Attributes inherited from TextContent
string $mText
 
- Protected Attributes inherited from AbstractContent
 $model_id
 Name of the content model this Content object represents. More...
 

Detailed Description

Content object for wiki text pages.

Definition at line 36 of file WikitextContent.php.

Constructor & Destructor Documentation

◆ __construct()

WikitextContent::__construct (   $text)

Definition at line 50 of file WikitextContent.php.

References CONTENT_MODEL_WIKITEXT.

Member Function Documentation

◆ addSectionHeader()

WikitextContent::addSectionHeader (   $header)

Returns a new WikitextContent object with the given section heading prepended.

Parameters
string$header
Returns
Content

Implements Content.

Definition at line 130 of file WikitextContent.php.

References $header, TextContent\getText(), and wfMessage().

◆ fillParserOutput()

WikitextContent::fillParserOutput ( Title  $title,
  $revId,
ParserOptions  $options,
  $generateHtml,
ParserOutput $output 
)
protected

Returns a ParserOutput object resulting from parsing the content's text using the global Parser service.

Parameters
Title$title
int | null$revIdID of the revision being rendered. See Parser::parse() for the ramifications. (default: null)
ParserOptions$options(default: null)
bool$generateHtml(default: true)
ParserOutput&$outputParserOutput representing the HTML form of the text, may be manipulated or replaced.

Definition at line 341 of file WikitextContent.php.

References $previousParseStackTrace, ParserOutput\addLink(), ParserOutput\addModuleStyles(), ParserOptions\allCacheVaryingOptions(), Title\getPageLanguage(), Title\getPrefixedDBkey(), ParserOutput\getRawText(), AbstractContent\getRedirectChain(), Article\getRedirectHeaderHtml(), getRedirectTargetAndText(), ParserOptions\optionsHash(), ParserOutput\setFlag(), and ParserOutput\setText().

◆ getHtml()

WikitextContent::getHtml ( )
protected
Exceptions
MWException

Definition at line 393 of file WikitextContent.php.

◆ getRedirectTarget()

WikitextContent::getRedirectTarget ( )

Implement redirect extraction for wikitext.

Returns
Title|null
See also
Content::getRedirectTarget

Implements Content.

Definition at line 245 of file WikitextContent.php.

References $title, and getRedirectTargetAndText().

◆ getRedirectTargetAndText()

WikitextContent::getRedirectTargetAndText ( )
protected

Extract the redirect target and the remaining text on the page.

Note
migrated here from Title::newFromRedirectInternal()
Since
1.23
Returns
array List of two elements: Title|null and string.

Definition at line 195 of file WikitextContent.php.

References $redirectTargetAndText, $title, $wgMaxRedirects, TextContent\getText(), and Title\newFromText().

Referenced by fillParserOutput(), and getRedirectTarget().

◆ getSection()

WikitextContent::getSection (   $sectionId)
Parameters
string | int$sectionId
Returns
Content|bool|null
See also
Content::getSection()

Implements Content.

Definition at line 61 of file WikitextContent.php.

References TextContent\getText().

◆ getTextForSummary()

WikitextContent::getTextForSummary (   $maxlength = 250)
Parameters
int$maxlength
Returns
string

Implements Content.

Definition at line 318 of file WikitextContent.php.

◆ isCountable()

WikitextContent::isCountable (   $hasLinks = null,
Title  $title = null 
)

Returns true if this content is not a redirect, and this content's text is countable according to the criteria defined by $wgArticleCountMethod.

Parameters
bool | null$hasLinksIf it is known whether this content contains links, provide this information here, to avoid redundant parsing to find out (default: null).
Title | null$titleOptional title, defaults to the title from the current main request.
Returns
bool

Definition at line 289 of file WikitextContent.php.

References $context, $title, $wgArticleCountMethod, RequestContext\getMain(), AbstractContent\getParserOutput(), and AbstractContent\isRedirect().

◆ matchMagicWord()

WikitextContent::matchMagicWord ( MagicWord  $word)

This implementation calls $word->match() on the this TextContent object's text.

Parameters
MagicWord$word
Returns
bool
See also
Content::matchMagicWord()

Implements Content.

Definition at line 409 of file WikitextContent.php.

References TextContent\getText(), and MagicWord\match().

◆ preloadTransform()

WikitextContent::preloadTransform ( Title  $title,
ParserOptions  $popts,
  $params = [] 
)

Returns a Content object with preload transformations applied (or this object if no transformations apply).

Parameters
Title$title
ParserOptions$popts
array$params
Returns
Content

Implements Content.

Definition at line 178 of file WikitextContent.php.

References TextContent\getText().

◆ preSaveTransform()

WikitextContent::preSaveTransform ( Title  $title,
User  $user,
ParserOptions  $popts 
)

Returns a Content object with pre-save transformations applied using Parser::preSaveTransform().

Parameters
Title$title
User$user
ParserOptions$popts
Returns
Content

Implements Content.

Definition at line 149 of file WikitextContent.php.

References TextContent\getText().

◆ replaceSection()

WikitextContent::replaceSection (   $sectionId,
Content  $with,
  $sectionTitle = '' 
)
Parameters
string | int | null | bool$sectionId
Content$with
string$sectionTitle
Exceptions
MWException
Returns
Content
See also
Content::replaceSection()

Implements Content.

Definition at line 83 of file WikitextContent.php.

References TextContent\copy(), AbstractContent\getModel(), Content\getModel(), TextContent\getText(), Hooks\run(), and wfMessage().

◆ updateRedirect()

WikitextContent::updateRedirect ( Title  $target)

This implementation replaces the first link on the page with the given new target if this Content object is a redirect.

Otherwise, this method returns $this.

Since
1.21
Parameters
Title$target
Returns
Content
See also
Content::updateRedirect()

Implements Content.

Definition at line 263 of file WikitextContent.php.

References Title\getFullText(), TextContent\getText(), and AbstractContent\isRedirect().

Member Data Documentation

◆ $hadSignature

bool WikitextContent::$hadSignature = false
private

Tracks if the parser set the user-signature flag when creating this content, which would make it expire faster in ApiStashEdit.

Definition at line 43 of file WikitextContent.php.

◆ $previousParseStackTrace

array null WikitextContent::$previousParseStackTrace = null
private

Stack trace of the previous parse.

Definition at line 48 of file WikitextContent.php.

Referenced by fillParserOutput().

◆ $redirectTargetAndText

WikitextContent::$redirectTargetAndText = null
private

Definition at line 37 of file WikitextContent.php.

Referenced by getRedirectTargetAndText().


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