From d839201092c121bf3d4e506d015b252e46b3c767 Mon Sep 17 00:00:00 2001 From: Josh Kosmala Date: Wed, 3 Dec 2008 02:41:25 +0000 Subject: [PATCH] BUGFIX: Filter on the baseclassid in Hierachy, not the class id, in case the class doesnt have a table (aoneil) git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.3@67268 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- core/model/Hierarchy.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/core/model/Hierarchy.php b/core/model/Hierarchy.php index 920cd4169..4e3366dab 100644 --- a/core/model/Hierarchy.php +++ b/core/model/Hierarchy.php @@ -510,9 +510,10 @@ class Hierarchy extends DataObjectDecorator { */ public function getParent($filter = '') { if($p = $this->owner->__get("ParentID")) { - $className = $this->owner->class; - $filter .= $filter?" AND ":""."`$className`.ID = $p"; - return DataObject::get_one($className, $filter); + $tableClasses = ClassInfo::dataClassesFor($this->owner->class); + $baseClass = array_shift($tableClasses); + $filter .= $filter?" AND ":""."`$baseClass`.ID = $p"; + return DataObject::get_one($this->owner->class, $filter); } }