From a36ffec7521ef3d4e440f2b7e5f1647b53189958 Mon Sep 17 00:00:00 2001 From: paul121 Date: Thu, 6 Aug 2020 16:00:45 -0700 Subject: [PATCH] Add sensor type to sensor asset view and expose sensor type as a filter. --- .../farm/farm_sensor/farm_sensor.views.inc | 45 +++++++++++++++++++ .../farm_sensor/farm_sensor.views_default.inc | 19 ++++++++ 2 files changed, 64 insertions(+) create mode 100644 modules/farm/farm_sensor/farm_sensor.views.inc diff --git a/modules/farm/farm_sensor/farm_sensor.views.inc b/modules/farm/farm_sensor/farm_sensor.views.inc new file mode 100644 index 000000000..98b2abba7 --- /dev/null +++ b/modules/farm/farm_sensor/farm_sensor.views.inc @@ -0,0 +1,45 @@ + array( + 'left_field' => 'id', + 'field' => 'id', + ), + ); + + // Sensor reading name. + $data['farm_sensor']['type'] = array( + 'title' => t('Sensor type'), + 'help' => t('Type of sensor.'), + 'field' => array( + 'handler' => 'views_handler_field', + 'click sortable' => TRUE, + ), + 'sort' => array( + 'handler' => 'views_handler_sort', + ), + 'filter' => array( + 'handler' => 'views_handler_filter_string', + ), + 'argument' => array( + 'handler' => 'views_handler_argument_string', + ), + ); + + return $data; +} diff --git a/modules/farm/farm_sensor/farm_sensor.views_default.inc b/modules/farm/farm_sensor/farm_sensor.views_default.inc index 85f3561e6..27abf181e 100644 --- a/modules/farm/farm_sensor/farm_sensor.views_default.inc +++ b/modules/farm/farm_sensor/farm_sensor.views_default.inc @@ -201,6 +201,11 @@ function farm_sensor_views_default_views() { $handler->display->display_options['fields']['id']['field'] = 'id'; $handler->display->display_options['fields']['id']['label'] = 'Asset ID'; $handler->display->display_options['fields']['id']['separator'] = ''; + /* Field: Sensor: Sensor type */ + $handler->display->display_options['fields']['type']['id'] = 'type'; + $handler->display->display_options['fields']['type']['table'] = 'farm_sensor'; + $handler->display->display_options['fields']['type']['field'] = 'type'; + $handler->display->display_options['fields']['type']['label'] = 'Sensor Type'; /* Field: Farm asset: Name */ $handler->display->display_options['fields']['name']['id'] = 'name'; $handler->display->display_options['fields']['name']['table'] = 'farm_asset'; @@ -325,6 +330,19 @@ function farm_sensor_views_default_views() { $handler->display->display_options['filters']['archived_boolean']['expose']['label'] = 'Archived'; $handler->display->display_options['filters']['archived_boolean']['expose']['operator'] = 'archived_boolean_op'; $handler->display->display_options['filters']['archived_boolean']['expose']['identifier'] = 'archived_boolean'; + /* Filter criterion: Sensor: Sensor type */ + $handler->display->display_options['filters']['type_1']['id'] = 'type_1'; + $handler->display->display_options['filters']['type_1']['table'] = 'farm_sensor'; + $handler->display->display_options['filters']['type_1']['field'] = 'type'; + $handler->display->display_options['filters']['type_1']['operator'] = 'contains'; + $handler->display->display_options['filters']['type_1']['exposed'] = TRUE; + $handler->display->display_options['filters']['type_1']['expose']['operator_id'] = 'type_1_op'; + $handler->display->display_options['filters']['type_1']['expose']['label'] = 'Sensor Type'; + $handler->display->display_options['filters']['type_1']['expose']['operator'] = 'type_1_op'; + $handler->display->display_options['filters']['type_1']['expose']['identifier'] = 'sensor_type'; + $handler->display->display_options['filters']['type_1']['expose']['remember_roles'] = array( + 2 => '2', + ); /* Display: Page */ $handler = $view->new_display('page', 'Page', 'page'); @@ -384,6 +402,7 @@ function farm_sensor_views_default_views() { t('Delete'), t('Asset ID'), t('.'), + t('Sensor Type'), t('Name'), t('Description'), t('Flags'),