Exemplo n.º 1
0
 /**
  * @Route("/contrat/{id}/pdf", name="contrat_pdf")
  * @ParamConverter("contrat", class="AppBundle:Contrat")
  */
 public function pdfAction(Request $request, Contrat $contrat)
 {
     $dm = $this->get('doctrine_mongodb')->getManager();
     $contrat->setMarkdown($this->renderView('contrat/contrat.markdown.twig', array('contrat' => $contrat)));
     $dm->persist($contrat);
     $dm->flush();
     $header = $this->renderView('contrat/pdf-header.html.twig', array('contrat' => $contrat));
     $footer = $this->renderView('contrat/pdf-footer.html.twig', array('contrat' => $contrat));
     $html = $this->renderView('contrat/pdf.html.twig', array('contrat' => $contrat));
     if ($request->get('output') == 'html') {
         return new Response($html, 200);
     }
     return new Response($this->get('knp_snappy.pdf')->getOutputFromHtml($html, array('footer-html' => $footer, 'header-html' => $header, 'margin-right' => 0, 'margin-left' => 0, 'margin-top' => 38, 'margin-bottom' => 38, 'page-size' => "A4")), 200, array('Content-Type' => 'application/pdf', 'Content-Disposition' => 'attachment; filename="contrat-' . $contrat->getNumeroArchive() . '.pdf"'));
 }