Commit 1bb6d0f1 authored by Stephane Bouvry's avatar Stephane Bouvry
Browse files

- Suppression de la SignatureException en doublons

 - Suppression de méthode inutilisées
 - Mise au propre du code
 - Retrait de log DEBUG
parent fa037f6b
Loading
Loading
Loading
Loading
+1 −10
Changes for config/merged/signature.config.php: 1 added line, 10 removed lines.
Original line number Diff line number Diff line
<?php

use Laminas\Router\Http\Literal;
use Laminas\Router\Http\Regex;
use Laminas\Router\Http\Segment;
@@ -11,8 +12,6 @@ use UnicaenSignature\Controller\ProcessController;
use UnicaenSignature\Controller\ProcessControllerFactory;
use UnicaenSignature\Controller\SignatureController;
use UnicaenSignature\Controller\SignatureControllerFactory;
use UnicaenSignature\Controller\SignatureTypeController;
use UnicaenSignature\Controller\SignatureTypeControllerFactory;
use UnicaenSignature\Provider\SignaturePrivileges;
use UnicaenSignature\Service\InternalLetterfileService;
use UnicaenSignature\Service\InternalLetterfileServiceFactory;
@@ -59,15 +58,12 @@ return [
                    'controller' => AdministrationController::class,
                    'action'     => [
                        'index',

                        'letterfile',

                        'simpleSignature',
                        'simpleSignatureDelete',
                        'simpleSignatureSend',
                        'simpleSignatureStatus',
                        'simpleSignatureNew',

                        'process',
                        'processConfig',
                        'processDelete',
@@ -75,11 +71,8 @@ return [
                        'processSend',
                        'processStatus',
                        'processTrigger',

                        'signatureflows',
                        'signatureflowsUi',


                    ],
                    'privileges' => [
                        SignaturePrivileges::SIGNATURE_INDEX,
@@ -276,7 +269,6 @@ return [
                            ],



                            ////////////////////////////////////////////////////////////////////////////////////////////
                            /// SIMPLE SIGNATURE
                            'simple-signature'        => [
@@ -531,7 +523,6 @@ return [
            AdministrationController::class     => AdministrationControllerFactory::class,
            InternalLetterfileController::class => InternalLetterfileControllerFactory::class,
            SignatureController::class          => SignatureControllerFactory::class,
            SignatureTypeController::class      => SignatureTypeControllerFactory::class,
            ProcessController::class            => ProcessControllerFactory::class,
        ],
    ],
+5 −7
Changes for src/Controller/AdministrationController.php: 5 added lines, 7 removed lines.
Original line number Diff line number Diff line
@@ -9,12 +9,12 @@ use Laminas\Mvc\Plugin\FlashMessenger\FlashMessenger;
use Laminas\View\Model\JsonModel;
use Laminas\View\Model\ViewModel;
use UnicaenSignature\Entity\Db\Signature;
use UnicaenSignature\Exception\SignatureException;
use UnicaenSignature\Form\SignatureForm;
use UnicaenSignature\Service\ProcessServiceAwareTrait;
use UnicaenSignature\Service\SignatureServiceAwareTrait;
use UnicaenSignature\Utils\FileUploader;
use UnicaenSignature\Utils\SignatureConstants;
use UnicaenSignature\Utils\SignatureException;

class AdministrationController extends AbstractActionController
{
@@ -100,7 +100,7 @@ class AdministrationController extends AbstractActionController
     * ATTENTION : Non prévu pour un usage en production
     *
     * @return ViewModel
     * @throws \UnicaenSignature\Utils\SignatureException
     * @throws SignatureException
     */
    public function simpleSignatureNewAction(): ViewModel
    {
@@ -207,7 +207,7 @@ class AdministrationController extends AbstractActionController
                $dt = json_decode($json, true);
                try {
                    $dt['doc_path'] = $this->getProcessService()->getProcessDocumentDatas($process)['path'];
                    $this->getProcessService()->configureProcess($process, $dt, $documentPreviewUrl);
                    $this->getProcessService()->configureProcess($process, $dt);
                } catch (\Exception $e) {
                    $this->flash()->addErrorMessage("Erreur de configuration : " . $e->getMessage());
                }
@@ -230,7 +230,7 @@ class AdministrationController extends AbstractActionController
        try {
            $id = $this->params()->fromRoute('id');
            if (!$id) {
                throw new SignatureException("Paramètre manquant");
                throw new SignatureException("Paramètre ID manquant");
            }

            $this->getProcessService()->deleteProcessById($id);
@@ -381,7 +381,6 @@ class AdministrationController extends AbstractActionController
                    )->getMethodByKey($method);

                    foreach ($step['options'] as $key => $value) {

                        $index = array_search($key, array_column($recipientsMethod['options'], 'key'));
                        $optionsDatas = $recipientsMethod['options'][$index];
                        $label = $optionsDatas['label'];
@@ -414,7 +413,6 @@ class AdministrationController extends AbstractActionController
                    )->getMethodByKey($method);

                    foreach ($step['observers_options'] as $key => $value) {

                        $index = array_search($key, array_column($recipientsMethod['options'], 'key'));
                        $optionsDatas = $recipientsMethod['options'][$index];
                        $step['observers_options_infos'][$optionsDatas['label']] = [];
@@ -449,7 +447,7 @@ class AdministrationController extends AbstractActionController

    /**
     * @return ViewModel
     * @throws \UnicaenSignature\Utils\SignatureException
     * @throws SignatureException
     * @todo
     */
    public function signatureflowsUiAction(): ViewModel
+0 −1
Changes for src/Controller/Factory/AdministrationControllerFactory.php: 0 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -17,5 +17,4 @@ class AdministrationControllerFactory implements FactoryInterface {
        $s->setProcessService($container->get(ProcessService::class));
        return $s;
    }

}
 No newline at end of file
+18 −12
Changes for src/Controller/InternalLetterfileController.php: 18 added lines, 12 removed lines.
Original line number Diff line number Diff line
@@ -3,11 +3,12 @@
namespace UnicaenSignature\Controller;

use BjyAuthorize\Exception\UnAuthorizedException;
use Exception;
use Laminas\Mvc\Controller\AbstractActionController;
use Laminas\Mvc\Plugin\FlashMessenger\FlashMessenger;
use UnicaenSignature\Entity\Db\Signature;
use UnicaenSignature\Exception\SignatureException;
use UnicaenSignature\Service\InternalLetterfileServiceAwareTrait;
use UnicaenSignature\Utils\SignatureException;

class InternalLetterfileController extends AbstractActionController
{
@@ -44,7 +45,9 @@ class InternalLetterfileController extends AbstractActionController
            $signatureRecipient = $this->getInternalLetterfileService()->getSignatureRecipientByKey($key);
            $waitingVisa = $signatureRecipient->getSignature()->getStatus() == Signature::STATUS_SIGNATURE_WAIT;

            if ( !$signatureRecipient->requireSignFromEmail($this->getInternalLetterfileService()->getSignatureConfigurationService()->getCurrentUserMail()) ){
            if (!$signatureRecipient->requireSignFromEmail(
                $this->getInternalLetterfileService()->getSignatureConfigurationService()->getCurrentUserMail()
            )) {
                $this->flash()->addErrorMessage("Ce document n'est pas disponible.");
                return $this->redirect()->toRoute('unicaen-signature/my-documents');
            }
@@ -63,7 +66,8 @@ class InternalLetterfileController extends AbstractActionController
                    elseif ($datas['response'] == 'ko') {
                        if ($comment == "") {
                            $this->flash()->addErrorMessage("Vous devez justifier votre refus en commentaire. Merci.");
                        } else {
                        }
                        else {
                            $this->getInternalLetterfileService()->refuse($signatureRecipient, $comment);
                            return $this->redirect()->toRoute('unicaen-signature/my-documents');
                            $waitingVisa = false;
@@ -72,7 +76,7 @@ class InternalLetterfileController extends AbstractActionController
                    else {
                        $this->flash()->addErrorMessage("Erreur de requête");
                    }
                } catch (\Exception $e){
                } catch (Exception $e) {
                    $this->flash()->addErrorMessage("Erreur : " . $e->getMessage());
                }
            }
@@ -81,8 +85,7 @@ class InternalLetterfileController extends AbstractActionController
                'signatureRecipient' => $signatureRecipient,
                'waitingVisa'        => $waitingVisa
            ];

    } catch (\Exception $e) {
        } catch (Exception $e) {
            $this->flash()->addErrorMessage($e->getMessage());
        }
    }
@@ -104,22 +107,25 @@ class InternalLetterfileController extends AbstractActionController
            $signatureRecipient = $this->getInternalLetterfileService()->getSignatureRecipientByKey($key);

            $this->getInternalLetterfileService()->getLoggerService()->debug("Consultation du document '$key'");
            $currentUserMail = $this->getInternalLetterfileService()->getSignatureConfigurationService()->getCurrentUserMail();
            $currentUserMail = $this->getInternalLetterfileService()->getSignatureConfigurationService(
            )->getCurrentUserMail();

            if ($signatureRecipient->getEmail() != $currentUserMail) {
                $this->getInternalLetterfileService()->getLoggerService()->errorLogAndThrow(
                    "Consultation non autorisée pour " . $currentUserMail
                );
                $err = "Consultation non autorisée pour " . $currentUserMail;
                $this->getInternalLetterfileService()->getLoggerService()->error($err);
                throw new SignatureException($err);
            }
            $documentInfos = $this->getInternalLetterfileService()->getDocumentByRecipient($signatureRecipient);
            if( $documentInfos['mime'] ) header('Content-Type: ' . $documentInfos['mime']);
            if ($documentInfos['mime']) {
                header('Content-Type: ' . $documentInfos['mime']);
            }
            header('Content-Transfer-Encoding: Binary');
            header('Expires: 0');
            header('Cache-Control: must-revalidate');
            header('Pragma: public');
            header('Content-Length: ' . filesize($documentInfos['path']));
            die($documentInfos['datas']);
        } catch (\Exception $e) {
        } catch (Exception $e) {
            $this->flash()->addErrorMessage($e->getMessage());
        }
    }
+6 −7
Changes for src/Controller/ProcessController.php: 6 added lines, 7 removed lines.
Original line number Diff line number Diff line
@@ -2,12 +2,11 @@

namespace UnicaenSignature\Controller;

use Exception;
use Laminas\Mvc\Controller\AbstractActionController;
use Laminas\Mvc\Plugin\FlashMessenger\FlashMessenger;
use Laminas\View\Model\JsonModel;
use Laminas\View\Model\ViewModel;
use UnicaenSignature\Exception\SignatureException;
use UnicaenSignature\Service\ProcessServiceAwareTrait;
use UnicaenSignature\Utils\SignatureException;

class ProcessController extends AbstractActionController
{
@@ -20,12 +19,13 @@ class ProcessController extends AbstractActionController
    }

    ////////////////////////////////////////////////////////////////////////

    /**
     * Affichage du document
     *
     * @return void
     */
    public function previewDocumentAction()
    public function previewDocumentAction(): void
    {
        try {
            $id = $this->params()->fromRoute('id');
@@ -37,14 +37,13 @@ class ProcessController extends AbstractActionController
            $doc = $this->getProcessService()->getProcessDocumentDatas($process);
            header('Content-Type: ' . $doc['mime']);
            header('Content-Transfer-Encoding: Binary');
//            header('Content-Disposition: attachment; filename="preview.pdf');
            header('Expires: 0');
            header('Cache-Control: must-revalidate');
            header('Pragma: public');
            header('Content-Length: ' . filesize($doc['path']));
            die($doc['datas']);

        } catch (\Exception $e) {
            die($doc['datas']);
        } catch (Exception $e) {
            $this->flash()->addErrorMessage($e->getMessage());
        }
    }
Loading