Passed
Push — develop ( f18292...8f15a8 )
by BENARD
05:20
created

GetMedalsByTime   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 18
dl 0
loc 33
rs 10
c 0
b 0
f 0
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A __invoke() 0 20 2
1
<?php
2
3
namespace VideoGamesRecords\DwhBundle\Controller\Player;
4
5
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
6
use Symfony\Component\HttpFoundation\Request;
7
use VideoGamesRecords\DwhBundle\Repository\PlayerRepository;
8
9
class GetMedalsByTime extends AbstractController
10
{
11
    private PlayerRepository $playerRepository;
12
13
    public function __construct(PlayerRepository $playerRepository)
14
    {
15
        $this->playerRepository = $playerRepository;
16
    }
17
18
    /**
19
     * @param Request $request
20
     * @return array
21
     */
22
    public function __invoke(Request $request): array
23
    {
24
        $idPlayer = $request->query->get('idPlayer', null);
25
        $list = $this->playerRepository->findBy(array('id' => $idPlayer), array('date' => 'ASC'));
26
27
        $return = [
28
            'rank0' => [],
29
            'rank1' => [],
30
            'rank2' => [],
31
            'rank3' => [],
32
            'date' => [],
33
        ];
34
        foreach ($list as $object) {
35
            $return['rank0'][] = $object->getChartRank0();
36
            $return['rank1'][] = $object->getChartRank1();
37
            $return['rank2'][] = $object->getChartRank2();
38
            $return['rank3'][] = $object->getChartRank3();
39
            $return['date'][] = $object->getDate();
40
        }
41
        return $return;
42
    }
43
}
44