Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 7
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
SkinTemplateNavigationUniversalHookHandler
0.00% covered (danger)
0.00%
0 / 7
0.00% covered (danger)
0.00%
0 / 2
20
0.00% covered (danger)
0.00%
0 / 1
 __construct
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 onSkinTemplateNavigation__Universal
0.00% covered (danger)
0.00%
0 / 6
0.00% covered (danger)
0.00%
0 / 1
12
1<?php
2
3declare( strict_types = 1 );
4
5namespace EntitySchema\MediaWiki;
6
7use MediaWiki\Hook\SkinTemplateNavigation__UniversalHook;
8
9/**
10 * Implementation of the `SkinTemplateNavigation__UniversalHook` handler
11 *
12 * @license GPL-2.0-or-later
13 */
14final class SkinTemplateNavigationUniversalHookHandler implements SkinTemplateNavigation__UniversalHook {
15
16    private bool $entitySchemaIsRepo;
17
18    public function __construct( bool $entitySchemaIsRepo ) {
19        $this->entitySchemaIsRepo = $entitySchemaIsRepo;
20    }
21
22    /** @inheritDoc */
23    public function onSkinTemplateNavigation__Universal( $skinTemplate, &$links ): void {
24        if ( !$this->entitySchemaIsRepo ) {
25            return;
26        }
27
28        $title = $skinTemplate->getRelevantTitle();
29        if ( !$title->inNamespace( NS_ENTITYSCHEMA_JSON ) ) {
30            return;
31        }
32
33        unset( $links['views']['edit'] );
34    }
35}