BUGFIX Fixed Group::collateFamilyIDs() when working with MSSQL (from r91775)

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@92455 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
Ingo Schommer 2009-11-21 01:42:27 +00:00
parent 96431c3aa2
commit a21927e462

View File

@ -262,18 +262,19 @@ class Group extends DataObject {
$chunkToAdd = array(array("ID" => $this->ID));
while($chunkToAdd) {
$idList = null;
$idList = array();
foreach($chunkToAdd as $item) {
$idList[] = $item['ID'];
$familyIDs[] = $item['ID'];
}
$idList = implode(',',$idList);
$idList = implode(',', $idList);
// Get the children of *all* the groups identified in the previous chunk.
// This minimises the number of SQL queries necessary
$sql = $this->extendedSQL("\"ParentID\" IN ($idList)", "");
$chunkToAdd = $sql->execute();
if(!$chunkToAdd->column()) $chunkToAdd = null;
$dbResult = $sql->execute();
$chunkToAdd = array();
foreach($dbResult as $item) $chunkToAdd[] = $item;
}
return $familyIDs;