/** * Отображение организационной структуры. * * Параметры вызова: * array( * 'items' => CArrayList, * 'itemTemplate' => '_item.html.php' * ) * * CArrayList должен содержать объекты типа CPerson * * @static * @param array $arr */ public static function display(array $arr = null) { $r = new CArrayList(); foreach ($arr['items']->getItems() as $i) { if ($i->getSubordinators()->getCount() > 0 && $i->getManagerId() == 0) { $r->add($r->getCount(), $i); } } CUnorderedListWidget::display(array('items' => $r, 'itemTemplate' => '_orgStructureItem.html.php', 'id' => $arr['id'], 'style' => $arr['style'])); }
<li id="orgid_<?php echo $item->getId(); ?> "> <?php if (!is_null($item->getRole())) { echo "<b>" . $item->getName() . "</b>, " . $item->getRole()->getValue(); } else { echo "<b>" . $item->getName() . "</b>"; } if ($item->getSubordinators()->getCount() > 0) { CUnorderedListWidget::display(array('items' => $item->getSubordinators(), 'itemTemplate' => "_orgStructureItem.html.php")); } ?> </li>