From ff254355e7b674726b07eb0cae158eb2dc21a973 Mon Sep 17 00:00:00 2001 From: Sam Minnee Date: Thu, 9 Jul 2009 05:55:34 +0000 Subject: [PATCH] BUGFIX Fixed Hierarchy->markChildren() to only mark nodes as unexpanded if they actually have children. This avoids UI glitches with "plus"-icons beside unexpandable nodes, and prevents batch actions and TreeNode->open() to trigger ajaxExpansion on nodes without children (from r78339) git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@81467 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- core/model/Hierarchy.php | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/core/model/Hierarchy.php b/core/model/Hierarchy.php index 6ad96f943..e12a3b39d 100644 --- a/core/model/Hierarchy.php +++ b/core/model/Hierarchy.php @@ -159,7 +159,11 @@ class Hierarchy extends DataObjectDecorator { if($children) { foreach($children as $child) { if(!$this->markingFilter || $this->markingFilterMatches($child)) { - $child->markUnexpanded(); + if($child->numChildren()) { + $child->markUnexpanded(); + } else { + $child->markExpanded(); + } $this->markedNodes[$child->ID] = $child; } }