varbase_media.install in Varbase Media 8.5
Same filename and directory in other branches
Contains install and update for Varbase Media mdoule.
File
varbase_media.installView source
<?php
/**
* @file
* Contains install and update for Varbase Media mdoule.
*/
use Symfony\Component\Yaml\Yaml;
/**
* Implements hook_install().
*/
function varbase_media_install() {
// Activate configurations to work with enable_multilingual.
if (\Drupal::moduleHandler()
->moduleExists('varbase_internationalization')) {
$module_path = Drupal::service('module_handler')
->getModule('varbase_media')
->getPath() . '/config/optional/';
$config_path = $module_path . 'language.content_settings.media.file.yml';
$config_content = file_get_contents($config_path);
$config_data = (array) Yaml::parse($config_content);
$config_factory = \Drupal::configFactory()
->getEditable('language.content_settings.media.file');
$config_factory
->setData($config_data)
->save(TRUE);
$config_path = $module_path . 'language.content_settings.media.image.yml';
$config_content = file_get_contents($config_path);
$config_data = (array) Yaml::parse($config_content);
$config_factory = \Drupal::configFactory()
->getEditable('language.content_settings.media.image');
$config_factory
->setData($config_data)
->save(TRUE);
$config_path = $module_path . 'language.content_settings.media.video.yml';
$config_content = file_get_contents($config_path);
$config_data = (array) Yaml::parse($config_content);
$config_factory = \Drupal::configFactory()
->getEditable('language.content_settings.media.video');
$config_factory
->setData($config_data)
->save(TRUE);
$config_path = $module_path . 'language.content_settings.media.video_embed.yml';
$config_content = file_get_contents($config_path);
$config_data = (array) Yaml::parse($config_content);
$config_factory = \Drupal::configFactory()
->getEditable('language.content_settings.media.video_embed');
$config_factory
->setData($config_data)
->save(TRUE);
}
}
/**
* Enable blazy module.
*/
function varbase_media_update_8001() {
if (!\Drupal::moduleHandler()
->moduleExists('blazy')) {
\Drupal::service('module_installer')
->install([
'blazy',
], FALSE);
}
}
/**
* Updated field preview image style (150xTraditional 4:3).
*/
function varbase_media_update_8002() {
$field_preview_image_style_config = \Drupal::service('config.factory')
->getEditable('image.style.field_preview');
$field_preview_image_style_config_file = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/image.style.field_preview.yml';
$field_preview_image_style_config_content = file_get_contents($field_preview_image_style_config_file);
$field_preview_image_style_config_content_data = (array) Yaml::parse($field_preview_image_style_config_content);
$field_preview_image_style_config
->setData($field_preview_image_style_config_content_data)
->save();
}
/**
* Updated browser teaser image meida view mode.
*/
function varbase_media_update_8003() {
$browser_teaser_view_mode_config = \Drupal::service('config.factory')
->getEditable('core.entity_view_display.media.image.browser_teaser');
$browser_teaser_view_mode_config_file = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/core.entity_view_display.media.image.browser_teaser.yml';
$browser_teaser_view_mode_config_content = file_get_contents($browser_view_mode_teaser_config_file);
$browser_teaser_view_mode_config_content_data = (array) Yaml::parse($browser_teaser_view_mode_config_content);
$browser_teaser_view_mode_config
->setData($browser_teaser_view_mode_config_content_data)
->save();
}
/**
* Updated field preview image meida view mode.
*/
function varbase_media_update_8004() {
$field_preview_view_mode_config = \Drupal::service('config.factory')
->getEditable('core.entity_view_display.media.image.field_preview');
$field_preview_view_mode_config_file = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/core.entity_view_display.media.image.field_preview.yml';
$field_preview_view_mode_config_content = file_get_contents($field_preview_view_mode_config_file);
$field_preview_view_mode_config_content_data = (array) Yaml::parse($field_preview_view_mode_config_content);
$field_preview_view_mode_config
->setData($field_preview_view_mode_config_content_data)
->save();
}
/**
* Changed name of Media embed button to be "Media Library".
*/
function varbase_media_update_8005() {
$embed_button_config = \Drupal::service('config.factory')
->getEditable('embed.button.media');
if (strtolower($embed_button_config
->get('label')) === 'media') {
$embed_button_config
->set('label', 'Media Library')
->save();
}
}
/**
* Issue #2893965: [Varbase Media] Media (image) widget field preview.
*
* Updated field preview image meida view mode.
*/
function varbase_media_update_8006() {
$image_style_field_preview_config = \Drupal::service('config.factory')
->getEditable('image.style.field_preview');
$image_style_field_preview_config_file = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/image.style.field_preview.yml';
$image_style_field_preview_config_content = file_get_contents($image_style_field_preview_config_file);
$image_style_field_preview_config_content_data = (array) Yaml::parse($image_style_field_preview_config_content);
$image_style_field_preview_config
->setData($image_style_field_preview_config_content_data)
->save();
}
/**
* Issue #2905259: Added ALT and TITLE columns for images.
*
* In Media content page admin/content/media.
*/
function varbase_media_update_8007() {
$config = \Drupal::configFactory()
->getEditable('views.view.media');
$config_file = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/views.view.media.yml';
$data = (array) Yaml::parse($config_file);
$config
->setData($data)
->save(TRUE);
}
/**
* Issue #2917363: Added Display Edge-to-Edge 4:1 responsive image style.
*/
function varbase_media_update_8008() {
$config_path = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/';
$config_names = [
'image.style.de2e_4_1',
'image.style.de2e_4_1_md',
'image.style.de2e_4_1_sm',
'image.style.de2e_4_1_xs',
'responsive_image.styles.de2e_4_1',
'core.entity_view_mode.media.se2e_4_1',
'core.entity_view_display.media.image.se2e_4_1',
];
foreach ($config_names as $config_name) {
$config_file = $config_path . $config_name . '.yml';
if (file_exists($config_file)) {
$config = \Drupal::service('config.factory')
->getEditable($config_name);
$config_content = file_get_contents($config_file);
$config_content_data = (array) Yaml::parse($config_content);
$config
->setData($config_content_data)
->save();
}
}
}
/**
* Added social large, medium, and small image styles.
*/
function varbase_media_update_8009() {
$config_path = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/';
$config_names = [
'image.style.social_large',
'image.style.social_medium',
'image.style.social_small',
];
foreach ($config_names as $config_name) {
$config_file = $config_path . $config_name . '.yml';
if (file_exists($config_file)) {
$config = \Drupal::service('config.factory')
->getEditable($config_name);
$config_content = file_get_contents($config_file);
$config_content_data = (array) Yaml::parse($config_content);
$config
->setData($config_content_data)
->save();
}
}
}
/**
* Update entity form display for media image type, to use the latest config
* from the focal point module.
*/
function varbase_media_update_8010() {
$config_path = \Drupal::root() . '/' . drupal_get_path('module', 'varbase_media') . '/config/install/';
$config_names = [
'core.entity_form_display.media.image.default',
];
foreach ($config_names as $config_name) {
$config_file = $config_path . $config_name . '.yml';
if (file_exists($config_file)) {
$config = \Drupal::service('config.factory')
->getEditable($config_name);
$config_content = file_get_contents($config_file);
$config_content_data = (array) Yaml::parse($config_content);
$config
->setData($config_content_data)
->save();
}
}
}
Functions
Name | Description |
---|---|
varbase_media_install | Implements hook_install(). |
varbase_media_update_8001 | Enable blazy module. |
varbase_media_update_8002 | Updated field preview image style (150xTraditional 4:3). |
varbase_media_update_8003 | Updated browser teaser image meida view mode. |
varbase_media_update_8004 | Updated field preview image meida view mode. |
varbase_media_update_8005 | Changed name of Media embed button to be "Media Library". |
varbase_media_update_8006 | Issue #2893965: [Varbase Media] Media (image) widget field preview. |
varbase_media_update_8007 | Issue #2905259: Added ALT and TITLE columns for images. |
varbase_media_update_8008 | Issue #2917363: Added Display Edge-to-Edge 4:1 responsive image style. |
varbase_media_update_8009 | Added social large, medium, and small image styles. |
varbase_media_update_8010 | Update entity form display for media image type, to use the latest config from the focal point module. |