/** * Builds tabs and subtabs using given $tabs, $config and $command * parameters. * @param ilTabsGUI $tabs * @param array $config * @param array $command */ private function buildTabs(ilTabsGUI $tabs, $config, $command) { /** * @var $rbacsystem ilRbacSystem */ global $rbacsystem; require_once 'Modules/Chatroom/classes/class.ilChatroom.php'; foreach ($config as $id => $tabDefinition) { if (!ilChatroom::checkUserPermissions($tabDefinition['permission'], $this->gui->getRefId(), false)) { continue; } else { if (isset($tabDefinition['enabled']) && !$tabDefinition['enabled']) { continue; } } $tabs->addTab($id, $this->getLabel($tabDefinition, $id), $tabDefinition['link']); if ($command[0] == $id && isset($tabDefinition['subtabs']) && is_array($tabDefinition['subtabs'])) { foreach ($tabDefinition['subtabs'] as $subid => $subTabDefinition) { if (!$rbacsystem->checkAccess($subTabDefinition['permission'], $this->gui->getRefId())) { continue; } else { if (isset($subTabDefinition['enabled']) && !$subTabDefinition['enabled']) { continue; } } $tabs->addSubTab($subid, $this->getLabel($subTabDefinition, $subid), $subTabDefinition['link']); } } } }