Completed
Pull Request — master (#152)
by
unknown
02:44
created

VoteDataProvider::__construct()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
ccs 0
cts 3
cp 0
cc 1
eloc 2
nc 1
nop 1
crap 2
1
<?php
2
3
namespace eXpansion\Framework\GameManiaplanet\DataProviders;
4
5
use eXpansion\Framework\Core\DataProviders\AbstractDataProvider;
6
use eXpansion\Framework\Core\Storage\PlayerStorage;
7
8
/**
9
 * VoteDataProvider provides vote information to plugins.
10
 *
11
 * @package eXpansion\Framework\Core\DataProviders
12
 * @author reaby
13
 */
14
class VoteDataProvider extends AbstractDataProvider
15
{
16
17
    /**
18
     * @var PlayerStorage
19
     */
20
    private $playerStorage;
21
22
    public function __construct(PlayerStorage $playerStorage)
23
    {
24
        $this->playerStorage = $playerStorage;
25
    }
26
27
    public function VoteUpdated($stateName, $login, $cmdName, $cmdValue)
28
    {
29
        switch ($stateName) {
30
            case "NewVote":
31
                $this->dispatch("onVoteNew", [$this->playerStorage->getPlayerInfo($login), $cmdName, $cmdValue]);
32
                break;
33
            case "VoteCancelled":
34
                $this->dispatch("onVoteCancelled", [$this->playerStorage->getPlayerInfo($login), $cmdName, $cmdValue]);
35
                break;
36
            case "VotePassed":
37
                $this->dispatch("onVotePassed", [$this->playerStorage->getPlayerInfo($login), $cmdName, $cmdValue]);
38
                break;
39
            case "VoteFailed":
40
                $this->dispatch("onVoteFailed", [$this->playerStorage->getPlayerInfo($login), $cmdName, $cmdValue]);
41
                break;
42
        }
43
    }
44
}
45