Mercurial > hg > isophonics-drupal-site
view core/modules/media_library/media_library.install @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | af1871eacc83 |
children |
line wrap: on
line source
<?php /** * @file * Install, update and uninstall functions for the media_library module. */ use Drupal\image\Entity\ImageStyle; use Drupal\media\Entity\MediaType; use Drupal\views\Entity\View; /** * Implements hook_install(). */ function media_library_install() { // Change the path to the original media view. /** @var \Drupal\views\Entity\View $view */ if ($view = View::load('media')) { $display = &$view->getDisplay('media_page_list'); if (!empty($display)) { $display['display_options']['path'] = 'admin/content/media-table'; unset($display['display_options']['menu']); $view->trustData()->save(); } } if (!\Drupal::isConfigSyncing()) { foreach (MediaType::loadMultiple() as $type) { _media_library_configure_form_display($type); _media_library_configure_view_display($type); } } } /** * Implements hook_uninstall(). */ function media_library_uninstall() { // Restore the path to the original media view. /** @var \Drupal\views\Entity\View $view */ if ($view = View::load('media')) { $display = &$view->getDisplay('media_page_list'); if (!empty($display)) { $display['display_options']['path'] = 'admin/content/media'; $display['display_options']['menu'] = [ 'type' => 'tab', 'title' => 'Media', 'description' => '', 'expanded' => FALSE, 'parent' => '', 'weight' => 0, 'context' => '0', 'menu_name' => 'main', ]; $view->trustData()->save(); } } } /** * Create the 'media_library' image style. */ function media_library_update_8701() { $image_style = ImageStyle::create([ 'name' => 'media_library', 'label' => 'Media Library (220x220)', ]); // Add a scale effect. $image_style->addImageEffect([ 'id' => 'image_scale', 'weight' => 0, 'data' => [ 'width' => 220, 'height' => 220, 'upscale' => FALSE, ], ]); $image_style->save(); } /** * Updates the media library view widget display (contextual) filters. */ function media_library_update_8702() { $view = \Drupal::configFactory()->getEditable('views.view.media_library'); if ($view && $view->get('display.widget')) { $view->set('display.widget.display_options.defaults.filters', FALSE); $view->set('display.widget.display_options.defaults.filter_groups', FALSE); $view->set('display.widget.display_options.defaults.arguments', FALSE); $view->set('display.widget.display_options.filters', [ 'status' => [ 'id' => 'status', 'table' => 'media_field_data', 'field' => 'status', 'relationship' => 'none', 'group_type' => 'group', 'admin_label' => '', 'operator' => '=', 'value' => '1', 'group' => 1, 'exposed' => FALSE, 'expose' => [ 'operator_id' => '', 'label' => '', 'description' => '', 'use_operator' => FALSE, 'operator' => '', 'identifier' => '', 'required' => FALSE, 'remember' => FALSE, 'multiple' => FALSE, 'remember_roles' => [ 'authenticated' => 'authenticated', ], ], 'is_grouped' => FALSE, 'group_info' => [ 'label' => '', 'description' => '', 'identifier' => '', 'optional' => TRUE, 'widget' => 'select', 'multiple' => FALSE, 'remember' => FALSE, 'default_group' => 'All', 'default_group_multiple' => [], 'group_items' => [], ], 'entity_type' => 'media', 'entity_field' => 'status', 'plugin_id' => 'boolean', ], 'name' => [ 'id' => 'name', 'table' => 'media_field_data', 'field' => 'name', 'relationship' => 'none', 'group_type' => 'group', 'admin_label' => '', 'operator' => 'contains', 'value' => '', 'group' => 1, 'exposed' => TRUE, 'expose' => [ 'operator_id' => 'name_op', 'label' => 'Name', 'description' => '', 'use_operator' => FALSE, 'operator' => 'name_op', 'identifier' => 'name', 'required' => FALSE, 'remember' => FALSE, 'multiple' => FALSE, 'remember_roles' => [ 'authenticated' => 'authenticated', 'anonymous' => '0', 'administrator' => '0', ], ], 'is_grouped' => FALSE, 'group_info' => [ 'label' => '', 'description' => '', 'identifier' => '', 'optional' => TRUE, 'widget' => 'select', 'multiple' => FALSE, 'remember' => FALSE, 'default_group' => 'All', 'default_group_multiple' => [], 'group_items' => [], ], 'entity_type' => 'media', 'entity_field' => 'name', 'plugin_id' => 'string', ], ]); $view->set('display.widget.display_options.filter_groups', [ 'operator' => 'AND', 'groups' => [ 1 => 'AND', ], ]); $view->set('display.widget.display_options.arguments', [ 'bundle' => [ 'id' => 'bundle', 'table' => 'media_field_data', 'field' => 'bundle', 'relationship' => 'none', 'group_type' => 'group', 'admin_label' => '', 'default_action' => 'ignore', 'exception' => [ 'value' => 'all', 'title_enable' => FALSE, 'title' => 'All', ], 'title_enable' => FALSE, 'title' => '', 'default_argument_type' => 'fixed', 'default_argument_options' => [ 'argument' => '', ], 'default_argument_skip_url' => FALSE, 'summary_options' => [ 'base_path' => '', 'count' => TRUE, 'items_per_page' => 25, 'override' => FALSE, ], 'summary' => [ 'sort_order' => 'asc', 'number_of_records' => 0, 'format' => 'default_summary', ], 'specify_validation' => FALSE, 'validate' => [ 'type' => 'none', 'fail' => 'not found', ], 'validate_options' => [], 'glossary' => FALSE, 'limit' => 0, 'case' => 'none', 'path_case' => 'none', 'transform_dash' => FALSE, 'break_phrase' => FALSE, 'entity_type' => 'media', 'entity_field' => 'bundle', 'plugin_id' => 'string', ], ]); $view->save(); } }