public static function getJSworkflowStruct($workflows = null) { if (is_null($workflows)) { $workflows = SearchHelper::getWorkflows(); } $workflow_str = '['; $wo = 0; foreach ($workflows as $workflow) { if ($wo++ > 0) { $workflow_str .= ','; } $wid = $workflow['id']; $name = searchfix($workflow['name']); $workflow_str .= "\n\t{id:\"{$wid}\", name: \"{$name}\", states: [ "; $result['workflows'][$wid] = $workflow; $states = SearchHelper::getWorkflowStates($wid); $result['workflows'][$wid]['states'] = array(); $so = 0; foreach ($states as $state) { if ($so++ > 0) { $workflow_str .= ','; } $sid = $state['id']; $name = searchfix($state['name']); $result['workflows'][$wid]['states'][$sid] = $state; $workflow_str .= "\n\t\t{id:\"{$wid}\", name: \"{$name}\"}"; } $workflow_str .= ']}'; } $workflow_str .= ']'; return $workflow_str; }