PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.12.2
Independent Analytics – WordPress Analytics Plugin v2.12.2
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 1 year ago Groups 1 year ago Table.php 11 months ago Table_Campaigns.php 11 months ago Table_Clicks.php 11 months ago Table_Devices.php 11 months ago Table_Geo.php 11 months ago Table_Pages.php 11 months ago Table_Referrers.php 11 months ago
Table_Devices.php
38 lines
1 <?php
2
3 namespace IAWP\Tables;
4
5 use IAWP\Filter_Lists\Device_Browser_Filter_List;
6 use IAWP\Filter_Lists\Device_OS_Filter_List;
7 use IAWP\Filter_Lists\Device_Type_Filter_List;
8 use IAWP\Rows\Device_Browsers;
9 use IAWP\Rows\Device_OSS;
10 use IAWP\Rows\Device_Types;
11 use IAWP\Statistics\Device_Browser_Statistics;
12 use IAWP\Statistics\Device_OS_Statistics;
13 use IAWP\Statistics\Device_Type_Statistics;
14 use IAWP\Tables\Columns\Column;
15 use IAWP\Tables\Groups\Group;
16 use IAWP\Tables\Groups\Groups;
17 /** @internal */
18 class Table_Devices extends \IAWP\Tables\Table
19 {
20 public function id() : string
21 {
22 return 'devices';
23 }
24 protected function groups() : Groups
25 {
26 $groups = [];
27 $groups[] = new Group('device_type', \__('Device Type', 'independent-analytics'), 'device_type', Device_Types::class, Device_Type_Statistics::class);
28 $groups[] = new Group('os', \__('OS', 'independent-analytics'), 'os', Device_OSS::class, Device_OS_Statistics::class);
29 $groups[] = new Group('browser', \__('Browser', 'independent-analytics'), 'browser', Device_Browsers::class, Device_Browser_Statistics::class);
30 return new Groups($groups);
31 }
32 protected function local_columns() : array
33 {
34 $columns = [new Column(['id' => 'device_type', 'name' => \__('Type', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => Device_Type_Filter_List::options(), 'database_column' => 'device_types.device_type_id', 'unavailable_for' => ['browser', 'os']]), new Column(['id' => 'os', 'name' => \__('Operating System', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => Device_OS_Filter_List::options(), 'database_column' => 'device_oss.device_os_id', 'unavailable_for' => ['device_type', 'browser']]), new Column(['id' => 'browser', 'name' => \__('Browser', 'independent-analytics'), 'visible' => \true, 'type' => 'select', 'options' => Device_Browser_Filter_List::options(), 'database_column' => 'device_browsers.device_browser_id', 'unavailable_for' => ['device_type', 'os']]), 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])];
35 return \array_merge($columns, $this->get_woocommerce_columns(), $this->get_form_columns());
36 }
37 }
38