| 1 |
<?php |
<?php |
| 2 |
// $Id$ |
// $Id: workflow_named_transitions.module,v 1.2.2.1 2009/04/14 13:34:23 deekayen Exp $ |
| 3 |
|
|
| 4 |
/** |
/** |
| 5 |
* @file |
* @file |
| 199 |
*/ |
*/ |
| 200 |
function workflow_named_transitions_form_alter(&$form, $form_state, $form_id) { |
function workflow_named_transitions_form_alter(&$form, $form_state, $form_id) { |
| 201 |
|
|
| 202 |
|
if (($form_id == 'workflow_tab_form' || $form['#id'] == 'node-form') && (isset($form['workflow']) && is_array($form['workflow']))) { |
|
if (isset($form['workflow']) && is_array($form['workflow'])) { |
|
| 203 |
// if no nid, use sysid == 1 from workflow_states for each wid |
// if no nid, use sysid == 1 from workflow_states for each wid |
| 204 |
// as the starting sid to lookup in workflow_transitions |
// as the starting sid to lookup in workflow_transitions |
| 205 |
$nid = empty($form['nid']['#value']) ? 0 : $form['nid']['#value']; |
if ($form_id == 'workflow_tab_form') { |
| 206 |
|
$nid = $form['node']['#value']->nid; |
| 207 |
|
} |
| 208 |
|
else { |
| 209 |
|
$nid = empty($form['nid']['#value']) ? 0 : $form['nid']['#value']; |
| 210 |
|
} |
| 211 |
// workflow ID, name of the workflow, and the creation state ID |
// workflow ID, name of the workflow, and the creation state ID |
| 212 |
if ($nid == 0) { |
if ($nid == 0) { |
| 213 |
$workflows_result = db_query("SELECT w.wid, w.name, ws.sid AS starting_sid FROM {workflows} AS w LEFT JOIN {workflow_states} AS ws ON w.wid = ws.wid WHERE ws.sysid = 1"); |
$workflows_result = db_query("SELECT w.wid, w.name, ws.sid AS starting_sid FROM {workflows} AS w LEFT JOIN {workflow_states} AS ws ON w.wid = ws.wid WHERE ws.sysid = 1"); |
| 233 |
} |
} |
| 234 |
} |
} |
| 235 |
} |
} |
| 236 |
|
|
| 237 |
|
/** |
| 238 |
|
* Find the creation state id for a workflow. |
| 239 |
|
*/ |
| 240 |
|
function _workflow_named_transitions_creation_sid($wid) { |
| 241 |
|
return db_result(db_query_range("SELECT sid FROM {workflow_states} WHERE wid = %d AND sysid = 1", $wid, 0, 1)); |
| 242 |
|
} |