Passed
Pull Request — master (#1696)
by Nico
49:43 queued 22:34
created

BuildingManagementProvider::setTemplateVariables()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 3
nc 1
nop 2
dl 0
loc 8
ccs 0
cts 4
cp 0
crap 2
rs 10
c 1
b 0
f 0
1
<?php
2
3
namespace Stu\Module\Colony\Lib\Gui\Component;
4
5
use Stu\Lib\Colony\PlanetFieldHostInterface;
6
use Stu\Module\Control\GameControllerInterface;
7
use Stu\Orm\Repository\CommodityRepositoryInterface;
8
use Stu\Orm\Repository\PlanetFieldRepositoryInterface;
9
10
final class BuildingManagementProvider implements GuiComponentProviderInterface
11
{
12
    private PlanetFieldRepositoryInterface $planetFieldRepository;
13
14
    private CommodityRepositoryInterface $commodityRepository;
15
16
    public function __construct(
17
        PlanetFieldRepositoryInterface $planetFieldRepository,
18
        CommodityRepositoryInterface $commodityRepository
19
    ) {
20
        $this->planetFieldRepository = $planetFieldRepository;
21
        $this->commodityRepository = $commodityRepository;
22
    }
23
24
    public function setTemplateVariables(
25
        PlanetFieldHostInterface $host,
26
        GameControllerInterface $game
27
    ): void {
28
        $list = $this->planetFieldRepository->getByColonyWithBuilding($host);
29
30
        $game->setTemplateVar('PLANET_FIELD_LIST', $list);
31
        $game->setTemplateVar('USEABLE_COMMODITY_LIST', $this->commodityRepository->getByBuildingsOnColony($host));
32
    }
33
}
34