You are here

public static function BlazyMedia::fakeImageItem in Blazy 8.2

1 call to BlazyMedia::fakeImageItem()
BlazyOEmbed::getImageItem in src/BlazyOEmbed.php
@todo compare and merge with BlazyMedia::imageItem().

File

src/BlazyMedia.php, line 133

Class

BlazyMedia
Provides extra utilities to work with core Media.

Namespace

Drupal\blazy

Code

public static function fakeImageItem(array &$data, $entity, $image) {

  /** @var \Drupal\file\Entity\File $entity */
  list($type, ) = explode('/', $entity
    ->getMimeType(), 2);
  if ($type == 'image' && $image
    ->isValid()) {
    $settings = [
      'uri' => $entity
        ->getFileUri(),
      'target_id' => $entity
        ->id(),
      'width' => $image
        ->getWidth(),
      'height' => $image
        ->getHeight(),
      'alt' => $entity
        ->getFilename(),
      'title' => $entity
        ->getFilename(),
      'type' => 'image',
    ];

    // Build item and settings.
    $item = Blazy::image($settings);
    $item->entity = $entity;
    $data['item'] = $item;
    $data['settings'] = empty($data['settings']) ? $settings : array_merge($data['settings'], $settings);
    unset($item);
  }
}