public function guardarActionSubirArchivos($entity, $editForm) { parent::guardarActionSubirArchivos($entity, $editForm); $Archivos = $editForm->get('Adjuntos')->getData(); print_r($Archivos); if (count($Archivos) == 1) { $Archivos = $Archivos[0]; } if ($Archivos && count($Archivos) > 0) { $NombresAdjuntados = array(); foreach ($Archivos as $Archivo) { if ($Archivo) { $Adjunto = new \Yacare\BaseBundle\Entity\Adjunto($entity, $Archivo); $Adjunto->setPersona($this->get('security.token_storage')->getToken()->getUser()); $entity->getAdjuntos()->add($Adjunto); $NombresAdjuntados[] = '"' . (string) $Adjunto . '"'; } } if (count($NombresAdjuntados) == 1) { $this->get('session')->getFlashBag()->add('success', 'Se adjuntó el archivo ' . implode(',', $NombresAdjuntados) . '.'); } elseif (count($NombresAdjuntados) > 1) { $this->get('session')->getFlashBag()->add('success', 'Se adjuntaron los archivos ' . implode(',', $NombresAdjuntados) . '.'); } } }
/** * Subir adjuntos. * * @Route("subir/{tipo}/") * @Template() */ public function subirAction(Request $request, $tipo) { $em = $this->getEm(); $id = $this->ObtenerVariable($request, 'id'); $Archivos = $request->files; // $Archivo es una instancia de Symfony\Component\HttpFoundation\File\UploadedFile $AdjuntoNuevo = null; foreach ($Archivos as $Archivo) { $AdjuntoNuevo = new \Yacare\BaseBundle\Entity\Adjunto($Archivo, $tipo, $id); if ($this->container->get('security.token_storage')->getToken()) { // Lo asocio al usuario conectado, si hay uno $AdjuntoNuevo->setPersona($this->container->get('security.token_storage')->getToken()->getUser()); } $em->persist($AdjuntoNuevo); $em->flush(); } if ($AdjuntoNuevo) { return new JsonResponse(array('adjunto' => array('id' => $AdjuntoNuevo->getId(), 'token' => $AdjuntoNuevo->getToken()))); } else { return new JsonResponse(array('error' => 'Error')); } // return $this->ArrastrarVariables($request, array('tipo' => $tipo, 'id' => $id)); // return $this->redirectToRoute($this->obtenerRutaBase('listar'), // $this->ArrastrarVariables($request, array('tipo' => $tipo, 'id' => $id), false)); }