<?php
namespace App\Controller;
use App\Form\UploadType;
use App\Service\Manager\PdfManager;
use App\Service\Manager\UploadManager;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class PdfController extends AbstractController
{
/** @var UploadManager $uploadManager */
protected UploadManager $uploadManager;
/** @var PdfManager $pdfManager */
protected PdfManager $pdfManager;
/**
* @param UploadManager $uploadManager
* @param PdfManager $pdfManager
*/
public function __construct(UploadManager $uploadManager, PdfManager $pdfManager)
{
$this->uploadManager = $uploadManager;
$this->pdfManager = $pdfManager;
}
#[Route('/', name: 'app_pdf')]
public function index(Request $request): Response
{
error_reporting(E_ERROR | E_PARSE);
$link = 'doc/background/toneofirst.pdf';
$form = $this->createForm(UploadType::class);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$file = $form->get('upload')->getData();
$password = $form->get('password')->getData();
$file = $this->uploadManager->set($file);
$template = $form->get('template')->getData();
$this->pdfManager->generate($file, $password, $template);
$link = 'doc/uploads/ticket.pdf';
}
return $this->render('home/index.html.twig', [
'form' => $form->createView(),
'link' => $link
]);
}
}