mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Cite
synced 2024-12-02 18:46:18 +00:00
1a371ec6a5
As of now, this patch does not touch the existing code. However, the goal is to remove a lot of the related code from the Cite class. This will be done in later patches. This here is a separate patch to make reviewing the later patches much easier. The existing parser tests should be proof enough this chain of patches is not changing any behavior. Change-Id: I27ae972f81071bb4036bd452560768fae409417b
53 lines
1.2 KiB
PHP
53 lines
1.2 KiB
PHP
<?php
|
|
|
|
class CiteParserHooks {
|
|
|
|
/**
|
|
* @see https://www.mediawiki.org/wiki/Manual:Hooks/ParserClearState
|
|
*
|
|
* @param Parser $parser
|
|
*/
|
|
public static function onParserClearState( Parser $parser ) {
|
|
/** @var Cite $cite */
|
|
$cite = $parser->extCite;
|
|
$cite->clearState( $parser );
|
|
}
|
|
|
|
/**
|
|
* @see https://www.mediawiki.org/wiki/Manual:Hooks/ParserCloned
|
|
*
|
|
* @param Parser $parser
|
|
*/
|
|
public static function onParserCloned( Parser $parser ) {
|
|
/** @var Cite $cite */
|
|
$cite = $parser->extCite;
|
|
$cite->cloneState( $parser );
|
|
}
|
|
|
|
/**
|
|
* @see https://www.mediawiki.org/wiki/Manual:Hooks/ParserAfterParse
|
|
*
|
|
* @param Parser $parser
|
|
* @param string &$text
|
|
* @param StripState $stripState
|
|
*/
|
|
public static function onParserAfterParse( Parser $parser, &$text, $stripState ) {
|
|
/** @var Cite $cite */
|
|
$cite = $parser->extCite;
|
|
$cite->checkRefsNoReferences( true, $parser, $text );
|
|
}
|
|
|
|
/**
|
|
* @see https://www.mediawiki.org/wiki/Manual:Hooks/ParserBeforeTidy
|
|
*
|
|
* @param Parser $parser
|
|
* @param string &$text
|
|
*/
|
|
public static function onParserBeforeTidy( Parser $parser, &$text ) {
|
|
/** @var Cite $cite */
|
|
$cite = $parser->extCite;
|
|
$cite->checkRefsNoReferences( false, $parser, $text );
|
|
}
|
|
|
|
}
|