Add a View of "logs with inventory adjustments".

This commit is contained in:
Michael Stenta 2017-10-13 13:24:05 -04:00
parent 41c9c9e516
commit 8ff76032c5
4 changed files with 437 additions and 0 deletions

View File

@ -0,0 +1,12 @@
<?php
/**
* @file
* farm_inventory.features.inc
*/
/**
* Implements hook_views_api().
*/
function farm_inventory_views_api($module = NULL, $api = NULL) {
return array("api" => "3.0");
}

View File

@ -2,6 +2,7 @@ name = Farm Inventory
description = Provides inventory management functionality for farm assets.
core = 7.x
package = farmOS
dependencies[] = ctools
dependencies[] = entityreference
dependencies[] = entityreference_view_widget
dependencies[] = features
@ -9,9 +10,13 @@ dependencies[] = field_collection
dependencies[] = fraction
dependencies[] = list
dependencies[] = options
dependencies[] = views
dependencies[] = views_data_export
features[ctools][] = views:views_default:3.0
features[features_api][] = api:2
features[field_base][] = field_farm_inventory
features[field_base][] = field_farm_inventory_asset
features[field_base][] = field_farm_inventory_value
features[field_instance][] = field_collection_item-field_farm_inventory-field_farm_inventory_asset
features[field_instance][] = field_collection_item-field_farm_inventory-field_farm_inventory_value
features[views_view][] = farm_inventory_log

View File

@ -5,6 +5,8 @@
* Farm inventory module.
*/
include_once 'farm_inventory.features.inc';
/**
* Implements hook_entity_view_alter().
*/

View File

@ -0,0 +1,418 @@
<?php
/**
* @file
* farm_inventory.views_default.inc
*/
/**
* Implements hook_views_default_views().
*/
function farm_inventory_views_default_views() {
$export = array();
$view = new view();
$view->name = 'farm_inventory_log';
$view->description = '';
$view->tag = 'farm_inventory';
$view->base_table = 'log';
$view->human_name = 'Farm inventory logs';
$view->core = 7;
$view->api_version = '3.0';
$view->disabled = FALSE; /* Edit this to true to make a default view disabled initially */
/* Display: Master */
$handler = $view->new_display('default', 'Master', 'default');
$handler->display->display_options['title'] = 'Logs with inventory adjustments';
$handler->display->display_options['use_more_always'] = FALSE;
$handler->display->display_options['access']['type'] = 'perm';
$handler->display->display_options['access']['perm'] = 'view all logs';
$handler->display->display_options['cache']['type'] = 'none';
$handler->display->display_options['query']['type'] = 'views_query';
$handler->display->display_options['exposed_form']['type'] = 'basic';
$handler->display->display_options['exposed_form']['options']['reset_button'] = TRUE;
$handler->display->display_options['pager']['type'] = 'full';
$handler->display->display_options['pager']['options']['items_per_page'] = '50';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['pager']['options']['id'] = '0';
$handler->display->display_options['pager']['options']['quantity'] = '9';
$handler->display->display_options['style_plugin'] = 'table';
$handler->display->display_options['style_options']['columns'] = array(
'views_bulk_operations' => 'views_bulk_operations',
'done' => 'done',
'id' => 'id',
'timestamp' => 'timestamp',
'field_farm_asset' => 'field_farm_asset',
'field_farm_move_to' => 'field_farm_move_to',
'name' => 'name',
'type' => 'type',
'field_farm_log_category' => 'field_farm_log_category',
'field_farm_log_owner' => 'field_farm_log_owner',
);
$handler->display->display_options['style_options']['default'] = '-1';
$handler->display->display_options['style_options']['info'] = array(
'views_bulk_operations' => array(
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'done' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'id' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'timestamp' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'field_farm_asset' => array(
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'field_farm_move_to' => array(
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'name' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'type' => array(
'sortable' => 0,
'default_sort_order' => 'asc',
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'field_farm_log_category' => array(
'align' => '',
'separator' => '',
'empty_column' => 0,
),
'field_farm_log_owner' => array(
'align' => '',
'separator' => '',
'empty_column' => 0,
),
);
$handler->display->display_options['style_options']['empty_table'] = TRUE;
/* Header: Global: Unfiltered text */
$handler->display->display_options['header']['area_text_custom']['id'] = 'area_text_custom';
$handler->display->display_options['header']['area_text_custom']['table'] = 'views';
$handler->display->display_options['header']['area_text_custom']['field'] = 'area_text_custom';
$handler->display->display_options['header']['area_text_custom']['empty'] = TRUE;
$handler->display->display_options['header']['area_text_custom']['content'] = 'This lists all logs that include asset inventory adjustments. If a log contains more than one inventory adjustment, it will be listed more than once in this list. Multiple log types are included in this list, and are specified in the "Log type" column.';
/* No results behavior: Global: Unfiltered text */
$handler->display->display_options['empty']['area_text_custom']['id'] = 'area_text_custom';
$handler->display->display_options['empty']['area_text_custom']['table'] = 'views';
$handler->display->display_options['empty']['area_text_custom']['field'] = 'area_text_custom';
$handler->display->display_options['empty']['area_text_custom']['empty'] = TRUE;
$handler->display->display_options['empty']['area_text_custom']['content'] = 'No logs with inventory adjustments found.';
/* Relationship: Log: Inventory adjustments (field_farm_inventory) */
$handler->display->display_options['relationships']['field_farm_inventory_value']['id'] = 'field_farm_inventory_value';
$handler->display->display_options['relationships']['field_farm_inventory_value']['table'] = 'field_data_field_farm_inventory';
$handler->display->display_options['relationships']['field_farm_inventory_value']['field'] = 'field_farm_inventory_value';
$handler->display->display_options['relationships']['field_farm_inventory_value']['label'] = 'field_farm_inventory';
$handler->display->display_options['relationships']['field_farm_inventory_value']['required'] = TRUE;
$handler->display->display_options['relationships']['field_farm_inventory_value']['delta'] = '-1';
/* Field: Bulk operations: Log */
$handler->display->display_options['fields']['views_bulk_operations']['id'] = 'views_bulk_operations';
$handler->display->display_options['fields']['views_bulk_operations']['table'] = 'views_entity_log';
$handler->display->display_options['fields']['views_bulk_operations']['field'] = 'views_bulk_operations';
$handler->display->display_options['fields']['views_bulk_operations']['vbo_settings']['display_type'] = '1';
$handler->display->display_options['fields']['views_bulk_operations']['vbo_settings']['enable_select_all_pages'] = 1;
$handler->display->display_options['fields']['views_bulk_operations']['vbo_settings']['row_clickable'] = 1;
$handler->display->display_options['fields']['views_bulk_operations']['vbo_settings']['force_single'] = 0;
$handler->display->display_options['fields']['views_bulk_operations']['vbo_settings']['entity_load_capacity'] = '10';
$handler->display->display_options['fields']['views_bulk_operations']['vbo_settings']['skip_batching'] = 1;
$handler->display->display_options['fields']['views_bulk_operations']['vbo_operations'] = array(
'action::farm_log_assign_action' => array(
'selected' => 1,
'postpone_processing' => 0,
'skip_confirmation' => 1,
'skip_permission_check' => 0,
'override_label' => 0,
'label' => '',
),
'action::log_clone_action' => array(
'selected' => 1,
'postpone_processing' => 0,
'skip_confirmation' => 1,
'skip_permission_check' => 0,
'override_label' => 0,
'label' => '',
),
'action::log_done_action' => array(
'selected' => 1,
'postpone_processing' => 0,
'skip_confirmation' => 1,
'skip_permission_check' => 0,
'override_label' => 1,
'label' => 'Done',
),
'action::log_undone_action' => array(
'selected' => 1,
'postpone_processing' => 0,
'skip_confirmation' => 1,
'skip_permission_check' => 0,
'override_label' => 1,
'label' => 'Not Done',
),
'action::log_reschedule_action' => array(
'selected' => 1,
'postpone_processing' => 0,
'skip_confirmation' => 1,
'skip_permission_check' => 0,
'override_label' => 0,
'label' => '',
),
);
/* Field: Log: Done */
$handler->display->display_options['fields']['done']['id'] = 'done';
$handler->display->display_options['fields']['done']['table'] = 'log';
$handler->display->display_options['fields']['done']['field'] = 'done';
$handler->display->display_options['fields']['done']['type'] = 'custom';
$handler->display->display_options['fields']['done']['type_custom_true'] = '✔';
$handler->display->display_options['fields']['done']['not'] = 0;
/* Field: Log: Log ID */
$handler->display->display_options['fields']['id']['id'] = 'id';
$handler->display->display_options['fields']['id']['table'] = 'log';
$handler->display->display_options['fields']['id']['field'] = 'id';
$handler->display->display_options['fields']['id']['separator'] = '';
/* Field: Log: Timestamp */
$handler->display->display_options['fields']['timestamp']['id'] = 'timestamp';
$handler->display->display_options['fields']['timestamp']['table'] = 'log';
$handler->display->display_options['fields']['timestamp']['field'] = 'timestamp';
$handler->display->display_options['fields']['timestamp']['label'] = 'Date';
$handler->display->display_options['fields']['timestamp']['alter']['make_link'] = TRUE;
$handler->display->display_options['fields']['timestamp']['alter']['path'] = 'log/[id]';
$handler->display->display_options['fields']['timestamp']['date_format'] = 'custom';
$handler->display->display_options['fields']['timestamp']['custom_date_format'] = 'M j Y';
$handler->display->display_options['fields']['timestamp']['second_date_format'] = 'long';
/* Field: Log: Name */
$handler->display->display_options['fields']['name']['id'] = 'name';
$handler->display->display_options['fields']['name']['table'] = 'log';
$handler->display->display_options['fields']['name']['field'] = 'name';
$handler->display->display_options['fields']['name']['label'] = 'Log';
$handler->display->display_options['fields']['name']['alter']['make_link'] = TRUE;
$handler->display->display_options['fields']['name']['alter']['path'] = 'log/[id]';
/* Field: Field collection item: Asset */
$handler->display->display_options['fields']['field_farm_inventory_asset']['id'] = 'field_farm_inventory_asset';
$handler->display->display_options['fields']['field_farm_inventory_asset']['table'] = 'field_data_field_farm_inventory_asset';
$handler->display->display_options['fields']['field_farm_inventory_asset']['field'] = 'field_farm_inventory_asset';
$handler->display->display_options['fields']['field_farm_inventory_asset']['relationship'] = 'field_farm_inventory_value';
$handler->display->display_options['fields']['field_farm_inventory_asset']['settings'] = array(
'bypass_access' => 0,
'link' => 1,
);
/* Field: Field collection item: Value */
$handler->display->display_options['fields']['field_farm_inventory_value']['id'] = 'field_farm_inventory_value';
$handler->display->display_options['fields']['field_farm_inventory_value']['table'] = 'field_data_field_farm_inventory_value';
$handler->display->display_options['fields']['field_farm_inventory_value']['field'] = 'field_farm_inventory_value';
$handler->display->display_options['fields']['field_farm_inventory_value']['relationship'] = 'field_farm_inventory_value';
$handler->display->display_options['fields']['field_farm_inventory_value']['label'] = 'Adjustment value';
$handler->display->display_options['fields']['field_farm_inventory_value']['type'] = 'fraction_decimal';
$handler->display->display_options['fields']['field_farm_inventory_value']['settings'] = array(
'precision' => '0',
'auto_precision' => 1,
'prefix_suffix' => 1,
);
/* Field: Log: Log type */
$handler->display->display_options['fields']['type']['id'] = 'type';
$handler->display->display_options['fields']['type']['table'] = 'log';
$handler->display->display_options['fields']['type']['field'] = 'type';
/* Field: Log: Log category */
$handler->display->display_options['fields']['field_farm_log_category']['id'] = 'field_farm_log_category';
$handler->display->display_options['fields']['field_farm_log_category']['table'] = 'field_data_field_farm_log_category';
$handler->display->display_options['fields']['field_farm_log_category']['field'] = 'field_farm_log_category';
$handler->display->display_options['fields']['field_farm_log_category']['label'] = 'Categories';
$handler->display->display_options['fields']['field_farm_log_category']['type'] = 'taxonomy_term_reference_plain';
$handler->display->display_options['fields']['field_farm_log_category']['delta_offset'] = '0';
/* Field: Log: Assigned to */
$handler->display->display_options['fields']['field_farm_log_owner']['id'] = 'field_farm_log_owner';
$handler->display->display_options['fields']['field_farm_log_owner']['table'] = 'field_data_field_farm_log_owner';
$handler->display->display_options['fields']['field_farm_log_owner']['field'] = 'field_farm_log_owner';
$handler->display->display_options['fields']['field_farm_log_owner']['settings'] = array(
'bypass_access' => 0,
'link' => 0,
);
$handler->display->display_options['fields']['field_farm_log_owner']['delta_offset'] = '0';
/* Sort criterion: Log: Timestamp */
$handler->display->display_options['sorts']['timestamp']['id'] = 'timestamp';
$handler->display->display_options['sorts']['timestamp']['table'] = 'log';
$handler->display->display_options['sorts']['timestamp']['field'] = 'timestamp';
$handler->display->display_options['sorts']['timestamp']['order'] = 'DESC';
$handler->display->display_options['sorts']['timestamp']['exposed'] = TRUE;
$handler->display->display_options['sorts']['timestamp']['expose']['label'] = 'Date';
/* Sort criterion: Log: Log ID */
$handler->display->display_options['sorts']['id']['id'] = 'id';
$handler->display->display_options['sorts']['id']['table'] = 'log';
$handler->display->display_options['sorts']['id']['field'] = 'id';
$handler->display->display_options['sorts']['id']['order'] = 'DESC';
/* Contextual filter: Field collection item: Asset (field_farm_inventory_asset) */
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['id'] = 'field_farm_inventory_asset_target_id';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['table'] = 'field_data_field_farm_inventory_asset';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['field'] = 'field_farm_inventory_asset_target_id';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['relationship'] = 'field_farm_inventory_value';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['title_enable'] = TRUE;
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['title'] = '%1\'s inventory adjustments';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['default_argument_type'] = 'fixed';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['summary']['number_of_records'] = '0';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['summary']['format'] = 'default_summary';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['summary_options']['items_per_page'] = '25';
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['specify_validation'] = TRUE;
$handler->display->display_options['arguments']['field_farm_inventory_asset_target_id']['validate']['type'] = 'farm_asset';
/* Filter criterion: Log: Log type */
$handler->display->display_options['filters']['type']['id'] = 'type';
$handler->display->display_options['filters']['type']['table'] = 'log';
$handler->display->display_options['filters']['type']['field'] = 'type';
$handler->display->display_options['filters']['type']['group'] = 1;
$handler->display->display_options['filters']['type']['exposed'] = TRUE;
$handler->display->display_options['filters']['type']['expose']['operator_id'] = 'type_op';
$handler->display->display_options['filters']['type']['expose']['label'] = 'Log type';
$handler->display->display_options['filters']['type']['expose']['operator'] = 'type_op';
$handler->display->display_options['filters']['type']['expose']['identifier'] = 'type';
/* Filter criterion: Log: Log category (field_farm_log_category) */
$handler->display->display_options['filters']['field_farm_log_category_tid']['id'] = 'field_farm_log_category_tid';
$handler->display->display_options['filters']['field_farm_log_category_tid']['table'] = 'field_data_field_farm_log_category';
$handler->display->display_options['filters']['field_farm_log_category_tid']['field'] = 'field_farm_log_category_tid';
$handler->display->display_options['filters']['field_farm_log_category_tid']['group'] = 1;
$handler->display->display_options['filters']['field_farm_log_category_tid']['exposed'] = TRUE;
$handler->display->display_options['filters']['field_farm_log_category_tid']['expose']['operator_id'] = 'field_farm_log_category_tid_op';
$handler->display->display_options['filters']['field_farm_log_category_tid']['expose']['label'] = 'Categories';
$handler->display->display_options['filters']['field_farm_log_category_tid']['expose']['operator'] = 'field_farm_log_category_tid_op';
$handler->display->display_options['filters']['field_farm_log_category_tid']['expose']['identifier'] = 'field_farm_log_category_tid';
$handler->display->display_options['filters']['field_farm_log_category_tid']['expose']['multiple'] = TRUE;
$handler->display->display_options['filters']['field_farm_log_category_tid']['type'] = 'select';
$handler->display->display_options['filters']['field_farm_log_category_tid']['vocabulary'] = 'farm_log_categories';
$handler->display->display_options['filters']['field_farm_log_category_tid']['hierarchy'] = 1;
/* Filter criterion: Date: Date (log) */
$handler->display->display_options['filters']['date_filter']['id'] = 'date_filter';
$handler->display->display_options['filters']['date_filter']['table'] = 'log';
$handler->display->display_options['filters']['date_filter']['field'] = 'date_filter';
$handler->display->display_options['filters']['date_filter']['operator'] = '>=';
$handler->display->display_options['filters']['date_filter']['group'] = 1;
$handler->display->display_options['filters']['date_filter']['exposed'] = TRUE;
$handler->display->display_options['filters']['date_filter']['expose']['operator_id'] = 'date_filter_op';
$handler->display->display_options['filters']['date_filter']['expose']['label'] = 'Start date';
$handler->display->display_options['filters']['date_filter']['expose']['operator'] = 'date_filter_op';
$handler->display->display_options['filters']['date_filter']['expose']['identifier'] = 'date_filter';
$handler->display->display_options['filters']['date_filter']['year_range'] = '-10:+3';
$handler->display->display_options['filters']['date_filter']['date_fields'] = array(
'log.timestamp' => 'log.timestamp',
);
/* Filter criterion: Date: Date (log) */
$handler->display->display_options['filters']['date_filter_1']['id'] = 'date_filter_1';
$handler->display->display_options['filters']['date_filter_1']['table'] = 'log';
$handler->display->display_options['filters']['date_filter_1']['field'] = 'date_filter';
$handler->display->display_options['filters']['date_filter_1']['operator'] = '<=';
$handler->display->display_options['filters']['date_filter_1']['group'] = 1;
$handler->display->display_options['filters']['date_filter_1']['exposed'] = TRUE;
$handler->display->display_options['filters']['date_filter_1']['expose']['operator_id'] = 'date_filter_1_op';
$handler->display->display_options['filters']['date_filter_1']['expose']['label'] = 'End date';
$handler->display->display_options['filters']['date_filter_1']['expose']['operator'] = 'date_filter_1_op';
$handler->display->display_options['filters']['date_filter_1']['expose']['identifier'] = 'date_filter_1';
$handler->display->display_options['filters']['date_filter_1']['year_range'] = '-10:+3';
$handler->display->display_options['filters']['date_filter_1']['date_fields'] = array(
'log.timestamp' => 'log.timestamp',
);
/* Filter criterion: Log: Done */
$handler->display->display_options['filters']['done']['id'] = 'done';
$handler->display->display_options['filters']['done']['table'] = 'log';
$handler->display->display_options['filters']['done']['field'] = 'done';
$handler->display->display_options['filters']['done']['value'] = 'All';
$handler->display->display_options['filters']['done']['group'] = 1;
$handler->display->display_options['filters']['done']['exposed'] = TRUE;
$handler->display->display_options['filters']['done']['expose']['operator_id'] = '';
$handler->display->display_options['filters']['done']['expose']['label'] = 'Done';
$handler->display->display_options['filters']['done']['expose']['operator'] = 'done_op';
$handler->display->display_options['filters']['done']['expose']['identifier'] = 'done';
/* Display: Page */
$handler = $view->new_display('page', 'Page', 'page');
$handler->display->display_options['path'] = 'farm/logs/inventory';
$handler->display->display_options['menu']['type'] = 'normal';
$handler->display->display_options['menu']['title'] = 'Logs with inventory adjustments';
$handler->display->display_options['menu']['weight'] = '100';
$handler->display->display_options['menu']['name'] = 'farm';
$handler->display->display_options['menu']['context'] = 0;
$handler->display->display_options['menu']['context_only_inline'] = 0;
/* Display: Data export */
$handler = $view->new_display('views_data_export', 'Data export', 'views_data_export_1');
$handler->display->display_options['pager']['type'] = 'none';
$handler->display->display_options['pager']['options']['offset'] = '0';
$handler->display->display_options['style_plugin'] = 'views_data_export_csv';
$handler->display->display_options['style_options']['provide_file'] = 1;
$handler->display->display_options['style_options']['filename'] = '%view-%exposed-%timestamp-full.csv';
$handler->display->display_options['style_options']['parent_sort'] = 1;
$handler->display->display_options['style_options']['quote'] = 1;
$handler->display->display_options['style_options']['trim'] = 1;
$handler->display->display_options['style_options']['replace_newlines'] = 0;
$handler->display->display_options['style_options']['newline_token'] = '1';
$handler->display->display_options['style_options']['header'] = 1;
$handler->display->display_options['style_options']['keep_html'] = 0;
$handler->display->display_options['path'] = 'farm/logs/inventory/csv';
$handler->display->display_options['displays'] = array(
'page' => 'page',
'default' => 0,
);
$translatables['farm_inventory_log'] = array(
t('Master'),
t('Logs with inventory adjustments'),
t('more'),
t('Apply'),
t('Reset'),
t('Sort by'),
t('Asc'),
t('Desc'),
t('Items per page'),
t('- All -'),
t('Offset'),
t('« first'),
t(' previous'),
t('next '),
t('last »'),
t('This lists all logs that include asset inventory adjustments. If a log contains more than one inventory adjustment, it will be listed more than once in this list. Multiple log types are included in this list, and are specified in the "Log type" column.'),
t('No logs with inventory adjustments found.'),
t('field_farm_inventory'),
t('Log'),
t('- Choose an operation -'),
t('Done'),
t('Not Done'),
t('✔'),
t('Log ID'),
t('.'),
t('Date'),
t('Asset'),
t('Adjustment value'),
t('Log type'),
t('Categories'),
t('Assigned to'),
t('All'),
t('%1\'s inventory adjustments'),
t('Start date'),
t('End date'),
t('Page'),
t('Data export'),
);
$export['farm_inventory_log'] = $view;
return $export;
}