Parsoid
A bidirectional parser between wikitext and HTML5
Loading...
Searching...
No Matches
Wikimedia\Parsoid\ParserTests\SiteConfig Class Reference
+ Inheritance diagram for Wikimedia\Parsoid\ParserTests\SiteConfig:
+ Collaboration diagram for Wikimedia\Parsoid\ParserTests\SiteConfig:

Public Member Functions

 __construct (ApiHelper $api, array $opts)
 
 reset ()
 
 disableSubpagesForNS (int $ns)
 
 enableSubpagesForNS (int $ns)
 
 setupInterwikiMap (array $iwData)
 Compute the interwiki map based on mock raw data.
 
 interwikiMap ()
 Interwiki link data.
 
 server ()
 The base URL of the server.
 
 script ()
 The URL path to index.php.
 
 scriptpath ()
 FIXME: This is only used to compute the modules path below and maybe shouldn't be exposed.
 
 baseURI ()
 Site base URI.
 
 allowedExternalImagePrefixes ()
 Allowed external image URL prefixes.
 
 getMWConfigValue (string $key)
 Lookup config.
Parameters
string$key
Returns
mixed|null config value for $key, if present or null, if not.

 
 setInterwikiMagic (bool $val)
 
 interwikiMagic ()
 Treat language links as magic connectors, not inline links.
 
 fakeTimestamp ()
 Fake timestamp, for unit tests.
 
 timezoneOffset ()
 Hardcode value for parser tests.
 
 widthOption ()
 Default thumbnail width.
 
 registerParserTestExtension (ExtensionModule $ext)
 Register an extension for use in parser tests.
 
 setExternalLinkTarget ( $value)
 
 getExternalLinkTarget ()
 
Returns
string|false

 
 setNoFollowConfig (string $key, $value)
 
 getNoFollowConfig ()
 
- Public Member Functions inherited from Wikimedia\Parsoid\Config\Api\SiteConfig
 hasVideoInfo ()
 
 galleryOptions ()
 Default gallery options for this wiki.
 
 relativeLinkPrefix ()
 Prefix for relative links.
 
 canonicalNamespaceId (string $name)
 Map a canonical namespace name to its index.
Note
This replaces canonicalNamespaces
Parameters
string$nameall-lowercase and with underscores rather than spaces.
Returns
int|null

 
 namespaceId (string $name)
 Map a namespace name to its index.
Note
This replaces canonicalNamespaces
Parameters
string$name
Returns
int|null

 
 namespaceName (int $ns)
 Map a namespace index to its preferred name (with spaces, not underscores).
Note
This replaces namespaceNames
Parameters
int$ns
Returns
string|null

 
 namespaceHasSubpages (int $ns)
 Test if a namespace has subpages.
Note
This replaces namespacesWithSubpages
Parameters
int$ns
Returns
bool

 
 namespaceCase (int $ns)
 Return namespace case setting.
Parameters
int$ns
Returns
string 'first-letter' or 'case-sensitive'

 
 specialPageLocalName (string $alias)
 Get the default local name for a special page.
Parameters
string$aliasSpecial page alias
Returns
string|null

 
 iwp ()
 Wiki identifier, for cache keys.
 
 legalTitleChars ()
 Legal title characters.
 
 linkPrefixRegex ()
 Link prefix regular expression.
 
 langBcp47 ()
 Wiki language code.
 
 mainpage ()
 
 mainPageLinkTarget ()
 Main page title, as LinkTarget.
 
 rtl ()
 Whether the wiki language is right-to-left.
 
 langConverterEnabledBcp47 (Bcp47Code $lang)
 Whether language converter is enabled for the specified language.
Parameters
Bcp47Code$lang
Returns
bool

 
 exportMetadataToHeadBcp47 (Document $document, ContentMetadataCollector $metadata, string $defaultTitle, Bcp47Code $lang)
 Export content metadata via meta tags (and via a stylesheet for now to aid some clients).
Parameters
Document$document
ContentMetadataCollector$metadata
string$defaultTitleThe default title to display, as an unescaped string
Bcp47Code$langa BCP-47 language code

 
 redirectRegexp ()
 A regexp matching the localized 'REDIRECT' marker for this wiki.
 
 categoryRegexp ()
 A regexp matching the localized 'Category' prefix for this wiki.
 
 bswRegexp ()
 A regexp matching localized behavior switches for this wiki.
 
 variantsFor (Bcp47Code $lang)
 Language variant information for the given language (or null if unknown).
Parameters
Bcp47Code$langThe language for which you want variant information
Returns
?array{base:Bcp47Code,fallbacks:Bcp47Code[]} an array with two fields:
  • base: (Bcp47Code) Base BCP-47 language code (e.g. "zh")
  • fallbacks: (Bcp47Code[]) Fallback variants, as BCP-47 codes

 
 getMagicWordMatcher (string $id)
 Get a regexp matching a localized magic word, given its id.FIXME: misleading function name
Parameters
string$id
Returns
string

 
 getParameterizedAliasMatcher (array $words)
 Get a matcher function for fetching values out of interpolated magic words, ie those with $1 in their aliases.The matcher takes a string and returns null if it doesn't match any of the words, or an associative array if it did match:

  • k: The magic word that matched
  • v: The value of $1 that was matched (the JS also returned 'a' with the specific alias that matched, but that seems to be unused and so is omitted here)
Parameters
string[]$wordsMagic words to match
Returns
callable

 
 ensureExtensionTag (string $tag)
 This function is public so it can be used to synchronize env for hybrid parserTests.
 
 getMaxTemplateDepth ()
 Get the maximum template depth.
Returns
int

 
 metrics ()
 Statistics aggregator, for counting and timing.
Returns
StatsdDataFactoryInterface|null

 
- Public Member Functions inherited from Wikimedia\Parsoid\Config\SiteConfig
 registerExtensionModule ( $configOrSpec)
 Register a Parsoid extension module.
 
 unregisterExtensionModule (int $extId)
 Unregister a Parsoid extension module.
 
 getExtensionModules ()
 Return the set of Parsoid extension modules associated with this SiteConfig.
 
 __construct ()
 Base constructor.
 
 getObjectFactory ()
 Return an object factory to use when instantiating extensions.
 
 tagNeedsNowikiStrippedInTagPF (string $lowerTagName)
 
 getContentModelHandler (string $contentmodel)
 Return a ContentModelHandler for the specified $contentmodel, if one is registered.
 
 getAnnotationStrippers ()
 Returns all the annotationStrippers that are defined as annotation configuration.
 
 isExtensionTag (string $name)
 Determine whether a given name, which must have already been converted to lower case, is a valid extension tag name.
 
 isAnnotationTag (string $tagName)
 
 getAnnotationTags ()
 Get an array of defined annotation tags in lower case.
 
 getExtensionTagNameMap ()
 Get an array of defined extension tags, with the lower case name in the key, and the value being arbitrary.
 
 getExtTagConfig (string $tagName)
 
 getExtTagImpl (string $tagName)
 
 getExtDOMProcessors ()
 Return an array mapping extension name to an array of object factory specs for Ext\DOMProcessor objects.
 
 getWt2HtmlLimits ()
 
 getHtml2WtLimits ()
 
 getLogger ()
 General log channel.
 
 setLogger (?LoggerInterface $logger)
 Set the log channel, for debugging.
 
 addHTMLTemplateParameters ()
 When processing template parameters, parse them to HTML and add it to the template parameters data.
 
 scrubBidiChars ()
 If enabled, bidi chars adjacent to category links will be stripped in the html -> wt serialization pass.
 
 bswPagePropRegexp ()
 Regex matching all double-underscore magic words.
 
 namespaceIsTalk (int $ns)
 Test if a namespace is a talk namespace.
 
 ucfirst (string $str)
 Uppercasing method for titles.
 
 interwikiMapNoNamespaces ()
 Interwiki link data, after removing items that conflict with namespace names.
 
 interwikiMatcher (string $href)
 Match interwiki URLs.
 
 linkTrailRegex ()
 Link trail regular expression.
 
 solTransparentWikitextRegexp ()
 A regex matching a line containing just whitespace, comments, and sol transparent links and behavior switches.
 
 solTransparentWikitextNoWsRegexp (bool $addIncludes=false)
 A regex matching a line containing just comments and sol transparent links and behavior switches.
 
 mwAliases ()
 List all magic words by canonical name.
 
 getMagicWordForFunctionHook (string $str)
 Return canonical magic word for a function hook.
 
 getMagicWordForVariable (string $str)
 Return canonical magic word for a variable.
 
 getMagicWordForMediaOption (string $word)
 Return canonical magic word for a media option.
 
 getMagicWordForBehaviorSwitch (string $word)
 Return canonical magic word for a behavior switch.
 
 isBehaviorSwitch (string $word)
 Check if a string is a recognized behavior switch.
 
 getMagicWordWT (string $word, string $suggest)
 Convert the internal canonical magic word name to the wikitext alias.
 
 getMediaPrefixParameterizedAliasMatcher ()
 Get a matcher function for fetching values out of interpolated magic words which are media prefix options.
 
 getExtResourceURLPatternMatcher ()
 Matcher for ISBN/RFC/PMID URL patterns, returning the type and number.
 
 linterEnabled ()
 
 getLinterSiteConfig ()
 Return the desired linter configuration.
 
 makeExtResourceURL (array $match, string $href, string $content)
 Serialize ISBN/RFC/PMID URL patterns.
 
 getProtocolsRegex (bool $excludeProtRel=false)
 Get a regex fragment matching URL protocols, quoted for an exclamation mark delimiter.
 
 hasValidProtocol (string $potentialLink)
 Matcher for valid protocols, must be anchored at start of string.
 
 findValidProtocol (string $potentialLink)
 Matcher for valid protocols, may occur at any point within string.
 

Public Attributes

 $allowedExternalImagePrefixes = [ '' ]
 
 $responsiveReferences
 
 $thumbsize
 
 $suppressLogger
 
- Public Attributes inherited from Wikimedia\Parsoid\Config\Api\SiteConfig
const SITE_CONFIG_QUERY_PARAMS
 

Additional Inherited Members

- Static Public Member Functions inherited from Wikimedia\Parsoid\Config\SiteConfig
static createLogger (?string $filePath=null)
 
- Protected Member Functions inherited from Wikimedia\Parsoid\Config\Api\SiteConfig
 addNamespace (array $ns)
 Add a new namespace to the config.
 
 linkTrail ()
 Return raw link trail regexp from config.
Returns
string

 
 getVariableIDs ()
 
 haveComputedFunctionSynonyms ()
 Does the SiteConfig provide precomputed function synonyms? If no, the SiteConfig is expected to provide an implementation for updateFunctionSynonym.
 
 updateFunctionSynonym (string $func, string $magicword, bool $caseSensitive)
 
 getMagicWords ()
 
 getNonNativeExtensionTags ()
 Get an array of defined extension tags, with the lower case name in the key, the value arbitrary.This is the set of extension tags that are configured in M/W core. $coreExtModules may already be part of it, but eventually this distinction will disappear since all extension tags have to be defined against the Parsoid's extension API.
Returns
array

 
 getSpecialNSAliases ()
 Return name spaces aliases for the NS_SPECIAL namespace.
Returns
array

 
 getSpecialPageAliases (string $specialPage)
 Return Special Page aliases for a special page name.
Parameters
string$specialPage
Returns
array

 
 getProtocols ()
 Get the list of valid protocols.
Returns
array

 
- Protected Member Functions inherited from Wikimedia\Parsoid\Config\SiteConfig
 processExtensionModule (ExtensionModule $ext)
 Register a Parsoid-compatible extension.
 
 getExtConfig ()
 
 exportMetadataHelper (Document $document, string $modulesLoadURI, array $modules, array $moduleStyles, array $jsConfigVars, string $htmlTitle, $lang)
 Helper function to create <head> elements from metadata.
 
 getFunctionSynonyms ()
 Get a list of precomputed function synonyms.
 
- Static Protected Member Functions inherited from Wikimedia\Parsoid\Config\SiteConfig
static quoteTitleRe (string $s, string $delimiter='/')
 Quote a title regex.
 
- Protected Attributes inherited from Wikimedia\Parsoid\Config\Api\SiteConfig
 $nsNames = []
 
 $nsCase = []
 
 $nsIds = []
 
 $nsCanon = []
 
 $nsWithSubpages = []
 
- Protected Attributes inherited from Wikimedia\Parsoid\Config\SiteConfig
 $mwAliases
 
 $functionSynonyms
 
 $interwikiMapNoNamespaces
 
 $linkTrailRegex = false
 
 $logger = null
 
 $iwMatcherBatchSize = 4096
 
 $addHTMLTemplateParameters = false
 
 $scrubBidiChars = false
 
 $linterEnabled = false
 
 $extConfig = null
 
 $wt2htmlLimits
 
 $html2wtLimits
 

Constructor & Destructor Documentation

◆ __construct()

Wikimedia\Parsoid\ParserTests\SiteConfig::__construct ( ApiHelper $api,
array $opts )

Member Function Documentation

◆ allowedExternalImagePrefixes()

Wikimedia\Parsoid\ParserTests\SiteConfig::allowedExternalImagePrefixes ( )

Allowed external image URL prefixes.

Returns
string[] The empty array matches no URLs. The empty string matches all URLs.

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ baseURI()

Wikimedia\Parsoid\ParserTests\SiteConfig::baseURI ( )

Site base URI.

This would be the URI found in <base href="..." />.

Returns
string

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ fakeTimestamp()

Wikimedia\Parsoid\ParserTests\SiteConfig::fakeTimestamp ( )

Fake timestamp, for unit tests.

Returns
int|null Unix timestamp, or null to not fake it

Reimplemented from Wikimedia\Parsoid\Config\SiteConfig.

◆ getExternalLinkTarget()

Wikimedia\Parsoid\ParserTests\SiteConfig::getExternalLinkTarget ( )

Returns
string|false

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ getMWConfigValue()

Wikimedia\Parsoid\ParserTests\SiteConfig::getMWConfigValue ( string $key)

Lookup config.

Parameters
string$key
Returns
mixed|null config value for $key, if present or null, if not.

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ getNoFollowConfig()

Wikimedia\Parsoid\ParserTests\SiteConfig::getNoFollowConfig ( )

◆ interwikiMagic()

Wikimedia\Parsoid\ParserTests\SiteConfig::interwikiMagic ( )

Treat language links as magic connectors, not inline links.

Returns
bool

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ interwikiMap()

Wikimedia\Parsoid\ParserTests\SiteConfig::interwikiMap ( )

Interwiki link data.

Returns
array<string,array> Keys are interwiki prefixes, values are arrays with the following keys:
  • prefix: (string) The interwiki prefix, same as the key.
  • url: (string) Target URL, containing a '$1' to be replaced by the interwiki target.
  • protorel: (bool, optional) Whether the url may be accessed by both http:// and https://.
  • local: (bool, optional) Whether the interwiki link is considered local (to the wikifarm).
  • localinterwiki: (bool, optional) Whether the interwiki link points to the current wiki.
  • language: (bool, optional) Whether the interwiki link is a language link.
  • extralanglink: (bool, optional) Whether the interwiki link is an "extra language link".
  • linktext: (string, optional) For "extra language links", the link text. (booleans marked "optional" must be omitted if false)

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ registerParserTestExtension()

Wikimedia\Parsoid\ParserTests\SiteConfig::registerParserTestExtension ( ExtensionModule $ext)

Register an extension for use in parser tests.

Parameters
ExtensionModule$ext

◆ reset()

Wikimedia\Parsoid\ParserTests\SiteConfig::reset ( )

◆ script()

Wikimedia\Parsoid\ParserTests\SiteConfig::script ( )

The URL path to index.php.

Returns
string

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ scriptpath()

Wikimedia\Parsoid\ParserTests\SiteConfig::scriptpath ( )

FIXME: This is only used to compute the modules path below and maybe shouldn't be exposed.

The base wiki path

Returns
string

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ server()

Wikimedia\Parsoid\ParserTests\SiteConfig::server ( )

The base URL of the server.

Returns
string

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ setExternalLinkTarget()

Wikimedia\Parsoid\ParserTests\SiteConfig::setExternalLinkTarget ( $value)
Parameters
string | false$value

◆ setNoFollowConfig()

Wikimedia\Parsoid\ParserTests\SiteConfig::setNoFollowConfig ( string $key,
$value )
Parameters
string$key
mixed$value

◆ setupInterwikiMap()

Wikimedia\Parsoid\ParserTests\SiteConfig::setupInterwikiMap ( array $iwData)

Compute the interwiki map based on mock raw data.

This replaces the previously computed interwiki map based on data from MockApiHelper

Parameters
array$iwData

◆ timezoneOffset()

Wikimedia\Parsoid\ParserTests\SiteConfig::timezoneOffset ( )

Hardcode value for parser tests.

Returns
int

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.

◆ widthOption()

Wikimedia\Parsoid\ParserTests\SiteConfig::widthOption ( )

Default thumbnail width.

Reimplemented from Wikimedia\Parsoid\Config\Api\SiteConfig.


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