gridstack-8.x-2.5/src/GridStackFormatter.php

src/GridStackFormatter.php
<?php

namespace Drupal\gridstack;

use Drupal\gridstack\Entity\GridStack;
use Drupal\blazy\BlazyFormatter;

/**
 * Implements GridStackFormatterInterface.
 */
class GridStackFormatter extends BlazyFormatter implements GridStackFormatterInterface {

  /**
   * {@inheritdoc}
   */
  public function buildSettings(array &$build, $items) {
    // Prepare integration with Blazy.
    $settings = &$build['settings'];
    $settings = array_merge($settings, GridStackDefault::fixedSettings());

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

  /**
   * {@inheritdoc}
   */
  public function preBuildElements(array &$build, $items, array $entities = []) {
    parent::preBuildElements($build, $items, $entities);

    $settings = &$build['settings'];

    // GridStack specific stuffs.
    $build['optionset'] = GridStack::loadWithFallback($settings['optionset']);

    // Converts gridstack breakpoint grids from stored JSON into array.
    unset($settings['breakpoints']);
    $build['optionset']->gridsJsonToArray($settings);

    $this->getModuleHandler()->alter('gridstack_settings', $build, $items);
  }

}

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

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