public function createListeAction(Request $request) { $filieres = array('1' => 'GI', '2' => 'GTR', '3' => 'GEII', '4' => 'GE', '5' => 'GINDUS', '6' => 'GC', '7' => 'STPI'); $niveaux = array('1' => '1ère année', '2' => '2ème année', '3' => '3ème année'); $form = $this->createFormBuilder()->add('filiere', 'choice', array('choices' => $filieres, 'attr' => array('class' => 'form-control', 'style' => 'background-color:rgb(250, 255, 189);color:black;font-size:15px; ')))->add('niveau', 'choice', array('choices' => $niveaux, 'attr' => array('class' => 'form-control', 'style' => 'background-color:rgb(250, 255, 189);color:black;font-size:15px; ')))->add('submit', 'submit', array('attr' => array('class' => 'btn btn-success', 'style' => 'font-size:17px ')))->getForm(); if ($request->isMethod('POST')) { $form->handleRequest($request); if ($form->isValid()) { /*$listeEtudiants = $this->getDoctrine()->getRepository("PFAEnsaoboxBundle:User")->findBy(array('filiere_id' => $form['filiere']->getData(), 'niveau' => $form['niveau']->getData()));*/ $repository = $this->getDoctrine()->getRepository("PFAEnsaoboxBundle:User"); $query = $repository->createQueryBuilder('x')->where('x.filieres = :filiere')->setParameter('filiere', $form['filiere']->getData())->andWhere('x.classes = :classe')->setParameter('classe', $form['niveau']->getData())->getQuery(); $listeEtudiants = $query->getResult(); // $html = $this->container->get('templating')->render('PFAEnsaoboxBundle:admin:liste.html.twig', array("liste" => $listeEtudiants)); $html2pdf = new \Html2Pdf_Html2Pdf('P', 'A4', 'fr'); $html2pdf->pdf->SetAuthor('EnsaoBox'); // $html2pdf->pdf->SetTitle('Liste Etudiants '.$form['filiere']->getName().'niveau'.$form['niveau']->getName()); $html2pdf->pdf->SetSubject('Liste etudiants avec photos'); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->writeHTML($html); $html2pdf->Output("liste_etudiants.pdf"); // $html2pdf->Output('Liste_Etudiants_'.$form['filiere']->getName().'_Niveau_'.$form['niveau']->getName().'.pdf'); return $html2pdf; // $response = new Response(); // $response->headers->set('Content-type' , 'application/pdf'); // return $response; } } return $this->render('PFAEnsaoboxBundle:admin:createListe.html.twig', array('form' => $form->createView(), 'error' => '')); }
public function invoice($invoice) { $html = $this->container->get('templating')->render('TicmeFrontBundle:Order:invoicePDF.html.twig', array('invoice' => $invoice)); $html2pdf = new \Html2Pdf_Html2Pdf('P', 'A4', 'fr'); $html2pdf->pdf->SetAuthor('Ticme'); $html2pdf->pdf->SetTitle('Facture ' . $invoice->getReference()); $html2pdf->pdf->SetSubject('Facture Ticme'); $html2pdf->pdf->SetKeywords('facture,ticme'); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->writeHTML($html); return $html2pdf; }
public function facture($facture) { $html = $this->container->get('templating')->render('UtilisateursBundle:Default:layout/facturePDF.html.twig', array('facture' => $facture)); $html2pdf = new \Html2Pdf_Html2Pdf('P', 'A4', 'fr'); $html2pdf->pdf->SetAuthor('Business Management Software'); $html2pdf->pdf->SetTitle('Facture ' . $facture->getReference()); $html2pdf->pdf->SetSubject('Facture Business Management Software'); $html2pdf->pdf->SetKeywords('facture,Business Management Software'); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->writeHTML($html); return $html2pdf; }
public function facture($facture) { $html = $this->container->get('templating')->render('UtilisateursBundle:Default:layout/facturePDF.html.twig', array('facture' => $facture)); $html2pdf = new \Html2Pdf_Html2Pdf('P', 'A4', 'fr'); $html2pdf->pdf->SetAuthor('NVDXAVIER'); $html2pdf->pdf->SetTitle('Facture ' . $facture->getReference()); $html2pdf->pdf->SetSubject('Facture NVDXAVIER'); $html2pdf->pdf->SetKeywords('facture,NVDXAVIER'); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->writeHTML($html); $html2pdf->Output('Facture.pdf'); $response = new Response(); $response->headers->set('Content-type', 'application/pdf'); return $response; }
public function facturePDFAction($id) { $em = $this->getDoctrine()->getManager(); $facture = $em->getRepository('EcommerceSiteBundle:Commandes')->findOneBy(array('utilisateur' => $this->getUser(), 'valider' => 1, 'id' => $id)); if (!$facture) { $this->get('session')->getFlashBag()->add('error', 'La facture n\'existe pas (ou autre erreur)'); return $this->redirectToRoute('utilisateurs_factures'); } $html = $this->renderView('@Utilisateurs/Utilisateurs/Layout/facturePDF.html.twig', array('facture' => $facture)); $html2pdf = new \Html2Pdf_Html2Pdf('P', 'A4', 'fr'); $html2pdf->pdf->SetAuthor('Bajunk'); $html2pdf->pdf->SetTitle('Facture ' . $facture->getReference()); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->writeHTML($html); $html2pdf->Output('Facture.pdf'); $response = new Response(); $response->headers->set('Content-type', 'application/pdf'); return $response; }
public function testAction($name) { //on stocke la vue à convertir en PDF, en n'oubliant pas les paramètres twig si la vue comporte des données dynamiques $html = $this->renderView('SdzATIBundle:ati:pdf.html.twig', array('name' => $name)); //on instancie la classe Html2Pdf_Html2Pdf en lui passant en paramètre //le sens de la page "portrait" => p ou "paysage" => l //le format A4,A5... //la langue du document fr,en,it... $html2pdf = new \Html2Pdf_Html2Pdf('P', 'A4', 'fr'); //SetDisplayMode définit la manière dont le document PDF va être affiché par l’utilisateur //fullpage : affiche la page entière sur l'écran //fullwidth : utilise la largeur maximum de la fenêtre //real : utilise la taille réelle $html2pdf->pdf->SetDisplayMode('real'); //writeHTML va tout simplement prendre la vue stocker dans la variable $html pour la convertir en format PDF $html2pdf->writeHTML($html); //Output envoit le document PDF au navigateur internet avec un nom spécifique qui aura un rapport avec le contenu à convertir (exemple : Facture, Règlement…) $html2pdf->Output('Facture.pdf'); return new Response(); }
public function pdflisterAction() { // on récupère l'entity manager $em = $this->getDoctrine()->getManager($this->emname); // on récupère tout le contenu de la table $repository = $em->getRepository($this->repositoryPath); // on récupère le contenu de la table $entities = $repository->findAll(); // si la table est vide if ($entities == NULL) { return $this->render('SYM16SimpleStockBundle:Common:nolist.html.twig'); } // nombre total de lignes dans la table $totalusers = $repository->getNbItems(); //on place tous les paramètres à lister dans un tableau $alister = array('listcolnames' => $this->listColnames, 'entities' => $entities, 'path' => $this->modsupr, 'totalusers' => $totalusers, 'listname' => $this->listname); // récupération du service et de la prestation "lister_tout" $service = $this->container->get('sym16_simple_stock.lister_tout')->listerEntite($alister, 'pdf'); //lister $html = $this->render($service['listtwig'], $service['tab']); //on instancie la classe Html2Pdf_Html2Pdf en lui passant en paramètre //le sens de la page "portrait" => p ou "paysage" => l //le format A4,A5... //la langue du document fr,en,it... $html2pdf = new \Html2Pdf_Html2Pdf('L', 'A4', 'fr'); //SetDisplayMode définit la manière dont le document PDF va être affiché par l’utilisateur //fullpage : affiche la page entière sur l'écran //fullwidth : utilise la largeur maximum de la fenêtre //real : utilise la taille réelle $html2pdf->pdf->SetDisplayMode('real'); //writeHTML va tout simplement prendre la vue stocker dans la variable $html pour la convertir en format PDF $html2pdf->writeHTML($html); //Output envoit le document PDF au navigateur internet avec un nom spécifique //qui aura un rapport avec le contenu à convertir (exemple : Facture, Règlement…) $html2pdf->Output($this->wd_remove_accents($this->listname . '.pdf'), 'D'); return new Response(); }
print_r($json); echo "</pre>"; */ $compteLigne = isset($json->compteLigue) && !empty($json->compteLigue) ? $json->compteLigue : false; $lignes = isset($json->lignes) && !empty($json->lignes) ? $json->lignes : false; if ($compteLigne == false) { $html = "<h3 style='color:red'>ERREUR : Enregistrement impossible car il manque le Compte Ligue</h3>"; } else { if ($lignes == false) { $html = "<h3 style='color:red'>ERREUR : Enregistrement impossible car il manque les Prestations</h3>"; } else { ob_start(); $content = ob_get_clean(); require 'html2pdf/html2pdf.class.php'; try { $html2pdf = new Html2Pdf_Html2Pdf('P', 'A4', 'fr'); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->WriteHTML($content); $result = $html2pdf->Output("tests.pdf", true); $response = new Response(); $response->setContent($result); $response->headers->set('Content-Type', 'application/force-download'); $response->headers->set('Content-disposition', 'filename=test.pdf'); $html = $response; } catch (HTML2PDF_exception $e) { die($e); } /*Pour débogage echo "<pre>"; print_r($json); echo "</pre>";*/
/** * Impression d'une commande * @param $cdeid * @return Response * @throws \HTML2PDF_exception */ public function printAction($cdeid) { ob_start(); $em = $this->getDoctrine()->getManager(); $entity = $em->getRepository('PgiCommandeBundle:Cde')->find($cdeid); echo $this->renderView('PgiCommandeBundle:Cde:print.html.twig', array('entity' => $entity)); $html = ob_get_clean(); //var_dump($html); die(); $html2pdf = new \Html2Pdf_Html2Pdf('L', 'A3', 'fr', false, 'UTF-8', 40); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->writeHTML($html); $view = $html2pdf->Output('liste_commande.pdf'); /*$html2pdf->pdf->Output('/CommandeWeb/Facture.pdf',"F"); $session = $this->get('session'); $session->getFlashBag()->add('info', 'La commande est générée'); return $this->redirect($this->generateUrl('commande_listContainer', array('cdeid' => $cdeid)));*/ //return new Response('Facturer généré'); return new Response($view, 200, array('Content-Type' => 'application/pdf')); }
public function envoierMailAction() { //enregistrer commande $req = $this->getRequest(); $session = $this->getRequest()->getSession(); $em = $this->getDoctrine()->getManager(); $vente = new Vente(); $vente->setDateVente(new \DateTime()); $vente->setUtilisateur($this->container->get('security.context')->getToken()->getUser()); $em->persist($vente); $em->flush(); foreach ($session->get('panier') as $i => $value) { $dtlvt[$i] = new DetailVente(); $dtlvt[$i]->setVente($vente); $dtlvt[$i]->setProduit($em->getRepository('EcommerceBundle:Produit')->findOneById(array('id' => $i))); $dtlvt[$i]->setQtevendue($value); $em->persist($dtlvt[$i]); } $em->flush(); //pdf foreach ($session->get('panier') as $i => $value) { $prods[$i] = $em->getRepository('EcommerceBundle:Produit')->findOneById(array('id' => $i)); } $html = $this->renderView('VisiteurBundle:Formulaire:pdf.html.twig', array('prods' => $prods, 'qte' => $session->get('panier'))); $html2pdf = new \Html2Pdf_Html2Pdf('P', 'A4', 'fr'); $html2pdf->pdf->SetDisplayMode('real'); $html2pdf->writeHTML($html); $pdf = './pdf/' . $this->container->get('security.context')->getToken()->getUser() . time() . '.pdf'; $html2pdf->pdf->Output($pdf, "F"); //mail $message = \Swift_Message::newInstance()->setSubject('Validation achat')->setFrom(array('*****@*****.**' => 'iVarotra'))->setTo($this->container->get('security.context')->getToken()->getUser()->getEmail())->setCharset('utf-8')->setContentType('text/html')->setBody($this->renderView('VisiteurBundle:Formulaire:validationCommande.html.twig', array('total' => $req->query->get('ttl'))))->attach(\Swift_Attachment::fromPath($pdf)); $transport = \Swift_SmtpTransport::newInstance('smtp.gmail.com', 587, 'tls')->setUsername('*****@*****.**')->setPassword('heriniaina777'); $session->remove('panier'); $mailer = \Swift_Mailer::newInstance($transport); $mailer->send($message); $session->remove('panier'); $this->get('session')->getFlashBag()->add('notice', 'Votre commande a bien été enregistrée, vous allez recevoir un mail de confirmation!'); return $this->redirect($this->generateUrl('homepage')); }