You are here

class BootstrapLayoutsUpdate8401 in Bootstrap Layouts 8.4

Same name and namespace in other branches
  1. 8.5 src/Plugin/BootstrapLayouts/Updates/BootstrapLayoutsUpdate8401.php \Drupal\bootstrap_layouts\Plugin\BootstrapLayouts\Updates\BootstrapLayoutsUpdate8401

Bootstrap Layouts Update 8401

Upgrade existing Bootstrap Layout instances.

Plugin annotation


@BootstrapLayoutsUpdate(
  id = "bootstrap_layouts_update_8401",
  schema = 8401
)

Hierarchy

Expanded class hierarchy of BootstrapLayoutsUpdate8401

File

src/Plugin/BootstrapLayouts/Updates/BootstrapLayoutsUpdate8401.php, line 18

Namespace

Drupal\bootstrap_layouts\Plugin\BootstrapLayouts\Updates
View source
class BootstrapLayoutsUpdate8401 extends BootstrapLayoutsUpdateBase {

  /**
   * {@inheritdoc}
   */
  public function processExistingLayout(BootstrapLayout $layout, array $data = [], $display_messages = TRUE) {

    // Fix any typos and replace hyphens with underscores.
    $id = preg_replace('/\\-+/', '_', preg_replace('/^booststrap/', 'bootstrap', $layout
      ->getId()));

    // Immediately return if existing layout identifier doesn't match
    // one of the old "bootstrap_layouts" layouts.
    if (!isset($data['bootstrap_layouts_update_map'][$id])) {
      return;
    }
    $layout_map = $data['bootstrap_layouts_update_map'][$id];

    // Set the new layout identifier.
    $layout
      ->setId($layout_map['id']);

    // Only update the path if it's actually set.
    $path = $layout
      ->getPath();
    if (isset($path)) {
      $layout
        ->setPath($this
        ->getPath() . '/templates/3.0.0');
    }

    // Set default layout wrapper, attributes and classes.
    $layout
      ->setSetting('layout.wrapper', 'div');
    $layout
      ->setSetting('layout.classes', [
      'row',
      'clearfix',
    ]);
    $layout
      ->setSetting('layout.attributes', '');

    // Rename existing region and set region wrapper, attributes and classes.
    foreach ($layout_map['regions'] as $old_region => $new_region) {
      if ($old_region !== $new_region && ($region_data = $layout
        ->getRegion($old_region))) {
        $layout
          ->setRegion($new_region, $region_data);
        $layout
          ->unsetRegion($old_region);
      }
      $layout
        ->setSetting("regions.{$new_region}.wrapper", 'div');
      $layout
        ->setSetting("regions.{$new_region}.classes", $layout_map['classes'][$new_region]);
      $layout
        ->setSetting("regions.{$new_region}.attributes", '');
    }
  }

}

Members

Namesort descending Modifiers Type Description Overrides
BootstrapLayoutsUpdate8401::processExistingLayout public function Provide an update for an existing layout. Overrides BootstrapLayoutsUpdateBase::processExistingLayout
BootstrapLayoutsUpdateBase::$path protected property The path to the provider.
BootstrapLayoutsUpdateBase::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create
BootstrapLayoutsUpdateBase::getPath public function Retrieves the path to plugin provider. Overrides BootstrapLayoutsUpdateInterface::getPath
BootstrapLayoutsUpdateBase::update public function Provide an update. Overrides BootstrapLayoutsUpdateInterface::update
BootstrapLayoutsUpdateBase::__construct public function Constructs a \Drupal\Component\Plugin\PluginBase object. Overrides PluginBase::__construct
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.