You are here

function _workflow_transitions_sort_by_weight in Workflow 7.2

Helper function to sort the transitions.

Parameters

WorkflowConfigTransition $a:

WorkflowConfigTransition $b:

Return value

int

1 string reference to '_workflow_transitions_sort_by_weight'
Workflow::sortTransitions in includes/Entity/Workflow.php
Sorts all Transitions for this workflow, according to State weight.

File

includes/Entity/Workflow.php, line 732
Contains workflow\includes\Entity\Workflow. Contains workflow\includes\Entity\WorkflowController.

Code

function _workflow_transitions_sort_by_weight($a, $b) {

  // First sort on From-State.
  $old_state_a = $a
    ->getOldState();
  $old_state_b = $b
    ->getOldState();
  if ($old_state_a->weight < $old_state_b->weight) {
    return -1;
  }
  if ($old_state_a->weight > $old_state_b->weight) {
    return +1;
  }

  // Then sort on To-State.
  $new_state_a = $a
    ->getNewState();
  $new_state_b = $b
    ->getNewState();
  if ($new_state_a->weight < $new_state_b->weight) {
    return -1;
  }
  if ($new_state_a->weight > $new_state_b->weight) {
    return +1;
  }
  return 0;
}