MediaWiki
master
|
Public Member Functions | |
__construct ( $text=null, $languageLinks=[], $categoryLinks=[], $unused=false, $titletext='') | |
__get ( $name) | |
__set ( $name, $value) | |
__sleep () | |
__wakeup () | |
addCacheMessage (string $msg) | |
Adds a comment notice about cache state to the text of the page. More... | |
addCategory ( $c, $sort='') | |
Add a category. More... | |
addExternalLink ( $url) | |
addExtraCSPDefaultSrc ( $src) | |
Add an extra value to Content-Security-Policy default-src directive. More... | |
addExtraCSPScriptSrc ( $src) | |
Add an extra value to Content-Security-Policy script-src directive. More... | |
addExtraCSPStyleSrc ( $src) | |
Add an extra value to Content-Security-Policy style-src directive. More... | |
addHeadItem ( $section, $tag=false) | |
Add some text to the "<head>". More... | |
addImage ( $name, $timestamp=null, $sha1=null) | |
Register a file dependency for this output. More... | |
addInterwikiLink ( $link) | |
addJsConfigVars ( $keys, $value=null) | |
Add one or more variables to be set in mw.config in JavaScript. More... | |
addLanguageLink ( $t) | |
addLink (LinkTarget $link, $id=null) | |
Record a local or interwiki inline link for saving in future link tables. More... | |
addModules ( $modules) | |
addModuleStyles ( $modules) | |
addOutputHook ( $hook, $data=false) | |
addOutputPageMetadata (OutputPage $out) | |
Accommodate very basic transcluding of a temporary OutputPage object into parser output. More... | |
addTemplate ( $link, $page_id, $rev_id) | |
Register a template dependency for this output. More... | |
addTrackingCategory ( $msg, PageReference $page) | |
Add a tracking category, getting the title from a system message, or print a debug message if the title is invalid. More... | |
addWarning ( $s) | |
addWarningMsg (string $msg,... $args) | |
Add a warning to the output for this page. More... | |
addWrapperDivClass ( $class) | |
Add a CSS class to use for the wrapping div. More... | |
appendExtensionData (string $key, $value, string $strategy=self::MW_MERGE_STRATEGY_UNION) | |
Appends arbitrary data to this ParserObject. More... | |
appendJsConfigVar (string $key, string $value, string $strategy=self::MW_MERGE_STRATEGY_UNION) | |
Append a value to a variable to be set in mw.config in JavaScript. More... | |
clearWrapperDivClass () | |
Clears the CSS class to use for the wrapping div, effectively disabling the wrapper div until addWrapperDivClass() is called. More... | |
collectMetadata (ContentMetadataCollector $metadata) | |
Adds the metadata collected in this ParserOutput to the supplied ContentMetadataCollector. More... | |
finalizeAdaptiveCacheExpiry () | |
Call this when parsing is done to lower the TTL based on low parse times. More... | |
getAllFlags () | |
& | getCategories () |
getCategoryLinks () | |
Return the names of the categories on this page. More... | |
getCategoryNames () | |
Return the names of the categories on this page. More... | |
getCategorySortKey (string $name) | |
Return the sort key for a given category name, or null if the category is not present in this ParserOutput. More... | |
getDisplayTitle () | |
Get the title to be used for display. More... | |
getEnableOOUI () | |
getExtensionData ( $key) | |
Gets extensions data previously attached to this ParserOutput using setExtensionData(). More... | |
& | getExternalLinks () |
getExtraCSPDefaultSrcs () | |
Get extra Content-Security-Policy 'default-src' directives. More... | |
getExtraCSPScriptSrcs () | |
Get extra Content-Security-Policy 'script-src' directives. More... | |
getExtraCSPStyleSrcs () | |
Get extra Content-Security-Policy 'style-src' directives. More... | |
& | getFileSearchOptions () |
getFlag ( $flag) | |
getHeadItems () | |
getHideNewSection () | |
& | getImages () |
getIndexPolicy () | |
getIndicators () | |
getInterwikiLinks () | |
getJsConfigVars (bool $showStrategyKeys=false) | |
getLanguage () | |
Get the primary language code of the output. More... | |
& | getLanguageLinks () |
getLimitReportData () | |
getLimitReportJSData () | |
& | getLinks () |
& | getLinksSpecial () |
getModules () | |
getModuleStyles () | |
getNewSection () | |
getNoGallery () | |
getOutputFlag (string $name) | |
Provides a uniform interface to various boolean flags stored in the ParserOutput. More... | |
getOutputHooks () | |
getPageProperties () | |
Return all the page properties set on this ParserOutput. More... | |
getPageProperty (string $name) | |
Look up a page property. More... | |
getPreventClickjacking () | |
Get the prevent-clickjacking flag. More... | |
getProperties () | |
getProperty ( $name) | |
getRawText () | |
Get the cacheable text with <mw:editsection> markers still in it. More... | |
getRevisionTimestampUsed () | |
getRevisionUsedSha1Base36 () | |
getSections () | |
getSpeculativePageIdUsed () | |
getSpeculativeRevIdUsed () | |
& | getTemplateIds () |
& | getTemplates () |
getText ( $options=[]) | |
Get the output HTML. More... | |
getTimeSinceStart ( $clock) | |
Returns the time since resetParseStartTime() was last called. More... | |
getTimestamp () | |
getTitleText () | |
getTOCData () | |
getTOCHTML () | |
getWarnings () | |
getWrapperDivClass () | |
Returns the class (or classes) to be used with the wrapper div for this output. More... | |
hasDynamicContent () | |
hasReducedExpiry () | |
Check whether the cache TTL was lowered from the site default. More... | |
hasText () | |
Returns true if text was passed to the constructor, or set using setText(). More... | |
hasTOCHTML () | |
hideNewSection ( $value) | |
mergeHtmlMetaDataFrom (ParserOutput $source) | |
Merges HTML metadata such as head items, JS config vars, and HTTP cache control info from $source into this ParserOutput. More... | |
mergeInternalMetaDataFrom (ParserOutput $source) | |
Merges internal metadata such as flags, accessed options, and profiling info from $source into this ParserOutput. More... | |
mergeTrackingMetaDataFrom (ParserOutput $source) | |
Merges dependency tracking metadata such as backlinks, images used, and extension data from $source into this ParserOutput. More... | |
preventClickjacking ( $flag) | |
Get or set the prevent-clickjacking flag. More... | |
resetParseStartTime () | |
Resets the parse start timestamps for future calls to getTimeSinceStart() More... | |
setCategories (array $c) | |
Overwrite the category map. More... | |
setCategoryLinks ( $cl) | |
setDisplayTitle ( $text) | |
Override the title to be used for display. More... | |
setEnableOOUI (bool $enable=false) | |
Enables OOUI, if true, in any OutputPage instance this ParserOutput object is added to. More... | |
setExtensionData ( $key, $value) | |
Attaches arbitrary data to this ParserObject. More... | |
setFlag ( $flag) | |
Attach a flag to the output so that it can be checked later to handle special cases. More... | |
setHideNewSection (bool $value) | |
setIndexPolicy ( $policy) | |
setIndicator ( $id, $content) | |
setJsConfigVar (string $key, $value) | |
Add a variable to be set in mw.config in JavaScript. More... | |
setLanguage (Bcp47Code $lang) | |
Set the primary language of the output. More... | |
setLanguageLinks ( $ll) | |
setLimitReportData ( $key, $value) | |
Sets parser limit report data for a key. More... | |
setNewSection ( $value) | |
setNoGallery ( $value) | |
setOutputFlag (string $name, bool $val=true) | |
Provides a uniform interface to various boolean flags stored in the ParserOutput. More... | |
setPageProperty (string $name, $value) | |
Set a page property to be stored in the page_props database table. More... | |
setPreventClickjacking (bool $flag) | |
Set the prevent-clickjacking flag. More... | |
setProperty ( $name, $value) | |
Sets a page property to be stored in the page_props database table. More... | |
setRevisionTimestampUsed ( $timestamp) | |
setRevisionUsedSha1Base36 ( $hash) | |
setSections (array $sectionArray) | |
setSpeculativePageIdUsed ( $id) | |
setSpeculativeRevIdUsed ( $id) | |
setText ( $text) | |
Set the text of the ParserOutput. More... | |
setTimestamp ( $timestamp) | |
setTitleText ( $t) | |
setTOCData (TOCData $tocData) | |
setTOCHTML ( $tochtml) | |
unsetPageProperty (string $name) | |
Remove a page property. More... | |
unsetProperty ( $name) | |
updateRuntimeAdaptiveExpiry ( $ttl) | |
Lower the runtime adaptive TTL to at most this value. More... | |
![]() | |
expired ( $touched) | |
Return true if this cached output object predates the global or per-article cache invalidation timestamps, or if it comes from an incompatible older version. More... | |
getCacheExpiry () | |
Returns the number of seconds after which this object should expire. More... | |
getCacheRevisionId () | |
getCacheTime () | |
getUsedOptions () | |
Returns the options from its ParserOptions which have been taken into account to produce the output. More... | |
isCacheable () | |
isDifferentRevision ( $id) | |
Return true if this cached output object is for a different revision of the page. More... | |
recordOption (string $option) | |
Tags a parser option for use in the cache key for this parser output. More... | |
recordOptions (array $options) | |
Tags a list of parser option names for use in the cache key for this parser output. More... | |
setCacheRevisionId ( $id) | |
setCacheTime ( $t) | |
setCacheTime() sets the timestamp expressing when the page has been rendered. More... | |
updateCacheExpiry ( $seconds) | |
Sets the number of seconds after which this object should expire. More... | |
Static Public Member Functions | |
static | isLinkInternal ( $internal, $url) |
Checks, if a url is pointing to the own server. More... | |
static | newFromJsonArray (JsonUnserializer $unserializer, array $json) |
Creates a new instance of the class and initialized it from the $json array. More... | |
Public Attributes | |
const | MW_MERGE_STRATEGY_KEY = '_mw-strategy' |
const | MW_MERGE_STRATEGY_UNION = 'union' |
Merge strategy to use for ParserOutput accumulators: "union" means that values are strings, stored as a set, and exposed as a PHP associative array mapping from values to true . More... | |
const | SUPPORTS_STATELESS_TRANSFORMS = 1 |
Feature flags to indicate to extensions that MediaWiki core supports and uses getText() stateless transforms. More... | |
const | SUPPORTS_UNWRAP_TRANSFORM = 1 |
Protected Member Functions | |
initFromJson (JsonUnserializer $unserializer, array $jsonData) | |
Initialize member fields from an array returned by jsonSerialize(). More... | |
toJsonArray () | |
Returns a JSON serializable structure representing this ParserOutput instance. More... | |
Additional Inherited Members | |
![]() | |
int null | $mCacheExpiry = null |
Seconds after which the object should expire, use 0 for not cacheable. More... | |
int null | $mCacheRevisionId = null |
Revision ID that was parsed. More... | |
string int | $mCacheTime = '' |
TS_MW timestamp when this object was generated, or -1 for not cacheable. More... | |
true[] | $mParseUsedOptions = [] |
ParserOptions which have been taken into account to produce output, option names stored in array keys. More... | |
Definition at line 47 of file ParserOutput.php.
ParserOutput::__construct | ( | $text = null , |
|
$languageLinks = [] , |
|||
$categoryLinks = [] , |
|||
$unused = false , |
|||
$titletext = '' |
|||
) |
string | null | $text | HTML. Use null to indicate that this ParserOutput contains only meta-data, and the HTML output is undetermined, as opposed to empty. Passing null here causes hasText() to return false. In 1.39 the default value changed from '' to null. |
array | $languageLinks | |
array | $categoryLinks | |
bool | $unused | |
string | $titletext |
Definition at line 338 of file ParserOutput.php.
ParserOutput::__get | ( | $name | ) |
Reimplemented from CacheTime.
Definition at line 2806 of file ParserOutput.php.
References wfDeprecatedMsg().
ParserOutput::__set | ( | $name, | |
$value | |||
) |
Reimplemented from CacheTime.
Definition at line 2821 of file ParserOutput.php.
References wfDeprecatedMsg().
ParserOutput::__sleep | ( | ) |
Definition at line 2188 of file ParserOutput.php.
ParserOutput::__wakeup | ( | ) |
Reimplemented from CacheTime.
Definition at line 2788 of file ParserOutput.php.
ParserOutput::addCacheMessage | ( | string | $msg | ) |
Adds a comment notice about cache state to the text of the page.
string | $msg |
Definition at line 570 of file ParserOutput.php.
Referenced by Parser\RevisionOutputCache\save(), and ParserCache\save().
ParserOutput::addCategory | ( | $c, | |
$sort = '' |
|||
) |
Add a category.
string | $c | The category name |
string | $sort | The sort key |
Definition at line 1000 of file ParserOutput.php.
ParserOutput::addExternalLink | ( | $url | ) |
Definition at line 1120 of file ParserOutput.php.
ParserOutput::addExtraCSPDefaultSrc | ( | $src | ) |
Add an extra value to Content-Security-Policy default-src directive.
Call this if you are including a resource (e.g. image) from a third party domain. This is used for all source types except style and script.
string | $src | CSP source e.g. example.com |
Definition at line 2137 of file ParserOutput.php.
ParserOutput::addExtraCSPScriptSrc | ( | $src | ) |
Add an extra value to Content-Security-Policy script-src directive.
Call this if you are loading third-party Javascript
string | $src | CSP source e.g. example.com |
Definition at line 2159 of file ParserOutput.php.
ParserOutput::addExtraCSPStyleSrc | ( | $src | ) |
Add an extra value to Content-Security-Policy style-src directive.
string | $src | CSP source e.g. example.com |
Definition at line 2147 of file ParserOutput.php.
ParserOutput::addHeadItem | ( | $section, | |
$tag = false |
|||
) |
Add some text to the "<head>".
If $tag is set, the section with that tag will only be included once in a given page.
string | $section | |
string | false | $tag |
Definition at line 1219 of file ParserOutput.php.
ParserOutput::addImage | ( | $name, | |
$timestamp = null , |
|||
$sha1 = null |
|||
) |
Register a file dependency for this output.
string | $name | Title dbKey |
string | false | null | $timestamp | MW timestamp of file creation (or false if non-existing) |
string | false | null | $sha1 | Base 36 SHA-1 of file (or false if non-existing) |
Definition at line 1177 of file ParserOutput.php.
ParserOutput::addInterwikiLink | ( | $link | ) |
LinkTarget | $link | LinkTarget object, must be an interwiki link (used to require Title until 1.38). |
MWException | If given invalid input |
Definition at line 1204 of file ParserOutput.php.
ParserOutput::addJsConfigVars | ( | $keys, | |
$value = null |
|||
) |
Add one or more variables to be set in mw.config in JavaScript.
string | array | $keys | Key or array of key/value pairs. |
mixed | null | $value | [optional] Value of the configuration variable. |
Definition at line 1262 of file ParserOutput.php.
References $keys.
ParserOutput::addLanguageLink | ( | $t | ) |
Definition at line 1033 of file ParserOutput.php.
ParserOutput::addLink | ( | LinkTarget | $link, |
$id = null |
|||
) |
Record a local or interwiki inline link for saving in future link tables.
LinkTarget | $link | (used to require Title until 1.38) |
int | null | $id | Optional known page_id so we can skip the lookup |
Definition at line 1144 of file ParserOutput.php.
Referenced by WikitextContentHandler\fillParserOutput().
ParserOutput::addModules | ( | $modules | ) |
string[] | $modules |
Definition at line 1231 of file ParserOutput.php.
References wfDeprecated().
ParserOutput::addModuleStyles | ( | $modules | ) |
string[] | $modules |
Definition at line 1244 of file ParserOutput.php.
References wfDeprecated().
Referenced by JsonContentHandler\fillParserOutput(), and WikitextContentHandler\fillParserOutput().
ParserOutput::addOutputHook | ( | $hook, | |
$data = false |
|||
) |
callable | $hook | |
mixed | $data |
Definition at line 1068 of file ParserOutput.php.
ParserOutput::addOutputPageMetadata | ( | OutputPage | $out | ) |
Accommodate very basic transcluding of a temporary OutputPage object into parser output.
This is a fragile method that cannot be relied upon in any meaningful way. It exists solely to support the wikitext feature of transcluding a SpecialPage, and only has to work for that use case to ensure relevant styles are loaded, and that essential config vars needed between SpecialPage and a JS feature are added.
This relies on there being no overlap between modules or config vars added by the SpecialPage and those added by parser extensions. If there is overlap, then arise and break one or both sides. This is expected and unsupported.
OutputPage | $out |
Definition at line 1352 of file ParserOutput.php.
ParserOutput::addTemplate | ( | $link, | |
$page_id, | |||
$rev_id | |||
) |
Register a template dependency for this output.
LinkTarget | $link | (used to require Title until 1.38) |
int | $page_id | |
int | $rev_id |
Definition at line 1191 of file ParserOutput.php.
ParserOutput::addTrackingCategory | ( | $msg, | |
PageReference | $page | ||
) |
Add a tracking category, getting the title from a system message, or print a debug message if the title is invalid.
Any message used with this function should be registered so it will show up on Special:TrackingCategories. Core messages should be added to TrackingCategories::CORE_TRACKING_CATEGORIES, and extensions should add to "TrackingCategories" in their extension.json.
string | $msg | Message key |
PageReference | $page | the page which is being tracked (used to require a Title until 1.38) |
Definition at line 1392 of file ParserOutput.php.
ParserOutput::addWarning | ( | $s | ) |
Definition at line 1040 of file ParserOutput.php.
ParserOutput::addWarningMsg | ( | string | $msg, |
$args | |||
) |
Add a warning to the output for this page.
string | $msg | The localization message key for the warning |
mixed | ...$args Optional arguments for the message |
Definition at line 1051 of file ParserOutput.php.
ParserOutput::addWrapperDivClass | ( | $class | ) |
Add a CSS class to use for the wrapping div.
If no class is given, no wrapper is added.
string | $class |
Definition at line 579 of file ParserOutput.php.
ParserOutput::appendExtensionData | ( | string | $key, |
$value, | |||
string | $strategy = self::MW_MERGE_STRATEGY_UNION |
||
) |
Appends arbitrary data to this ParserObject.
This can be used to store some information in the ParserOutput object for later use during page output. The data will be cached along with the ParserOutput object, but unlike data set using setPageProperty(), it is not recorded in the database.
See setExtensionData() for more details on rationale and use.
In order to provide for out-of-order/asynchronous/incremental parsing, this method appends values to a set. See setExtensionData() for the flag-like version of this method.
string | $key | The key for accessing the data. Extensions should take care to avoid conflicts in naming keys. It is suggested to use the extension's name as a prefix. |
int | string | $value | The value to append to the list. |
string | $strategy | Merge strategy: only MW_MERGE_STRATEGY_UNION is currently supported and external callers should treat this parameter as |
Definition at line 1842 of file ParserOutput.php.
ParserOutput::appendJsConfigVar | ( | string | $key, |
string | $value, | ||
string | $strategy = self::MW_MERGE_STRATEGY_UNION |
||
) |
Append a value to a variable to be set in mw.config in JavaScript.
In order to ensure the result is independent of the parse order, the value of this key will be an associative array, mapping all of the values set under that key to true. (The array is implicitly ordered in PHP, but you should treat it as unordered.) If you want a non-array type for the key, and can ensure that only a single value will be set, you should use ::setJsConfigVar() instead.
string | $key | Key to use under mw.config |
string | $value | Value to append to the configuration variable. |
string | $strategy | Merge strategy: only MW_MERGE_STRATEGY_UNION is currently supported and external callers should treat this parameter as |
Definition at line 1316 of file ParserOutput.php.
ParserOutput::clearWrapperDivClass | ( | ) |
Clears the CSS class to use for the wrapping div, effectively disabling the wrapper div until addWrapperDivClass() is called.
Definition at line 587 of file ParserOutput.php.
Referenced by CssContentHandler\fillParserOutput(), JavaScriptContentHandler\fillParserOutput(), and TextContentHandler\fillParserOutput().
ParserOutput::collectMetadata | ( | ContentMetadataCollector | $metadata | ) |
Adds the metadata collected in this ParserOutput to the supplied ContentMetadataCollector.
This is similar to ::mergeHtmlMetaDataFrom() but in the opposite direction, since ParserOutput is read/write while ContentMetadataCollector is write-only.
ContentMetadataCollector | $metadata |
Definition at line 2362 of file ParserOutput.php.
ParserOutput::finalizeAdaptiveCacheExpiry | ( | ) |
Call this when parsing is done to lower the TTL based on low parse times.
Definition at line 2168 of file ParserOutput.php.
ParserOutput::getAllFlags | ( | ) |
Definition at line 1502 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
& ParserOutput::getCategories | ( | ) |
This function will be made
Definition at line 714 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata(), and MediaWiki\Deferred\LinksUpdate\CategoryLinksTable\setParserOutput().
ParserOutput::getCategoryLinks | ( | ) |
Return the names of the categories on this page.
Definition at line 690 of file ParserOutput.php.
References wfDeprecated().
ParserOutput::getCategoryNames | ( | ) |
Return the names of the categories on this page.
Unlike ::getCategories(), sort keys are not included in the return value.
Definition at line 702 of file ParserOutput.php.
Referenced by MediaWiki\Search\ParserOutputSearchDataExtractor\getCategories().
ParserOutput::getCategorySortKey | ( | string | $name | ) |
Return the sort key for a given category name, or null
if the category is not present in this ParserOutput.
string | $name | The category name |
null
if the category is not present in this ParserOutput Definition at line 726 of file ParserOutput.php.
ParserOutput::getDisplayTitle | ( | ) |
Get the title to be used for display.
As per the contract of setDisplayTitle(), this is safe HTML, ready to be served to the client.
Definition at line 1422 of file ParserOutput.php.
References $t.
ParserOutput::getEnableOOUI | ( | ) |
Definition at line 891 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getExtensionData | ( | $key | ) |
Gets extensions data previously attached to this ParserOutput using setExtensionData().
Typically, such data would be set while parsing the page, e.g. by a parser function.
string | $key | The key to look up. |
Definition at line 1874 of file ParserOutput.php.
Referenced by Parser\Parsoid\PageBundleParserOutputConverter\hasPageBundle().
& ParserOutput::getExternalLinks | ( | ) |
Definition at line 793 of file ParserOutput.php.
Referenced by MediaWiki\Search\ParserOutputSearchDataExtractor\getExternalLinks(), and MediaWiki\Deferred\LinksUpdate\ExternalLinksTable\setParserOutput().
ParserOutput::getExtraCSPDefaultSrcs | ( | ) |
Get extra Content-Security-Policy 'default-src' directives.
Definition at line 900 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getExtraCSPScriptSrcs | ( | ) |
Get extra Content-Security-Policy 'script-src' directives.
Definition at line 909 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getExtraCSPStyleSrcs | ( | ) |
Get extra Content-Security-Policy 'style-src' directives.
Definition at line 918 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
& ParserOutput::getFileSearchOptions | ( | ) |
Definition at line 789 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getFlag | ( | $flag | ) |
string | $flag |
Definition at line 1494 of file ParserOutput.php.
ParserOutput::getHeadItems | ( | ) |
Definition at line 805 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getHideNewSection | ( | ) |
Definition at line 1093 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
& ParserOutput::getImages | ( | ) |
Definition at line 785 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata(), and MediaWiki\Deferred\LinksUpdate\ImageLinksTable\setParserOutput().
ParserOutput::getIndexPolicy | ( | ) |
Definition at line 848 of file ParserOutput.php.
Referenced by Article\getRobotPolicy().
ParserOutput::getIndicators | ( | ) |
Definition at line 737 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getInterwikiLinks | ( | ) |
Definition at line 681 of file ParserOutput.php.
Referenced by MediaWiki\Deferred\LinksUpdate\InterwikiLinksTable\setParserOutput().
ParserOutput::getJsConfigVars | ( | bool | $showStrategyKeys = false | ) |
bool | $showStrategyKeys | Defaults to false; if set to true will expose the internal MW_MERGE_STRATEGY_KEY in the result. This should only be used internally to allow safe merge of config vars. |
Definition at line 824 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputContent(), and OutputPage\addParserOutputMetadata().
ParserOutput::getLanguage | ( | ) |
Get the primary language code of the output.
This gives the primary language of the output, including any variant used, as a MediaWiki-internal language code. This can be converted to a standard IETF language tag complying with BCP 47 by passing it to the LanguageCode::bcp47() method.
Note that this may differ from the wiki's primary language (because page language can differ from primary language) and can differ from the page language as well (because the parser uses the user language when processing interface messages). It will also differ from the Parser's target language when language conversion has been performed; in that case it will be equal to Parser::getTargetLanguageConverter()->getPreferredVariant(); use LanguageFactory::getParentLanguage() on that code if you need the base language. (Note that ::getPreferredVariant() depends on the request URL and the User language as well.)
Finally, note that the actual HTML included in this ParserOutput may actually represent content in multiple languages. It is expected that the HTML will use internal lang
attributes (with BCP-47 values) to switch from the primary language reported by this method.
null
if a language was not set. Definition at line 1460 of file ParserOutput.php.
& ParserOutput::getLanguageLinks | ( | ) |
Definition at line 677 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata(), and MediaWiki\Deferred\LinksUpdate\LangLinksTable\setParserOutput().
ParserOutput::getLimitReportData | ( | ) |
Definition at line 883 of file ParserOutput.php.
ParserOutput::getLimitReportJSData | ( | ) |
Definition at line 887 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
& ParserOutput::getLinks | ( | ) |
Definition at line 765 of file ParserOutput.php.
Referenced by MediaWiki\Search\ParserOutputSearchDataExtractor\getOutgoingLinks(), and MediaWiki\Deferred\LinksUpdate\PageLinksTable\setParserOutput().
& ParserOutput::getLinksSpecial | ( | ) |
Definition at line 773 of file ParserOutput.php.
ParserOutput::getModules | ( | ) |
Definition at line 809 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputContent(), and OutputPage\addParserOutputMetadata().
ParserOutput::getModuleStyles | ( | ) |
Definition at line 813 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputContent(), and OutputPage\addParserOutputMetadata().
ParserOutput::getNewSection | ( | ) |
Definition at line 1097 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getNoGallery | ( | ) |
Definition at line 801 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getOutputFlag | ( | string | $name | ) |
Provides a uniform interface to various boolean flags stored in the ParserOutput.
Flags internal to MediaWiki core should have names which are constants in ParserOutputFlags. Extensions should only use ::getOutputFlag() to query flags defined in ParserOutputFlags in core; they should use getExtensionData() to define their own flags.
string | $name | A flag name |
Definition at line 1724 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getOutputHooks | ( | ) |
Definition at line 840 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getPageProperties | ( | ) |
Return all the page properties set on this ParserOutput.
Definition at line 1645 of file ParserOutput.php.
Referenced by MediaWiki\Deferred\LinksUpdate\PagePropsTable\setParserOutput().
ParserOutput::getPageProperty | ( | string | $name | ) |
Look up a page property.
string | $name | The page property name to look up. |
Definition at line 1627 of file ParserOutput.php.
ParserOutput::getPreventClickjacking | ( | ) |
Get the prevent-clickjacking flag.
Definition at line 2095 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getProperties | ( | ) |
Definition at line 1545 of file ParserOutput.php.
References wfDeprecated().
ParserOutput::getProperty | ( | $name | ) |
string | $name | The property name to look up. |
null
if no value was set. Definition at line 1527 of file ParserOutput.php.
References wfDeprecated().
ParserOutput::getRawText | ( | ) |
Get the cacheable text with <mw:editsection> markers still in it.
The return value is suitable for writing back via setText() but is not valid for display to the user.
Definition at line 369 of file ParserOutput.php.
References $mText.
Referenced by WikitextContentHandler\fillParserOutput().
ParserOutput::getRevisionTimestampUsed | ( | ) |
Definition at line 646 of file ParserOutput.php.
ParserOutput::getRevisionUsedSha1Base36 | ( | ) |
Definition at line 673 of file ParserOutput.php.
ParserOutput::getSections | ( | ) |
ParserOutput::getSpeculativePageIdUsed | ( | ) |
ParserOutput::getSpeculativeRevIdUsed | ( | ) |
& ParserOutput::getTemplateIds | ( | ) |
Definition at line 781 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
& ParserOutput::getTemplates | ( | ) |
Definition at line 777 of file ParserOutput.php.
Referenced by MediaWiki\Search\ParserOutputSearchDataExtractor\getTemplates(), and MediaWiki\Deferred\LinksUpdate\TemplateLinksTable\setParserOutput().
ParserOutput::getText | ( | $options = [] | ) |
Get the output HTML.
array | $options | (since 1.31) Transformations to apply to the HTML
|
Definition at line 412 of file ParserOutput.php.
References Sanitizer\decodeCharReferences(), Sanitizer\decodeTagAttributes(), RequestContext\getMain(), Parser\replaceTableOfContentsMarker(), and wfUrlencode().
Referenced by OutputPage\addParserOutputText(), Status\getHTML(), and Message\parseText().
ParserOutput::getTimeSinceStart | ( | $clock | ) |
Returns the time since resetParseStartTime() was last called.
Clocks available are:
string | $clock |
Definition at line 1915 of file ParserOutput.php.
Referenced by Parser\Parsoid\ParsoidParser\makeLimitReport().
ParserOutput::getTimestamp | ( | ) |
Definition at line 879 of file ParserOutput.php.
ParserOutput::getTitleText | ( | ) |
Definition at line 741 of file ParserOutput.php.
Referenced by Article\adjustDisplayTitle().
ParserOutput::getTOCData | ( | ) |
Definition at line 749 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::getTOCHTML | ( | ) |
Definition at line 861 of file ParserOutput.php.
References wfDeprecated().
ParserOutput::getWarnings | ( | ) |
Definition at line 844 of file ParserOutput.php.
ParserOutput::getWrapperDivClass | ( | ) |
Returns the class (or classes) to be used with the wrapper div for this output.
If there is no wrapper class given, no wrapper div should be added. The wrapper div is added automatically by getText().
Definition at line 598 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::hasDynamicContent | ( | ) |
Definition at line 2074 of file ParserOutput.php.
ParserOutput::hasReducedExpiry | ( | ) |
Check whether the cache TTL was lowered from the site default.
When content is determined by more than hard state (e.g. page edits), such as template/file transclusions based on the current timestamp or extension tags that generate lists based on queries, this return true.
This method mainly exists to facilitate the logic in WikiPage::triggerOpportunisticLinksUpdate. As such, beware that reducing the TTL for reasons that do not relate to "dynamic content", may have the side-effect of incurring more RefreshLinksJob executions.
Definition at line 2061 of file ParserOutput.php.
Referenced by Parser\Parsoid\ParsoidParser\makeLimitReport(), and WikiPage\triggerOpportunisticLinksUpdate().
ParserOutput::hasText | ( | ) |
Returns true if text was passed to the constructor, or set using setText().
Returns false if null was passed to the $text parameter of the constructor to indicate that this ParserOutput only contains meta-data, and the HTML output is undetermined.
Definition at line 357 of file ParserOutput.php.
Referenced by Parser\RevisionOutputCache\save(), and ParserCache\save().
ParserOutput::hasTOCHTML | ( | ) |
Definition at line 872 of file ParserOutput.php.
Referenced by OutputPage\addParserOutputMetadata().
ParserOutput::hideNewSection | ( | $value | ) |
bool | $value | Hide the new section link? |
Definition at line 1088 of file ParserOutput.php.
|
protected |
Initialize member fields from an array returned by jsonSerialize().
JsonUnserializer | $unserializer | |
array | $jsonData |
Reimplemented from CacheTime.
Definition at line 2676 of file ParserOutput.php.
|
static |
Checks, if a url is pointing to the own server.
string | $internal | The server to check against |
string | $url | The url to check |
Definition at line 1109 of file ParserOutput.php.
ParserOutput::mergeHtmlMetaDataFrom | ( | ParserOutput | $source | ) |
Merges HTML metadata such as head items, JS config vars, and HTTP cache control info from $source into this ParserOutput.
This should be used whenever the HTML in $source has been somehow merged into the HTML of this ParserOutput.
ParserOutput | $source |
Definition at line 2244 of file ParserOutput.php.
ParserOutput::mergeInternalMetaDataFrom | ( | ParserOutput | $source | ) |
Merges internal metadata such as flags, accessed options, and profiling info from $source into this ParserOutput.
This should be used whenever the state of $source has any impact on the state of this ParserOutput.
ParserOutput | $source |
Definition at line 2208 of file ParserOutput.php.
ParserOutput::mergeTrackingMetaDataFrom | ( | ParserOutput | $source | ) |
Merges dependency tracking metadata such as backlinks, images used, and extension data from $source into this ParserOutput.
This allows dependency tracking to be done for the combined output of multiple content slots.
ParserOutput | $source |
Definition at line 2324 of file ParserOutput.php.
|
static |
Creates a new instance of the class and initialized it from the $json array.
JsonUnserializer | $unserializer | an instance of JsonUnserializer to use for nested properties if they need special care. |
array | $json |
Reimplemented from CacheTime.
Definition at line 2665 of file ParserOutput.php.
ParserOutput::preventClickjacking | ( | $flag | ) |
Get or set the prevent-clickjacking flag.
bool | null | $flag | New flag value, or null to leave it unchanged |
Definition at line 2108 of file ParserOutput.php.
ParserOutput::resetParseStartTime | ( | ) |
Resets the parse start timestamps for future calls to getTimeSinceStart()
Definition at line 1900 of file ParserOutput.php.
ParserOutput::setCategories | ( | array | $c | ) |
Overwrite the category map.
array<string,string> | $c Map of category names to sort keys |
Definition at line 1009 of file ParserOutput.php.
ParserOutput::setCategoryLinks | ( | $cl | ) |
Definition at line 942 of file ParserOutput.php.
References wfDeprecated(), and wfSetVar().
ParserOutput::setDisplayTitle | ( | $text | ) |
Override the title to be used for display.
string | $text | Desired title text |
Definition at line 1409 of file ParserOutput.php.
ParserOutput::setEnableOOUI | ( | bool | $enable = false | ) |
Enables OOUI, if true, in any OutputPage instance this ParserOutput object is added to.
bool | $enable | If OOUI should be enabled or not |
Definition at line 1029 of file ParserOutput.php.
ParserOutput::setExtensionData | ( | $key, | |
$value | |||
) |
Attaches arbitrary data to this ParserObject.
This can be used to store some information in the ParserOutput object for later use during page output. The data will be cached along with the ParserOutput object, but unlike data set using setPageProperty(), it is not recorded in the database.
This method is provided to overcome the unsafe practice of attaching extra information to a ParserObject by directly assigning member variables.
To use setExtensionData() to pass extension information from a hook inside the parser to a hook in the page output, use this in the parser hook:
And then later, in OutputPageParserOutput or similar:
In MediaWiki 1.20 and older, you have to use a custom member variable within the ParserOutput object:
string | $key | The key for accessing the data. Extensions should take care to avoid conflicts in naming keys. It is suggested to use the extension's name as a prefix. |
mixed | JsonUnserializable | $value | The value to set. Setting a value to null is equivalent to removing the value. |
Definition at line 1802 of file ParserOutput.php.
ParserOutput::setFlag | ( | $flag | ) |
Attach a flag to the output so that it can be checked later to handle special cases.
string | $flag |
Definition at line 1485 of file ParserOutput.php.
ParserOutput::setHideNewSection | ( | bool | $value | ) |
bool | $value | Hide the new section link? |
Definition at line 1080 of file ParserOutput.php.
ParserOutput::setIndexPolicy | ( | $policy | ) |
Definition at line 968 of file ParserOutput.php.
ParserOutput::setIndicator | ( | $id, | |
$content | |||
) |
ParserOutput::setJsConfigVar | ( | string | $key, |
$value | |||
) |
Add a variable to be set in mw.config in JavaScript.
In order to ensure the result is independent of the parse order, the values set here must be unique – that is, you can pass the same $key multiple times but ONLY if the $value is identical each time. If you want to collect multiple pieces of data under a single key, use ::appendJsConfigVar().
string | $key | Key to use under mw.config |
mixed | null | $value | Value of the configuration variable. |
Definition at line 1286 of file ParserOutput.php.
ParserOutput::setLanguage | ( | Bcp47Code | $lang | ) |
Set the primary language of the output.
See the discussion and caveats in ::getLanguage().
Bcp47Code | $lang | The primary language for this output, including any variant specification. |
Definition at line 1475 of file ParserOutput.php.
ParserOutput::setLanguageLinks | ( | $ll | ) |
Definition at line 935 of file ParserOutput.php.
References wfSetVar().
ParserOutput::setLimitReportData | ( | $key, | |
$value | |||
) |
Sets parser limit report data for a key.
The key is used as the prefix for various messages used for formatting:
Note that all values are interpreted as wikitext, and so should be encoded with htmlspecialchars() as necessary, but should avoid complex HTML for display in the "NewPP limit report" comment.
string | $key | Message key |
mixed | $value | Appropriate for Message::params() |
Definition at line 1943 of file ParserOutput.php.
Referenced by Parser\Parsoid\ParsoidParser\makeLimitReport().
ParserOutput::setNewSection | ( | $value | ) |
Definition at line 1073 of file ParserOutput.php.
ParserOutput::setNoGallery | ( | $value | ) |
Definition at line 797 of file ParserOutput.php.
ParserOutput::setOutputFlag | ( | string | $name, |
bool | $val = true |
||
) |
Provides a uniform interface to various boolean flags stored in the ParserOutput.
Flags internal to MediaWiki core should have names which are constants in ParserOutputFlags. Extensions should use setExtensionData() rather than creating new flags with ::setOutputFlag() in order to prevent namespace conflicts.
Flags are always combined with OR. That is, the flag is set in the resulting ParserOutput if the flag is set in any of the fragments composing the ParserOutput.
string | $name | A flag name |
bool | $val |
Definition at line 1672 of file ParserOutput.php.
Referenced by WikitextContentHandler\fillParserOutput().
ParserOutput::setPageProperty | ( | string | $name, |
$value | |||
) |
Set a page property to be stored in the page_props database table.
page_props is a key value store indexed by the page ID. This allows the parser to set a property on a page which can then be quickly retrieved given the page ID or via a DB join when given the page title.
Since 1.23, page_props are also indexed by numeric value, to allow for efficient "top k" queries of pages wrt a given property.
setPageProperty() is thus used to propagate properties from the parsed page to request contexts other than a page view of the currently parsed article.
Some applications examples:
If you are writing an extension where you want to set a property in the parser which is used by an OutputPageParserOutput hook, you have to associate the extension data directly with the ParserOutput object. Since MediaWiki 1.21, you should use setExtensionData() to do this:
And then later, in OutputPageParserOutput or similar:
string | $name | |
int | float | string | bool | null | $value |
Definition at line 1612 of file ParserOutput.php.
ParserOutput::setPreventClickjacking | ( | bool | $flag | ) |
Set the prevent-clickjacking flag.
bool | $flag | New flag value |
Definition at line 2085 of file ParserOutput.php.
ParserOutput::setProperty | ( | $name, | |
$value | |||
) |
Sets a page property to be stored in the page_props database table.
string | $name | |
int | float | string | bool | null | $value |
Definition at line 1512 of file ParserOutput.php.
ParserOutput::setRevisionTimestampUsed | ( | $timestamp | ) |
string | $timestamp | TS_MW timestamp |
Definition at line 638 of file ParserOutput.php.
ParserOutput::setRevisionUsedSha1Base36 | ( | $hash | ) |
string | $hash | Lowercase SHA-1 base 36 hash |
Definition at line 654 of file ParserOutput.php.
ParserOutput::setSections | ( | array | $sectionArray | ) |
array | $sectionArray |
Definition at line 962 of file ParserOutput.php.
ParserOutput::setSpeculativePageIdUsed | ( | $id | ) |
ParserOutput::setSpeculativeRevIdUsed | ( | $id | ) |
ParserOutput::setText | ( | $text | ) |
Set the text of the ParserOutput.
If you did not generate html, pass null to mark it as such.
string | null | $text | HTML content of ParserOutput or null if not generated |
Definition at line 931 of file ParserOutput.php.
References wfSetVar().
Referenced by CssContentHandler\fillParserOutput(), FallbackContentHandler\fillParserOutput(), JavaScriptContentHandler\fillParserOutput(), TextContentHandler\fillParserOutput(), JsonContentHandler\fillParserOutput(), WikitextContentHandler\fillParserOutput(), TablePager\getBodyOutput(), and TablePager\getFullOutput().
ParserOutput::setTimestamp | ( | $timestamp | ) |
Definition at line 991 of file ParserOutput.php.
References wfSetVar().
Referenced by Parser\RevisionOutputCache\save().
ParserOutput::setTitleText | ( | $t | ) |
Definition at line 947 of file ParserOutput.php.
References $t, and wfSetVar().
ParserOutput::setTOCData | ( | TOCData | $tocData | ) |
TOCData | $tocData | Table of contents data for the page |
Definition at line 954 of file ParserOutput.php.
Referenced by SpecialVersion\execute(), and MediaWiki\Specials\SpecialEditWatchlist\executeViewEditWatchlist().
ParserOutput::setTOCHTML | ( | $tochtml | ) |
Definition at line 986 of file ParserOutput.php.
References wfDeprecated(), and wfSetVar().
|
protected |
Returns a JSON serializable structure representing this ParserOutput instance.
Reimplemented from CacheTime.
Definition at line 2587 of file ParserOutput.php.
ParserOutput::unsetPageProperty | ( | string | $name | ) |
Remove a page property.
string | $name | The page property name. |
Definition at line 1636 of file ParserOutput.php.
ParserOutput::unsetProperty | ( | $name | ) |
string | $name |
Definition at line 1536 of file ParserOutput.php.
ParserOutput::updateRuntimeAdaptiveExpiry | ( | $ttl | ) |
Lower the runtime adaptive TTL to at most this value.
int | $ttl |
Definition at line 2123 of file ParserOutput.php.
const ParserOutput::MW_MERGE_STRATEGY_KEY = '_mw-strategy' |
const ParserOutput::MW_MERGE_STRATEGY_UNION = 'union' |
Merge strategy to use for ParserOutput accumulators: "union" means that values are strings, stored as a set, and exposed as a PHP associative array mapping from values to true
.
This constant should be treated as
Definition at line 84 of file ParserOutput.php.
const ParserOutput::SUPPORTS_STATELESS_TRANSFORMS = 1 |
Feature flags to indicate to extensions that MediaWiki core supports and uses getText() stateless transforms.
Definition at line 61 of file ParserOutput.php.
const ParserOutput::SUPPORTS_UNWRAP_TRANSFORM = 1 |
Definition at line 66 of file ParserOutput.php.