PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 1.19.1
Independent Analytics – WordPress Analytics Plugin v1.19.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 / Queries / Interval.php
independent-analytics / IAWP / Queries Last commit date
Campaigns.php 3 years ago City_Statistics.php 3 years ago Country_Statistics.php 3 years ago Current_Traffic_Finder.php 3 years ago Interval.php 3 years ago Minute_Interval.php 3 years ago Range_Query.php 3 years ago Referrers.php 3 years ago Reset_Database.php 3 years ago Resources.php 3 years ago Ten_Second_Interval.php 3 years ago View.php 3 years ago Views.php 3 years ago Visitors_Over_Time_Finder.php 3 years ago
Interval.php
45 lines
1 <?php
2
3 namespace IAWP\Queries;
4
5 abstract class Interval
6 {
7 abstract public function get_query_name(): string;
8
9 abstract public function get_date_interval(): \DateInterval;
10
11 abstract public function short_label(): string;
12
13 abstract public function long_label_singular(): string;
14
15 abstract public function long_label_plural(): string;
16
17 abstract public function interval_multiplier(): int;
18
19 public function get_short_labels(array $intervals): array
20 {
21 return array_map(function ($interval) {
22 $interval = $interval * $this->interval_multiplier();
23
24 if ($interval === 0) {
25 return esc_html__('now', 'iawp');
26 } else {
27 return '-' . $interval . ' ' . $this->short_label();
28 }
29 }, $intervals);
30 }
31
32 public function get_full_labels($intervals): array
33 {
34 return array_map(function ($interval) {
35 $interval = $interval * $this->interval_multiplier();
36
37 if ($interval === 1) {
38 return $interval . ' ' . $this->long_label_singular();
39 } else {
40 return $interval . ' ' . $this->long_label_plural();
41 }
42 }, $intervals);
43 }
44 }
45