if ($Informationsystem_Controller_Show->item && $Informationsystem_Controller_Show->group)
{
// Текущая группа
$oInformationsystem_Group = Core_Entity::factory('Informationsystem_Group', $Informationsystem_Controller_Show->group);
// Родительская группа
$oParent_Informationsystem_Group = $oInformationsystem_Group->getParent();
// Родитель не корень
if ($oParent_Informationsystem_Group)
{
// Подгруппы родительской группы
$oSubgroups = $oParent_Informationsystem_Group->Informationsystem_Groups;
$oSubgroups->queryBuilder()
// Исключаем текущую группу
->where('id', '!=', $Informationsystem_Controller_Show->group)
// Сортируем случайно
->clearOrderBy()
->orderBy('RAND()')
// Две группы
->limit(2);
$aSubgroups = $oSubgroups->findAll(FALSE);
if (count($aSubgroups))
{
$oXmlSameGroups = Core::factory('Core_Xml_Entity')->name('sameGroups');
$Informationsystem_Controller_Show->addEntity($oXmlSameGroups);
foreach ($aSubgroups as $oSubgroup)
{
$oTmpGroup = clone $oSubgroup;
$oTmpGroup
->clearEntities()
->clearEntitiesAfterGetXml(FALSE)
->id($oSubgroup->id);
$oXmlSameGroups->addEntity($oTmpGroup);
}
}
}
}
Код вставляете в ТДС в самый конец перед
$Informationsystem_Controller_Show
->xsl(
Core_Entity::factory('Xsl')->getByName($xslName)
)
...
->show();
Группы будут в XML в узле /informationsystem/sameGroups