function modify(&$tpl, &$operatorName, &$operatorParameters, &$rootNamespace, &$currentNamespace, &$operatorValue, &$namedParameters) { switch ($operatorName) { case 'class_extra_parameters': $classIdentifier = $namedParameters['class_identifier']; $handler = $namedParameters['handler']; $class = eZContentClass::fetchByIdentifier($classIdentifier); if ($class instanceof eZContentClass) { $extraParametersManager = OCClassExtraParametersManager::instance($class); if (is_string($handler)) { $operatorValue = $extraParametersManager->getHandler($handler); } else { $operatorValue = $extraParametersManager->getHandlers(); } } break; } }
$categorys = $contentINI->variable('ClassAttributeSettings', 'CategoryList'); $defaultCategory = $contentINI->variable('ClassAttributeSettings', 'DefaultCategory'); foreach ($class->dataMap() as $classAttribute) { $attributeCategory = $classAttribute->attribute('category'); $attributeIdentifier = $classAttribute->attribute('identifier'); if (!isset($categorys[$attributeCategory]) || !$attributeCategory) { $attributeCategory = $defaultCategory; } if (!isset($groupedDataMap[$attributeCategory])) { $groupedDataMap[$attributeCategory] = array(); } $groupedDataMap[$attributeCategory][$attributeIdentifier] = $classAttribute; } return $groupedDataMap; } $tpl->setVariable('attributes_grouped', createGroupedDataMap($class)); $extraParametersManager = OCClassExtraParametersManager::instance($class); $handlers = OCClassExtraParametersManager::currentUserCanEditHandlers() ? $extraParametersManager->getHandlers() : array(); $tpl->setVariable('extra_handlers', $handlers); } } $Result = array(); $Result['content'] = $tpl->fetch('design:classtools/classes.tpl'); $Result['node_id'] = 0; $contentInfoArray = array('url_alias' => 'classtools/classes', 'class_identifier' => null); $contentInfoArray['persistent_variable'] = array('show_path' => true); $Result['content_info'] = $contentInfoArray; $Result['path'] = array(array('text' => 'Informazioni e utilità per le classi', 'url' => 'classtools/classes', 'node_id' => null)); if ($class instanceof eZContentClass) { $Result['path'][] = array('text' => $class->attribute('name'), 'url' => false, 'node_id' => null); }