function workflow_admin_ui_edit_form_submit in Workflow 7.2
Same name and namespace in other branches
- 6.2 workflow_admin_ui/workflow_admin_ui.module \workflow_admin_ui_edit_form_submit()
- 6 workflow_admin_ui/workflow_admin_ui.module \workflow_admin_ui_edit_form_submit()
- 7 workflow_admin_ui/workflow_admin_ui.pages.inc \workflow_admin_ui_edit_form_submit()
Submit handler for the workflow editing form.
@todo: this is only valid for Node API, not for Field API. Field API has 'Field settings'.
See also
workflow_edit_form()
1 string reference to 'workflow_admin_ui_edit_form_submit'
- workflow_admin_ui_edit_form in workflow_admin_ui/
workflow_admin_ui.page.workflow.inc - Menu callback. Edit a workflow's properties.
File
- workflow_admin_ui/
workflow_admin_ui.page.workflow.inc, line 239 - Provides an Admin UI page for the Workflow Properties.
Code
function workflow_admin_ui_edit_form_submit($form, &$form_state) {
$workflow = $form_state['values']['workflow'];
$insert = !empty($workflow->is_new);
$workflow->name = trim($form_state['values']['name']);
$workflow->label = trim($form_state['values']['label']);
// For workflow_field, all is in the field settings.
// All other settings are only for workflow_node.
if (module_exists('workflownode')) {
$workflow->tab_roles = array_filter($form_state['values']['tab_roles']);
$workflow->options = array(
'name_as_title' => $form_state['values']['name_as_title'],
'fieldset' => $form_state['values']['fieldset'],
'options' => $form_state['values']['options'],
'schedule' => $form_state['values']['schedule'],
'schedule_timezone' => $form_state['values']['schedule_timezone'],
'comment_log_node' => $form_state['values']['comment_log_node'],
'comment_log_tab' => $form_state['values']['comment_log_tab'],
'watchdog_log' => $form_state['values']['watchdog_log'],
'history_tab_show' => $form_state['values']['history_tab_show'],
);
}
$workflow
->save();
if ($insert) {
$args = array(
'%name' => $workflow
->getName(),
'@url' => url(WORKFLOW_ADMIN_UI_PATH . "/edit/{$workflow->wid}"),
);
watchdog('workflow', 'Created workflow %name', $args);
drupal_set_message(t('The workflow %name was created. Please maintain the states and transitions.', $args), 'status');
}
else {
drupal_set_message(t('The workflow was updated.'));
}
// This redirect is needed, when changing the workflow name, with name in URL.
// Also for cloning a workflow.
$form_state['redirect'] = WORKFLOW_ADMIN_UI_PATH . "/manage/{$workflow->wid}";
}