mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Nuke
synced 2024-12-03 12:26:22 +00:00
e79b52ee8a
The new system allows to have documentation directly at the interfaces Change-Id: I82f6f87d145cc43b2dd5b7d1fa256850b50ca63f
51 lines
956 B
PHP
51 lines
956 B
PHP
<?php
|
|
|
|
namespace MediaWiki\Extension\Nuke\Hooks;
|
|
|
|
use MediaWiki\HookContainer\HookContainer;
|
|
use Title;
|
|
|
|
/**
|
|
* Handle running Nuke's hooks
|
|
* @author DannyS712
|
|
*/
|
|
class NukeHookRunner implements NukeDeletePageHook, NukeGetNewPagesHook {
|
|
|
|
/** @var HookContainer */
|
|
private $hookContainer;
|
|
|
|
/**
|
|
* @param HookContainer $hookContainer
|
|
*/
|
|
public function __construct( HookContainer $hookContainer ) {
|
|
$this->hookContainer = $hookContainer;
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function onNukeDeletePage( Title $title, string $reason, bool &$deletionResult ) {
|
|
return $this->hookContainer->run(
|
|
'NukeDeletePage',
|
|
[ $title, $reason, &$deletionResult ]
|
|
);
|
|
}
|
|
|
|
/**
|
|
* @inheritDoc
|
|
*/
|
|
public function onNukeGetNewPages(
|
|
string $username,
|
|
?string $pattern,
|
|
?int $namespace,
|
|
int $limit,
|
|
array &$pages
|
|
) {
|
|
return $this->hookContainer->run(
|
|
'NukeGetNewPages',
|
|
[ $username, $pattern, $namespace, $limit, &$pages ]
|
|
);
|
|
}
|
|
|
|
}
|