/**
  * Duplicate the transitions
  *
  * @param Array $values array of old and new values of the field
  * @param int   $workflow_id the workflow id
  * @param Array $transitions the transitions to duplicate
  * @param Array $field_mapping the field mapping
  * @param Array $ugroup_mapping the ugroup mapping
  * @param bool  $duplicate_static_perms true if duplicate static perms, false otherwise
  *
  * @return void
  */
 public function duplicate($values, $workflow_id, $transitions, $field_mapping, $ugroup_mapping, $duplicate_type)
 {
     if ($transitions != null) {
         foreach ($transitions as $transition) {
             if ($transition->getFieldValueFrom() == null) {
                 $from_id = 'null';
                 $to = $transition->getFieldValueTo()->getId();
                 foreach ($values as $value => $id_value) {
                     if ($value == $to) {
                         $to_id = $id_value;
                     }
                 }
             } else {
                 $from = $transition->getFieldValueFrom()->getId();
                 $to = $transition->getFieldValueTo()->getId();
                 foreach ($values as $value => $id_value) {
                     if ($value == $from) {
                         $from_id = $id_value;
                     }
                     if ($value == $to) {
                         $to_id = $id_value;
                     }
                 }
             }
             $new_transition_id = $this->addTransition($workflow_id, $from_id, $to_id);
             // Duplicate permissions
             $this->condition_factory->duplicate($transition, $new_transition_id, $field_mapping, $ugroup_mapping, $duplicate_type);
             // Duplicate postactions
             $tpaf = $this->getPostActionFactory();
             $tpaf->duplicate($transition, $new_transition_id, $field_mapping);
         }
     }
 }
 /**
  * Wrapper for Transition_PostActionFactory
  *
  * @return Transition_PostActionFactory
  */
 public function getConditionFactory()
 {
     return Workflow_Transition_ConditionFactory::build();
 }