Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 19
0.00% covered (danger)
0.00%
0 / 5
CRAP
0.00% covered (danger)
0.00%
0 / 1
Services
0.00% covered (danger)
0.00%
0 / 19
0.00% covered (danger)
0.00%
0 / 5
156
0.00% covered (danger)
0.00%
0 / 1
 containsLocation
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
12
 getIds
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
6
 getNames
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
6
 getCSV
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 isLocale
0.00% covered (danger)
0.00%
0 / 5
0.00% covered (danger)
0.00%
0 / 1
20
1<?php
2
3/**
4 * @package Zmsdldb
5 * @copyright BerlinOnline Stadtportal GmbH & Co. KG
6 **/
7
8namespace BO\Zmsdldb\Collection;
9
10class Services extends Base
11{
12    public function containsLocation($locationCsv = null): self
13    {
14        $list = new self();
15        foreach ($this as $service) {
16            if ($service->containsLocation($locationCsv)) {
17                $list[] = $service;
18            }
19        }
20        return $list;
21    }
22
23    public function getIds(): array
24    {
25        $idList = array();
26        foreach ($this as $service) {
27            $idList[] = $service['id'];
28        }
29        return $idList;
30    }
31
32    /**
33     * @psalm-api
34     */
35    public function getNames(): array
36    {
37        $nameList = array();
38        foreach ($this as $service) {
39            $nameList[$service['id']] = $service['name'];
40        }
41        return $nameList;
42    }
43
44    /**
45     * @psalm-api
46     */
47    public function getCSV(): string
48    {
49        return implode(',', $this->getIds());
50    }
51
52    /**
53     * @psalm-api
54     *
55     * @return null|self
56     */
57    public function isLocale($locale): self|null
58    {
59        $list = new self();
60        foreach ($this as $service) {
61            if ($service->isLocale($locale)) {
62                $list[] = $service;
63            }
64        }
65        return (count($list)) ? $list : null;
66    }
67}