PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.5
Independent Analytics – WordPress Analytics Plugin v2.15.5
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 / Table_Devices.php
independent-analytics / IAWP / Tables Last commit date
Columns 7 months ago Groups 1 year ago Table.php 3 weeks ago Table_Campaigns.php 1 month ago Table_Clicks.php 1 month ago Table_Devices.php 1 month ago Table_Geo.php 1 month ago Table_Journeys.php 1 month ago Table_Pages.php 1 month ago Table_Referrers.php 1 month ago
Table_Devices.php
43 lines
1 <?php
2
3 namespace IAWP\Tables;
4
5 use IAWP\ColumnOptions\Options;
6 use IAWP\ColumnOptions\Plugins\DeviceBrowsers;
7 use IAWP\ColumnOptions\Plugins\DeviceOperatingSystems;
8 use IAWP\ColumnOptions\Plugins\DeviceTypes;
9 use IAWP\Rows\Device_Browsers;
10 use IAWP\Rows\Device_OSS;
11 use IAWP\Rows\Device_Types;
12 use IAWP\Statistics\Device_Browser_Statistics;
13 use IAWP\Statistics\Device_OS_Statistics;
14 use IAWP\Statistics\Device_Type_Statistics;
15 use IAWP\Tables\Columns\Column;
16 use IAWP\Tables\Groups\Group;
17 use IAWP\Tables\Groups\Groups;
18 /** @internal */
19 class Table_Devices extends \IAWP\Tables\Table
20 {
21 public function id() : string
22 {
23 return 'devices';
24 }
25 public function name() : string
26 {
27 return \__('Devices', 'independent-analytics');
28 }
29 public function groups() : Groups
30 {
31 $groups = [];
32 $groups[] = new Group('device_type', \__('Device Type', 'independent-analytics'), 'device_type', Device_Types::class, Device_Type_Statistics::class);
33 $groups[] = new Group('os', \__('OS', 'independent-analytics'), 'os', Device_OSS::class, Device_OS_Statistics::class);
34 $groups[] = new Group('browser', \__('Browser', 'independent-analytics'), 'browser', Device_Browsers::class, Device_Browser_Statistics::class);
35 return new Groups($groups);
36 }
37 protected function local_columns() : array
38 {
39 $columns = [new Column(['id' => 'device_type', 'name' => \__('Type', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => new Options(new DeviceTypes()), 'separate_filter_column' => 'sessions.device_type_id', 'unavailable_for' => ['browser', 'os'], 'is_concrete_column' => \true]), new Column(['id' => 'os', 'name' => \__('Operating System', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => new Options(new DeviceOperatingSystems()), 'separate_filter_column' => 'sessions.device_os_id', 'unavailable_for' => ['device_type', 'browser'], 'is_concrete_column' => \true]), new Column(['id' => 'browser', 'name' => \__('Browser', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => new Options(new DeviceBrowsers()), 'separate_filter_column' => 'sessions.device_browser_id', 'unavailable_for' => ['device_type', 'os'], 'is_concrete_column' => \true]), new Column(['id' => 'visitors', 'name' => \__('Visitors', 'independent-analytics'), 'visible' => \true, 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'views', 'name' => \__('Views', 'independent-analytics'), 'visible' => \true, 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'sessions', 'name' => \__('Sessions', 'independent-analytics'), 'type' => 'int', 'aggregatable' => \true]), new Column(['id' => 'average_session_duration', 'name' => \__('Session Duration', 'independent-analytics'), 'visible' => \true, 'type' => 'int', 'filter_placeholder' => 'Seconds']), new Column(['id' => 'views_per_session', 'name' => \__('Views Per Session', 'independent-analytics'), 'type' => 'int']), new Column(['id' => 'bounce_rate', 'name' => \__('Bounce Rate', 'independent-analytics'), 'visible' => \true, 'type' => 'int']), new Column(['id' => 'visitors_growth', 'name' => \__('Visitors Growth', 'independent-analytics'), 'type' => 'int', 'exportable' => \false]), new Column(['id' => 'views_growth', 'name' => \__('Views Growth', 'independent-analytics'), 'type' => 'int', 'exportable' => \false]), new Column(['id' => 'clicks', 'name' => \__('Clicks', 'independent-analytics'), 'type' => 'int', 'requires_pro' => \true, 'aggregatable' => \true])];
40 return \array_merge($columns, $this->get_woocommerce_columns(), $this->get_form_columns());
41 }
42 }
43