function SectionListTrait::insertSection

Same name and namespace in other branches
  1. 9 core/modules/layout_builder/src/SectionListTrait.php \Drupal\layout_builder\SectionListTrait::insertSection()
  2. 10 core/modules/layout_builder/src/SectionListTrait.php \Drupal\layout_builder\SectionListTrait::insertSection()

File

core/modules/layout_builder/src/SectionListTrait.php, line 77

Class

SectionListTrait
Provides a trait for maintaining a list of sections.

Namespace

Drupal\layout_builder

Code

public function insertSection($delta, Section $section) {
    // Clear the section list if there is currently a blank section.
    if ($this->hasBlankSection()) {
        $this->removeAllSections();
    }
    if ($this->hasSection($delta)) {
        // @todo Use https://www.drupal.org/node/66183 once resolved.
        $start = array_slice($this->getSections(), 0, $delta);
        $end = array_slice($this->getSections(), $delta);
        $this->setSections(array_merge($start, [
            $section,
        ], $end));
    }
    else {
        $this->appendSection($section);
    }
    return $this;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.