Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
0.00% |
0 / 13 |
|
0.00% |
0 / 1 |
CRAP | |
0.00% |
0 / 1 |
EchoHooks | |
0.00% |
0 / 13 |
|
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
onBeforeCreateEchoEvent | |
0.00% |
0 / 13 |
|
0.00% |
0 / 1 |
2 |
1 | <?php |
2 | |
3 | namespace MediaWiki\Extension\TheWikipediaLibrary; |
4 | |
5 | use MediaWiki\Extension\Notifications\AttributeManager; |
6 | use MediaWiki\Extension\Notifications\Hooks\BeforeCreateEchoEventHook; |
7 | use MediaWiki\Extension\Notifications\UserLocator; |
8 | |
9 | /** |
10 | * TheWikipediaLibrary extension hooks |
11 | * All hooks from the Echo extension which is optional to use with this extension. |
12 | * |
13 | * @file |
14 | * @ingroup Extensions |
15 | * @license MIT |
16 | */ |
17 | class EchoHooks implements |
18 | BeforeCreateEchoEventHook |
19 | { |
20 | /** |
21 | * Add The Wikipedia Library - eligibility events to Echo |
22 | * |
23 | * @param array &$notifications array of Echo notifications |
24 | * @param array &$notificationCategories array of Echo notification categories |
25 | * @param array &$icons array of icon details |
26 | */ |
27 | public function onBeforeCreateEchoEvent( |
28 | array &$notifications, array &$notificationCategories, array &$icons |
29 | ): void { |
30 | $notifications['twl-eligible'] = [ |
31 | AttributeManager::ATTR_LOCATORS => [ |
32 | [ [ UserLocator::class, 'locateEventAgent' ] ], |
33 | ], |
34 | 'canNotifyAgent' => true, |
35 | 'category' => 'system-noemail', |
36 | 'group' => 'positive', |
37 | 'section' => 'message', |
38 | 'presentation-model' => TwlEligiblePresentationModel::class, |
39 | ]; |
40 | |
41 | $icons['twl-eligible'] = [ |
42 | 'path' => 'TheWikipediaLibrary/modules/icons/twl-eligible.svg' |
43 | ]; |
44 | } |
45 | } |