Commit 597eb0aa authored by Johnny Leveneur's avatar Johnny Leveneur
Browse files

ajout du fichier pdf billets sur la page des inscription en cours et dans le...

ajout du fichier pdf billets sur la page des inscription en cours et dans le mail de confirmation sur LP
parent 438acce5
Loading
Loading
Loading
Loading
+11 −1
Original line number Diff line number Diff line
@@ -125,7 +125,7 @@ return [
                [
                    'controller' => InscriptionController::class,
                    'action' => [
                        'desinscription',
                        'desinscription','genererBillets'
                    ],
                    'privileges' => [
                        EvenementielinscriptionPrivileges::ANNULER,
@@ -313,6 +313,16 @@ return [
                                    ],
                                ],
                            ],
                            'generer-billets' => [
                                'type' => Segment::class,
                                'options' => [
                                    'route' => '/generer-billets/:entity',
                                    'defaults' => [
                                        /** @see InscriptionController::genererBilletsAction() */
                                        'action' => 'genererBillets',
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
+24 −3
Original line number Diff line number Diff line
@@ -4,21 +4,23 @@ namespace Evenementiel\Controller;

use Etudiant\Service\Etudiant\EtudiantServiceAwareTrait;
use Evenementiel\Entity\Db\Inscription;
use Evenementiel\Entity\Db\InscriptionPlace;
use Evenementiel\Provider\Etat\EvenementEtats;
use Evenementiel\Provider\Etat\InscriptionEtats;
use Evenementiel\Provider\Template\TemplatesMail;
use Evenementiel\Service\Evenement\EvenementServiceAwareTrait;
use Evenementiel\Service\Notification\NotificationServiceAwareTrait;
use Evenementiel\Service\Participant\ParticipantServiceAwareTrait;
use Laminas\Http\Request;
use Laminas\Mvc\Controller\AbstractActionController;
use Laminas\Mvc\Plugin\FlashMessenger\FlashMessenger;
use Laminas\View\Model\ViewModel;
use Evenementiel\Form\Inscription\InscriptionParticipantFormAwareTrait;
use Evenementiel\Service\Inscription\InscriptionServiceAwareTrait;
use Laminas\Http\Response;
use Laminas\View\Renderer\PhpRenderer;
use Mpdf\MpdfException;
use UnicaenEtat\Service\EtatInstance\EtatInstanceServiceAwareTrait;
use UnicaenEtat\Service\EtatType\EtatTypeServiceAwareTrait;
use UnicaenPdf\Exporter\PdfExporter;
use UnicaenRenderer\Service\Rendu\RenduServiceAwareTrait;
use UnicaenUtilisateur\Service\User\UserServiceAwareTrait;

/** @method FlashMessenger flashMessenger() */
@@ -32,6 +34,8 @@ class InscriptionController extends AbstractActionController
    use UserServiceAwareTrait;
    use EvenementServiceAwareTrait;
    use NotificationServiceAwareTrait;
    use RenduServiceAwareTrait;


    /**
     * Afficher la liste des entités
@@ -397,6 +401,23 @@ class InscriptionController extends AbstractActionController
        return $vm;
    }

    /**
     * @throws MpdfException
     */
    public function genererBilletsAction(): ?string
    {
        $inscription = $this->getInscriptionService()->getRequestedEntity($this);

        // Nom unique + extension .png
        $prefix = 'billets_';
        $sanitizedPrefix = $prefix !== null ? preg_replace('/[^a-zA-Z0-9_\-]/', '_', $prefix) : 'qr_';
        $sanitizedPrenomNom = preg_replace('/[^a-zA-Z0-9_\-]/', '_', $inscription->getParticipantDenomination()) ;

        $filename  = $sanitizedPrefix . $sanitizedPrenomNom . '_evenement_' . $inscription->getEvenement()->getId() . '.pdf' ;

        return $this->getNotificationService()->buildBilletsPdf($inscription, $filename, PdfExporter::DESTINATION_BROWSER_FORCE_DL );
    }

    /** GESTION PAR LES PARTICIPANT·ES ***********************************************************************************/
    public function autoInscriptionAction(): ViewModel
    {
+12 −0
Original line number Diff line number Diff line
<?php

namespace Evenementiel\Provider\Parametre;

class EtablissementParametres {

    const TYPE = 'ETABLISSEMENT';

    const LOGO = 'LOGO';
    const LIBELLE = 'LIBELLE';
    const SOUSLIBELLE = 'SOUSLIBELLE';
}
 No newline at end of file
+1 −2
Original line number Diff line number Diff line
@@ -2,7 +2,7 @@

namespace Evenementiel\Provider\Template;

class MailTemplates {
class TemplatesMail {

    const EVENEMENT_INSCRIPTION_DEMANDE = "EVENEMENT_INSCRIPTION_DEMANDE";
    const EVENEMENT_LISTE_PRINCIPALE = 'EVENEMENT_LISTE_PRINCIPALE';
@@ -12,5 +12,4 @@ class MailTemplates {

    const EVENEMENT_INSCRIPTION_VALIDER = "EVENEMENT_INSCRIPTION_VALIDER";
    const EVENEMENT_INSCRIPTION_REFUSER = "EVENEMENT_INSCRIPTION_REFUSER";

}
 No newline at end of file
+8 −0
Original line number Diff line number Diff line
<?php

namespace Evenementiel\Provider\Template;

class TemplatesPdf
{
    const EVENEMENT_BILLETS = 'EVENEMENT_BILLETS';
}
 No newline at end of file
Loading