for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare( strict_types = 1 );
namespace IdGenerator;
use MediaWiki\MediaWikiServices;
use Parser;
class IdGeneratorSetup {
public static function onExtensionFunction() {
$GLOBALS['wgHooks']['ParserFirstCallInit'][] = function ( Parser &$parser ) {
foreach ( [ 'generate_id', 'generateid' ] as $functionName ) {
$parser->setFunctionHook(
$functionName,
function ( Parser $parser, string $param = '' ) {
$generator = ( new IdGeneratorFactory() )->newIdGenerator(
MediaWikiServices::getInstance()->getDBLoadBalancer()
);
return [
$generator->getNewId( $param )
];
}
};