Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
11 / 11
100.00% covered (success)
100.00%
3 / 3
CRAP
100.00% covered (success)
100.00%
1 / 1
ChangeTagsHandler
100.00% covered (success)
100.00%
11 / 11
100.00% covered (success)
100.00%
3 / 3
3
100.00% covered (success)
100.00%
1 / 1
 __construct
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
1
 onListDefinedTags
100.00% covered (success)
100.00%
5 / 5
100.00% covered (success)
100.00%
1 / 1
1
 onChangeTagsListActive
100.00% covered (success)
100.00%
5 / 5
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace MediaWiki\Extension\AbuseFilter\Hooks\Handlers;
4
5use MediaWiki\Extension\AbuseFilter\ChangeTags\ChangeTagsManager;
6
7class ChangeTagsHandler implements
8    \MediaWiki\ChangeTags\Hook\ListDefinedTagsHook,
9    \MediaWiki\ChangeTags\Hook\ChangeTagsListActiveHook
10{
11
12    /** @var ChangeTagsManager */
13    private $changeTagsManager;
14
15    /**
16     * @param ChangeTagsManager $changeTagsManager
17     */
18    public function __construct( ChangeTagsManager $changeTagsManager ) {
19        $this->changeTagsManager = $changeTagsManager;
20    }
21
22    /**
23     * @param string[] &$tags
24     */
25    public function onListDefinedTags( &$tags ) {
26        $tags = array_merge(
27            $tags,
28            $this->changeTagsManager->getTagsDefinedByFilters(),
29            [ $this->changeTagsManager->getCondsLimitTag() ]
30        );
31    }
32
33    /**
34     * @param string[] &$tags
35     */
36    public function onChangeTagsListActive( &$tags ) {
37        $tags = array_merge(
38            $tags,
39            $this->changeTagsManager->getTagsDefinedByActiveFilters(),
40            [ $this->changeTagsManager->getCondsLimitTag() ]
41        );
42    }
43}