/**
  * Get forms and ccurrent entity
  *
  * @param $dossierId
  * @param $stepName
  * @param $disabled
  * @param null $page
  * @return array
  */
 public function getFormsAndEntity($dossierId, $stepName, $disabled, $page = null)
 {
     $em = $this->getDoctrine()->getManager();
     $dossier = $em->getRepository('BraemBackofficeBundle:Dossier')->find($dossierId);
     $worksheet = $dossier->getWorksheets()->last();
     $worksheetId = 0;
     if (!$worksheet) {
         $worksheet = new Worksheet();
         $worksheet->setDossier($dossier);
     }
     list($formType, $entityName) = $this->getWorksheetConfigs($stepName);
     $stepEntity = new $entityName();
     if ($worksheet->getId()) {
         $worksheetId = $worksheet->getId();
         $stepEntity = $em->getRepository($entityName)->findOneBy(array('worksheetId' => $worksheetId));
         if (!$stepEntity) {
             $stepEntity = new $entityName();
         }
     }
     if ($page == 'edit') {
         $form = $this->createForm(new WorksheetType(), $worksheet, array('disabled' => true));
     } else {
         $form = $this->createForm(new WorksheetType(), $worksheet, array('disabled' => $disabled));
     }
     $worksheetStepForm = $this->createForm($formType, $stepEntity, array('disabled' => $disabled));
     return array($worksheetId, $dossier, $form, $worksheetStepForm, $stepEntity, $worksheet);
 }