PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.3.1
Independent Analytics – WordPress Analytics Plugin v2.3.1
2.15.5 2.15.4 2.15.3 2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / IAWP / Tables / Groups / Groups.php
independent-analytics / IAWP / Tables / Groups Last commit date
Group.php 2 years ago Groups.php 2 years ago
Groups.php
56 lines
1 <?php
2
3 namespace IAWP\Tables\Groups;
4
5 /** @internal */
6 class Groups
7 {
8 private $groups;
9 /**
10 * @param Group[] $groups
11 */
12 public function __construct(array $groups = [])
13 {
14 $this->groups = $groups;
15 }
16 public function add(\IAWP\Tables\Groups\Group $group) : void
17 {
18 $this->groups[] = $group;
19 }
20 public function find_by_id(?string $id = null) : \IAWP\Tables\Groups\Group
21 {
22 if (\is_null($id)) {
23 return $this->default_group();
24 }
25 $array = \array_filter($this->groups(), function ($group) use($id) {
26 return $group->id() === $id;
27 });
28 $match = \reset($array);
29 return $match === \false ? $this->default_group() : $match;
30 }
31 /**
32 * Return an array of groups representing buttons one can select
33 *
34 * @return Group[]
35 */
36 public function buttons() : array
37 {
38 if (\count($this->groups()) === 1) {
39 return [];
40 } else {
41 return $this->groups();
42 }
43 }
44 /**
45 * @return Group[]
46 */
47 public function groups() : array
48 {
49 return $this->groups;
50 }
51 private function default_group() : \IAWP\Tables\Groups\Group
52 {
53 return $this->groups()[0];
54 }
55 }
56