PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 1.27.0
Independent Analytics – WordPress Analytics Plugin v1.27.0
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 3 years ago Groups.php 3 years ago
Groups.php
48 lines
1 <?php
2
3 namespace IAWP_SCOPED\IAWP\Tables\Groups;
4
5 class Groups
6 {
7 private $groups = [];
8 public function add(Group $group) : void
9 {
10 $this->groups[] = $group;
11 }
12 public function find_by_id(?string $id = null) : Group
13 {
14 if (\is_null($id)) {
15 return $this->default_group();
16 }
17 $array = \array_filter($this->groups(), function ($group) use($id) {
18 return $group->has_id($id);
19 });
20 $match = \reset($array);
21 return $match === \false ? $this->default_group() : $match;
22 }
23 /**
24 * Return an array of groups representing buttons one can select
25 *
26 * @return Group[]
27 */
28 public function buttons() : array
29 {
30 if (\count($this->groups()) === 1) {
31 return [];
32 } else {
33 return $this->groups();
34 }
35 }
36 private function default_group() : Group
37 {
38 return $this->groups()[0];
39 }
40 /**
41 * @return Group[]
42 */
43 private function groups() : array
44 {
45 return $this->groups;
46 }
47 }
48