Skip to content
Snippets Groups Projects
Select Git revision
  • ebaca4a763c5fe0feda803892eff2ade87fc1f89
  • master default protected
  • alc-scindage-donnees-pj
  • b24
  • ll-workflow
  • FJ_LL_Tbl_Contrat
  • alc-docker-node
  • ll-apiplatform
  • php84
  • ll-rgpd
  • b23
  • alc-filtre-type-intervenant
  • ll-sans-mdb5
  • formules-ancienne-infra
  • ll-formules
  • alc-intervenant-dmep
  • ll-suppr-v_vol-s
  • b20
  • ll-postgresql
  • b23.0.1
  • b22
  • 24.8
  • 24.7
  • 24.6
  • 24.5
  • 24.4
  • 24.3
  • 24.2
  • 24.1
  • 24.0
  • 23.15
  • 24.0-beta19
  • 24.0-beta18
  • 24.0-beta17
  • 24.0-beta16
  • 24.0-beta15
  • 24.0-beta14
  • 24.0-beta13
  • 23.14
  • 24.0-beta12
  • 24.0-beta11
41 results

PieceJointeController.php

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    Module.php 1.71 KiB
    <?php
    
    namespace UnicaenFaq;
    
    use UnicaenApp\Exception\RuntimeException;
    use UnicaenFaq\Service\FaqService;
    use Laminas\Mvc\ModuleRouteListener;
    use Laminas\Mvc\MvcEvent;
    
    class Module
    {
        public function onBootstrap(MvcEvent $e)
        {
            $application = $e->getApplication();
            $application->getServiceManager()->get('translator');
            $eventManager = $application->getEventManager();
            $moduleRouteListener = new ModuleRouteListener();
            $moduleRouteListener->attach($eventManager);
    
            $this->checkModuleRequirements($e);
        }
    
        public function getConfig()
        {
            return include __DIR__ . '/config/module.config.php';
        }
    
        public function getAutoloaderConfig()
        {
            return [
                'Laminas\Loader\StandardAutoloader' => [
                    'namespaces' => [
                        __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
                    ],
                ],
            ];
        }
    
        public function checkModuleRequirements(MvcEvent $event)
        {
            $sl = $event->getApplication()->getServiceManager();
    
            /** @var FaqService $service */
            $service = $sl->get('UnicaenFaq\Service\FaqService');
    
            try {
                $service->checkSchema();
            }
            catch (\Exception $e) {
                $config = $sl->get('config');
                $pathsArray = glob($config['unicaen-faq']['db_schema_glob_paths']);
                throw new RuntimeException(sprintf(
                    "Vous avez activé le module UnicaenFaq mais le schéma de base de données est incorrect: %s. " .
                    "Reportez-vous aux scripts suivants : %s.",
                    $e->getMessage(),
                    implode(', ', array_map('realpath', $pathsArray))
                ));
            }
        }
    }