public function setStatus($model, Status $status = null)
 {
     echo 'setStatus model <br/>';
     $this->_status = $status != null ? $status->getId() : null;
 }
 /**
  * Produces the following sequence when a model leaves a workflow :
  *
  * - beforeLeaveStatus(statusID)
  * - beforeLeaveWorkflow(workflowID)
  *
  * - afterLeaveStatus(statusID)
  * - afterLeaveWorkflow(workflowID)
  * @param Status $finalStatus
  * @param Object $sender
  *
  * @see \fproject\workflow\events\IEventSequenceScheme::createLeaveWorkflowSequence()
  *
  * @return array|\yii\base\Event[]
  */
 public function createLeaveWorkflowSequence($finalStatus, $sender)
 {
     return ['before' => [new WorkflowEvent(WorkflowEvent::beforeLeaveStatus($finalStatus->getId()), ['start' => $finalStatus, 'sender' => $sender]), new WorkflowEvent(WorkflowEvent::beforeLeaveWorkflow($finalStatus->getWorkflowId()), ['start' => $finalStatus, 'sender' => $sender])], 'after' => [new WorkflowEvent(WorkflowEvent::afterLeaveStatus($finalStatus->getId()), ['start' => $finalStatus, 'sender' => $sender]), new WorkflowEvent(WorkflowEvent::afterLeaveWorkflow($finalStatus->getWorkflowId()), ['start' => $finalStatus, 'sender' => $sender])]];
 }