protected function ViewStorageController::mergeDefaultDisplaysOptions

Add defaults to the display options.

Parameters

\Drupal\Core\Entity\EntityInterface $entity: The view entity to attach default displays options.

2 calls to ViewStorageController::mergeDefaultDisplaysOptions()
ViewStorageController::attachLoad in drupal/core/modules/views/lib/Drupal/views/ViewStorageController.php
Overrides Drupal\config\ConfigStorageController::attachLoad();
ViewStorageController::create in drupal/core/modules/views/lib/Drupal/views/ViewStorageController.php
Overrides Drupal\config\ConfigStorageController::create().

File

drupal/core/modules/views/lib/Drupal/views/ViewStorageController.php, line 83
Definition of Drupal\views\ViewStorageController.

Class

ViewStorageController
Defines the storage controller class for View entities.

Namespace

Drupal\views

Code

protected function mergeDefaultDisplaysOptions(EntityInterface $entity) {
  $displays = array();
  foreach ($entity
    ->get('display') as $key => $options) {
    $options += array(
      'display_options' => array(),
      'display_plugin' => NULL,
      'id' => NULL,
      'display_title' => '',
      'position' => NULL,
    );

    // Add the defaults for the display.
    $displays[$key] = $options;
  }

  // Sort the displays.
  uasort($displays, function ($display1, $display2) {
    if ($display1['position'] != $display2['position']) {
      return $display1['position'] < $display2['position'] ? -1 : 1;
    }
    return 0;
  });
  $entity
    ->set('display', $displays);
}