static function fetchEventsByWorkflowID($id, $asObject = true, $version = 0) { return eZWorkflowEvent::fetchFilteredList(array("workflow_id" => $id, "version" => $version), $asObject); }
* * @todo allow filtering by extension * @todo add information: originating extension for each type */ $eventTypeList = eZWorkflowType::fetchRegisteredTypes(); ksort($eventTypeList); $workflows = array(); $extensions = eZModuleLister::getModuleList(); // ... if ($Params['extensionname'] != '' && !array_key_exists($Params['extensionname'], $extensions)) { /// @todo } else { foreach ($eventTypeList as $typeString => $type) { $workflows[$typeString] = array(); $filter = array('workflow_type_string' => $typeString); $events = eZWorkflowEvent::fetchFilteredList($filter); foreach ($events as $event) { $workflowId = $event->attribute('workflow_id'); if (isset($workflows[$typeString][$workflowId])) { $workflows[$typeString][$workflowId]['events'][] = $event; } else { $workflow = eZWorkflow::fetch($workflowId); $workflows[$typeString][$workflowId] = array('workflow' => $workflow, 'events' => array($event)); } $workflowEvents[$typeString][$event->attribute('id')] = $event; } } } $title = 'List of available workflow event types'; if ($Params['extensionname'] != '') { $title .= ' in extension "' . $Params['extensionname'] . '"';