Ejemplo n.º 1
0
 /**
  * Generate a reaseau params.
  *
  * @param Request $request        	
  * @param Reseau $reseau        	
  * @param Version $version        	
  * @return JsonResponse|\Symfony\Component\HttpFoundation\RedirectResponse
  */
 public function generateParamsAction(Request $request, Reseau $reseau, Version $version)
 {
     $paramService = $this->get("param_service");
     $version = $reseau->getVersions()->last();
     $form = $this->createForm('DocBundle\\Form\\VersionType', $version);
     $form->handleRequest($request);
     if ($form->isSubmitted() && $form->isValid()) {
         ini_set('max_execution_time', 0);
         $version->setUser($this->getUser()->getUsername());
         $reseauParamsDir = $this->container->getParameter('generation_dir') . '/' . $reseau->getCode();
         $em = $this->getDoctrine()->getManager();
         $parametrages = $em->getRepository('DocBundle:ArchiveParam')->getArchivesByVersion($version);
         $paramService->generateArchives($version, $parametrages, $reseauParamsDir);
         return $this->redirectToRoute('reseau_show_parametrage', ['id' => $reseau->getId()]);
     }
     return new JsonResponse(array('statut' => 'Vous devez passer par le formulaire de génération'));
 }
Ejemplo n.º 2
0
 /**
  * 
  * @param Request $request
  * @param Reseau $reseau
  * @return \Symfony\Component\HttpFoundation\Response
  * 
  * TODO: Check that files are successfully created
  */
 public function exportParamsAction(Request $request, Reseau $reseau)
 {
     $iterableResult = $reseau->getParametrages();
     $handle = fopen('php://memory', 'r+');
     $header = array('contrat', 'reseaux', 'collectivites', 'ordre', 'libelle', 'pdf', 'type', 'reference', 'pdf_source');
     fputcsv($handle, $header, ';');
     foreach ($iterableResult as $row) {
         fputcsv($handle, array($row->getContrat(), $reseau->getCode(), $row->getCollectivites(), $row->getOrdre(), $row->getLibelle(), $row->getLastPdfSource()->getTitle(), $row->getType(), $row->getReference(), $row->getLastPdfSource()->getTitle()), ';');
         rewind($handle);
         $content = stream_get_contents($handle);
     }
     fclose($handle);
     return new Response($content, 200, array('Content-Type' => 'application/force-download', 'Content-Disposition' => 'attachment; filename="export.csv"'));
 }