Skip to content
Snippets Groups Projects
Unverified Commit cbf7b552 authored by Alex Pott's avatar Alex Pott
Browse files

Issue #3219340 by lauriii, bnjmnm, mherchel: Vertical tabs with #parents are broken in Claro

parent caf09710
Branches
Tags
12 merge requests!7452Issue #1797438. HTML5 validation is preventing form submit and not fully...,!1896Issue #2940605: Can only intentionally re-render an entity with references 20 times,!10223132456: Fix issue where views instances are emptied before an ajax request is complete,!872Draft: Issue #3221319: Race condition when creating menu links and editing content deletes menu links,!579Issue #2230909: Simple decimals fail to pass validation,!560Move callback classRemove outside of the loop,!555Issue #3202493,!512Issue #3207771: Menu UI node type form documentation points to non-existent function,!485Sets the autocomplete attribute for username/password input field on login form.,!449Issue #2784233: Allow multiple vocabularies in the taxonomy filter,!231Issue #2671162: summary text wysiwyg patch working fine on 9.2.0-dev,!30Issue #3182188: Updates composer usage to point at ./vendor/bin/composer
......@@ -26,9 +26,9 @@ public function testVerticalTabs() {
$this->config('system.theme')->set('default', 'claro')->save();
$form = [
'#parents' => [],
'#parents' => ['parent'],
'#array_parents' => [],
'#tree' => FALSE,
'#tree' => TRUE,
];
$form['vertical_tabs'] = [
......@@ -38,7 +38,7 @@ public function testVerticalTabs() {
$form['vertical_tabs_details'] = [
'#type' => 'details',
'#title' => 'Details',
'#group' => 'vertical_tabs',
'#group' => 'parent][vertical_tabs',
];
// Needs to be rendered after the vertical tabs.
......@@ -61,9 +61,9 @@ public function testVerticalTabs() {
// Assert that the vertical tab details has the appropriate class.
$this->assertCount(1, $this->cssSelect('.vertical-tabs__items details.vertical-tabs__item'));
// Assert that there is a details element.
$this->assertCount(1, $this->cssSelect('#edit-container-details'));
$this->assertCount(1, $this->cssSelect('#edit-parent-container-details'));
// Assert that details element doesn't have the vertical tab classes.
$this->assertCount(0, $this->cssSelect('#edit-container-details.vertical-tabs__item'));
$this->assertCount(0, $this->cssSelect('#edit-parent-container-details.vertical-tabs__item'));
}
}
......@@ -77,13 +77,10 @@ public static function verticalTabs($element) {
$last_group_with_child_key = NULL;
$last_group_with_child_key_last_child_key = NULL;
// Only iterate through the parents instead of all the group keys.
foreach ($element['#parents'] as $group_key) {
// Check parents against groups because we are only looking for group
// elements.
if (!in_array($group_key, $group_keys)) {
continue;
}
$group_key = implode('][', $element['#parents']);
// Only check siblings against groups because we are only looking for
// group elements.
if (in_array($group_key, $group_keys)) {
$children_keys = Element::children($element['group']['#groups'][$group_key], TRUE);
foreach ($children_keys as $child_key) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment