diff options
Diffstat (limited to 'www/wiki/extensions/Maps/src/MediaWiki/ParserHooks/MapsDocFunction.php')
-rw-r--r-- | www/wiki/extensions/Maps/src/MediaWiki/ParserHooks/MapsDocFunction.php | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/www/wiki/extensions/Maps/src/MediaWiki/ParserHooks/MapsDocFunction.php b/www/wiki/extensions/Maps/src/MediaWiki/ParserHooks/MapsDocFunction.php index 6a365378..e294736b 100644 --- a/www/wiki/extensions/Maps/src/MediaWiki/ParserHooks/MapsDocFunction.php +++ b/www/wiki/extensions/Maps/src/MediaWiki/ParserHooks/MapsDocFunction.php @@ -2,7 +2,6 @@ namespace Maps\MediaWiki\ParserHooks; -use Maps\MappingServices; use Maps\MapsFactory; use ParamProcessor\ParamDefinition; use ParserHook; @@ -35,12 +34,14 @@ class MapsDocFunction extends ParserHook { public function render( array $parameters ) { $this->language = $parameters['language']; - $params = $this->getServiceParameters( $parameters['service'] ); + $factory = MapsFactory::globalInstance(); - return $this->getParameterTable( $params ); + $params = $this->getServiceParameters( $factory, $parameters['service'] ); + + return $this->getParameterTable( $factory, $params ); } - private function getServiceParameters( $service ) { + private function getServiceParameters( MapsFactory $factory, string $service ) { return array_merge( [ 'zoom' => [ @@ -48,21 +49,17 @@ class MapsDocFunction extends ParserHook { 'message' => 'maps-par-zoom', ] ], - MapsFactory::globalInstance()->getMappingServices()->getService( $service )->getParameterInfo() + $factory->getMappingServices()->getService( $service )->getParameterInfo() ); } /** * Returns the wikitext for a table listing the provided parameters. - * - * @param array $parameters - * - * @return string */ - private function getParameterTable( array $parameters ) { + private function getParameterTable( MapsFactory $factory, array $parameters ): string { $tableRows = []; - $parameters = ParamDefinition::getCleanDefinitions( $parameters ); + $parameters = $factory->getParamDefinitionFactory()->newDefinitionsFromArrays( $parameters ); foreach ( $parameters as $parameter ) { $tableRows[] = $this->getDescriptionRow( $parameter ); |