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. description = Provides inventory management functionality for farm assets.
core = 7.x core = 7.x
package = farmOS package = farmOS
dependencies[] = ctools
dependencies[] = entityreference dependencies[] = entityreference
dependencies[] = entityreference_view_widget dependencies[] = entityreference_view_widget
dependencies[] = features dependencies[] = features
@ -9,9 +10,13 @@ dependencies[] = field_collection
dependencies[] = fraction dependencies[] = fraction
dependencies[] = list dependencies[] = list
dependencies[] = options dependencies[] = options
dependencies[] = views
dependencies[] = views_data_export
features[ctools][] = views:views_default:3.0
features[features_api][] = api:2 features[features_api][] = api:2
features[field_base][] = field_farm_inventory features[field_base][] = field_farm_inventory
features[field_base][] = field_farm_inventory_asset features[field_base][] = field_farm_inventory_asset
features[field_base][] = field_farm_inventory_value 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_asset
features[field_instance][] = field_collection_item-field_farm_inventory-field_farm_inventory_value 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. * Farm inventory module.
*/ */
include_once 'farm_inventory.features.inc';
/** /**
* Implements hook_entity_view_alter(). * 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;
}