/**
  * Constructs a new class instance.
  *
  * @param array $configuration
  *   A configuration array containing information about the plugin instance.
  * @param string $plugin_id
  *   The plugin_id for the plugin instance.
  * @param mixed $plugin_definition
  *   The plugin implementation definition.
  * @param \Drupal\Core\Entity\EntityManager $entity_manager
  *   Entity manager service.
  * @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory
  *   Config factory service.
  */
 public function __construct(array $configuration, $plugin_id, $plugin_definition, EntityManager $entity_manager, ConfigFactoryInterface $config_factory)
 {
     parent::__construct($configuration, $plugin_id, $plugin_definition, $entity_manager, $config_factory->get('media_entity.settings'));
     $this->configFactory = $config_factory;
 }
Exemplo n.º 2
0
 /**
  * Constructs a new class instance.
  *
  * @param array $configuration
  *   A configuration array containing information about the plugin instance.
  * @param string $plugin_id
  *   The plugin_id for the plugin instance.
  * @param mixed $plugin_definition
  *   The plugin implementation definition.
  * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager
  *   Entity type manager service.
  * @param \Drupal\Core\Entity\EntityFieldManagerInterface $entity_field_manager
  *   Entity field manager service.
  * @param \Drupal\Core\Image\ImageFactory $image_factory
  *   The image factory.
  * @param \Drupal\Core\Config\Config $config
  *   Media entity config object.
  */
 public function __construct(array $configuration, $plugin_id, $plugin_definition, EntityTypeManagerInterface $entity_type_manager, EntityFieldManagerInterface $entity_field_manager, ImageFactory $image_factory, Config $config)
 {
     parent::__construct($configuration, $plugin_id, $plugin_definition, $entity_type_manager, $entity_field_manager, $config);
     $this->imageFactory = $image_factory;
 }
Exemplo n.º 3
0
 /**
  * {@inheritdoc}
  */
 public function __construct(array $configuration, $plugin_id, $plugin_definition, EntityTypeManagerInterface $entity_type_manager, EntityFieldManagerInterface $entity_field_manager, Config $config, ProviderManagerInterface $provider_manager, Config $media_settings)
 {
     parent::__construct($configuration, $plugin_id, $plugin_definition, $entity_type_manager, $entity_field_manager, $config);
     $this->providerManager = $provider_manager;
     $this->mediaSettings = $media_settings;
 }
Exemplo n.º 4
0
 /**
  * {@inheritdoc}
  */
 public function attachConstraints(MediaInterface $media)
 {
     parent::attachConstraints($media);
     $source_field_name = $this->configuration['source_field'];
     // Get all providers regexes. Wehen we will be able to select providers
     // per field we should handle that here.
     $video_provider_definitions = $this->videoProviders->getDefinitions();
     $regexes = [];
     foreach ($video_provider_definitions as $definition) {
         $regexes = array_merge($regexes, $definition['regular_expressions']);
     }
     foreach ($media->get($source_field_name) as &$embed_code) {
         /** @var \Drupal\Core\TypedData\DataDefinitionInterface $typed_data */
         $typed_data = $embed_code->getDataDefinition();
         $typed_data->addConstraint('VideoProviderMatch', ['regular_expressions' => $regexes]);
     }
 }