function workflow_admin_ui_transitions_form_submit in Workflow 7.2
Same name and namespace in other branches
- 7 workflow_admin_ui/workflow_admin_ui.pages.inc \workflow_admin_ui_transitions_form_submit()
Submit handler for the workflow editing form.
See also
workflow_edit_form()
File
- workflow_admin_ui/
workflow_admin_ui.page.transitions.inc, line 187 - Provides an Admin UI page for the Workflow Transitions.
Code
function workflow_admin_ui_transitions_form_submit($form, &$form_state) {
$workflow = $form['workflow']['#value'];
$wid = $workflow->wid;
if (isset($form_state['values']['transitions'])) {
$transitions = $form_state['values']['transitions'];
// Empty string is sometimes passed in instead of an array.
if (!$transitions) {
return;
}
foreach ($transitions as $from => $to_data) {
foreach ($to_data as $to => $role_data) {
$roles = array();
foreach ($role_data as $role => $can_do) {
if ($can_do) {
$roles += array(
$role => $role,
);
}
}
if (count($roles)) {
$config_transition = $workflow
->createTransition($from, $to);
$config_transition->roles = $roles;
$config_transition
->save();
}
else {
foreach ($workflow
->getTransitionsBySidTargetSid($from, $to, 'ALL') as $config_transition) {
$config_transition
->delete();
}
}
}
}
}
drupal_set_message(t('The workflow was updated.'));
// $form_state['redirect'] = WORKFLOW_ADMIN_UI_PATH;
}