lory-8.x-1.x-dev/src/LoryFormatter.php

src/LoryFormatter.php
<?php

namespace Drupal\lory;

use Drupal\image\Plugin\Field\FieldType\ImageItem;
use Drupal\blazy\BlazyFormatter;

/**
 * Implements LoryFormatterInterface.
 */
class LoryFormatter extends BlazyFormatter implements LoryFormatterInterface {

  /**
   * {@inheritdoc}
   */
  public function buildSettings(array &$build, $items) {
    $settings = &$build['settings'];

    // Prepare integration with Blazy.
    $settings['item_id']   = 'slide';
    $settings['namespace'] = 'lory';
    $settings['nav']       = empty($settings['navset']) ? FALSE : $settings['navset'];

    // Pass basic info to parent::buildSettings().
    parent::buildSettings($build, $items);
  }

  /**
   * {@inheritdoc}
   */
  public function getThumbnail(array $settings = [], $item = NULL) {
    if (!empty($settings['uri'])) {
      return [
        '#theme'      => 'image_style',
        '#style_name' => empty($settings['thumbnail_style']) ? 'thumbnail' : $settings['thumbnail_style'],
        '#uri'        => $settings['uri'],
        '#item'       => $item,
        '#alt'        => $item && $item instanceof ImageItem ? $item->getValue()['alt'] : '',
      ];
    }
    return [];
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc