42 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
		
		
			
		
	
	
			42 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| 
								 | 
							
								<?php
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * @file
							 | 
						||
| 
								 | 
							
								 * Post update functions for File.
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								use Drupal\Core\Config\Entity\ConfigEntityUpdater;
							 | 
						||
| 
								 | 
							
								use Drupal\Core\Entity\Display\EntityViewDisplayInterface;
							 | 
						||
| 
								 | 
							
								use Drupal\Core\StringTranslation\TranslatableMarkup;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * Implements hook_removed_post_updates().
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								function file_removed_post_updates(): array {
							 | 
						||
| 
								 | 
							
								  return [
							 | 
						||
| 
								 | 
							
								    'file_post_update_add_txt_if_allows_insecure_extensions' => '10.0.0',
							 | 
						||
| 
								 | 
							
								    'file_post_update_add_permissions_to_roles' => '11.0.0',
							 | 
						||
| 
								 | 
							
								    'file_post_update_add_default_filename_sanitization_configuration' => '11.0.0',
							 | 
						||
| 
								 | 
							
								  ];
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								/**
							 | 
						||
| 
								 | 
							
								 * Adds a value for the 'playsinline' setting of the 'file_video' formatter.
							 | 
						||
| 
								 | 
							
								 */
							 | 
						||
| 
								 | 
							
								function file_post_update_add_playsinline(array &$sandbox = []): ?TranslatableMarkup {
							 | 
						||
| 
								 | 
							
								  /** @var \Drupal\Core\Config\Entity\ConfigEntityUpdater $config_entity_updater */
							 | 
						||
| 
								 | 
							
								  $config_entity_updater = \Drupal::classResolver(ConfigEntityUpdater::class);
							 | 
						||
| 
								 | 
							
								  return $config_entity_updater->update($sandbox, 'entity_view_display', function (EntityViewDisplayInterface $display) {
							 | 
						||
| 
								 | 
							
								    $needs_update = FALSE;
							 | 
						||
| 
								 | 
							
								    $components = $display->getComponents();
							 | 
						||
| 
								 | 
							
								    foreach ($components as $name => $component) {
							 | 
						||
| 
								 | 
							
								      if (isset($component['type']) && $component['type'] === 'file_video') {
							 | 
						||
| 
								 | 
							
								        $needs_update = TRUE;
							 | 
						||
| 
								 | 
							
								        $component['settings']['playsinline'] = FALSE;
							 | 
						||
| 
								 | 
							
								        $display->setComponent($name, $component);
							 | 
						||
| 
								 | 
							
								      }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    return $needs_update;
							 | 
						||
| 
								 | 
							
								  });
							 | 
						||
| 
								 | 
							
								}
							 |