Commit 37b61e9a authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

Réorganisation des fichiers de config : un seul fichier de config locale (local.php) + cosmétique

parent 147f172a
Loading
Loading
Loading
Loading
Loading
+24 −6
Original line number Diff line number Diff line
<?php

$env = getenv('APPLICATION_ENV') ?: 'production';

$modules = [
    'ZfcBase', 'DoctrineModule', 'DoctrineORMModule', 'ZfcUser', 'ZfcUserDoctrineORM', 'BjyAuthorize',
    'UnicaenApp', 'UnicaenAuth', 'UnicaenLdap', 'UnicaenOracle', 'UnicaenImport', 'UnicaenFaq', 'UnicaenLeocarte',
    'Application', 'Import', 'Retraitement', 'Notification',
    'ZfcBase',
    'DoctrineModule',
    'DoctrineORMModule',
    'ZfcUser',
    'ZfcUserDoctrineORM',
    'BjyAuthorize',
    'UnicaenApp',
    'UnicaenAuth',
    'UnicaenLdap',
    'UnicaenOracle',
    'UnicaenImport',
    'UnicaenFaq',
    'UnicaenLeocarte',
    'Application',
    'Import',
    'Retraitement',
    'Notification',
];

if ('development' === (getenv('APPLICATION_ENV') ?: 'production')) {
    $modules = array_merge($modules, [
$devModules =  [
    'ZendDeveloperTools',
    'UnicaenCode',
    'UnicaenTest',
    ]);
];

if ('development' === $env) {
    $modules = array_merge($modules, $devModules);
}

$moduleListenerOptions = [
+41 −20
Original line number Diff line number Diff line
@@ -3,17 +3,18 @@
use Application\Navigation\NavigationFactoryFactory;
use Retraitement\Filter\Command\MinesCommand;

return array(
$env = getenv('APPLICATION_ENV') ?: 'production';

return [
    'sygal' => [
        // Options pour le test d'archivabilité
        'archivabilite' => [
            'check_ws_script_path' => __DIR__ . '/../../bin/from_cines/check_webservice_response.sh',
            'script_path'          => __DIR__ . '/../../bin/validation_cines.sh',
        ],

        // Options pour le retraitement des fichiers PDF
        'retraitement' => [
            /**
             * Commande utilisée pour retraiter les fichiers PDF, et ses options.
             */
            // Commande utilisée pour retraiter les fichiers PDF, et ses options.
            'command' => [
                'class' => MinesCommand::class,
                'options' => [
@@ -22,26 +23,46 @@ return array(
                    //'gs_args' => '-dPDFACompatibilityPolicy=1'
                ],
            ],

            /**
             * Durée au bout de laquelle le retraitement est interrompu pour le relancer en tâche de fond.
             * Valeurs possibles: '30s', '1m', etc. (cf. "man timeout").
             */
            // Durée au bout de laquelle le retraitement est interrompu pour le relancer en tâche de fond.
            // Valeurs possibles: '30s', '1m', etc. (cf. "man timeout").
            'timeout' => '20s',
        ],

        // Options pour le service de notification par mail
        'notification' => [
            /**
             * Destinataires à ajouter systématiquement lors de l'envoi d'une notification.
             */
            // Destinataires à ajouter systématiquement lors de l'envoi d'une notification.
            'cc' => ['suivi-mail-sodoct@unicaen.fr'],
            //'bcc' => [],
        ],
    ],

    'service_manager' => array(
        'factories' => array(
    'module_listener_options' => [
        'config_cache_enabled'     => ($env === 'production'),
        'config_cache_key'         => 'app_config',
        'module_map_cache_enabled' => ($env === 'production'),
        'module_map_cache_key'     => 'module_map',
        'cache_dir'                => 'data/config/',
        'check_dependencies'       => ($env !== 'production'),
    ],
    'doctrine' => [
        'configuration' => [
            'orm_default' => [
                'metadata_cache'   => ($env === 'production' ? 'memcached' : 'array'),
                'query_cache'      => ($env === 'production' ? 'memcached' : 'array'),
                'result_cache'     => ($env === 'production' ? 'memcached' : 'array'),
                'hydration_cache'  => ($env === 'production' ? 'memcached' : 'array'),
                'generate_proxies' => ($env !== 'production'),
            ],
        ],
    ],
    'languages' => [
        'language-list' => ['fr_FR', 'en_US', 'de_DE', 'it_IT'],
    ],
    'service_manager' => [
        'factories' => [
            'navigation' => NavigationFactoryFactory::class,
        ),
    ),
);
        ],
    ],
    'view_manager' => [
        'display_not_found_reason' => ($env !== 'production'),
        'display_exceptions'       => ($env !== 'production'),
    ],
];
+5 −10
Original line number Diff line number Diff line
@@ -2,9 +2,7 @@

return [
    'unicaen-app' => [
        /**
         * Informations concernant l'application.
         */
        // Informations concernant l'application.
        'app_infos' => [
            'nom'     => "SYGAL",
            'desc'    => "SYstème de Gestion et d'Accompagnement doctoraL",
@@ -18,14 +16,11 @@ return [
            'informatiqueEtLibertes' => "http://www.unicaen.fr/acces-direct/informatique-et-libertes/",
        ],

        /**
         * Période d'exécution de la requête de rafraîchissement de la session utilisateur, en millisecondes.
         */
        'session_refresh_period' => 0, // 0 <=> aucune requête exécutée
        // Période d'exécution de la requête de rafraîchissement de la session utilisateur, en millisecondes.
        // 0 <=> aucune requête exécutée
        'session_refresh_period' => 0,

        /**
         * Paramètres de fonctionnement LDAP.
         */
        // Paramètres de fonctionnement LDAP.
        'ldap' => [
            'dn' => [
                'UTILISATEURS_BASE_DN'                  => 'ou=people,dc=unicaen,dc=fr',
+42 −56
Original line number Diff line number Diff line
<?php
/**
 * UnicaenAuth Global Configuration
 */

use Application\Authentication\Storage\AppStorage;
use Application\Authentication\Storage\AppStorageFactory;
@@ -9,84 +6,73 @@ use Application\Entity\Db\Utilisateur;
use Application\Provider\IdentityProvider;
use Application\Provider\IdentityProviderFactory;

$settings = [
    /**
     * Flag indiquant si l'utilisateur authenitifié avec succès via l'annuaire LDAP doit
     * être enregistré/mis à jour dans la table des utilisateurs de l'appli.
     */
$config = [
    'unicaen-auth' => [
        // Identifiants de connexion LDAP autorisés à faire de l'usurpation d'identité.
        // NB: à réserver exclusivement aux tests.
        'usurpation_allowed_usernames' => ['gauthierb', 'bernardb'],

        // Flag indiquant si l'utilisateur authenitifié avec succès via l'annuaire LDAP doit
        // être enregistré/mis à jour dans la table des utilisateurs de l'appli.
        'save_ldap_user_in_database' => true,

        'enable_privileges' => true,

    'entity_manager_name' => 'doctrine.entitymanager.orm_default', // nom du gestionnaire d'entités à utiliser
        // Nom du gestionnaire d'entités à utiliser
        'entity_manager_name' => 'doctrine.entitymanager.orm_default',

    /**
     * Fournisseurs d'identité.
     */
        // Fournisseurs d'identité.
        'identity_providers'  => [
            300 => 'UnicaenAuth\Provider\Identity\Basic',   // en 1er
            200 => 'UnicaenAuth\Provider\Identity\Db',      // en 2e
            100 => 'Application\Provider\IdentityProvider', // en 3e
        ],
];

$config = [
    'service_manager' => [
        'invokables' => [
        ],
        'factories' => [
            AppStorage::class => AppStorageFactory::class,
            'UnicaenAuth\Authentication\Storage\Chain' => 'Application\Authentication\Storage\ChainServiceFactory',
            IdentityProvider::class => IdentityProviderFactory::class,
        ]
    ],

    'unicaen-auth' => $settings,

    'bjyauthorize' => [
        /* this module uses a meta-role that inherits from any roles that should
         * be applied to the active user. the identity provider tells us which
         * roles the "identity role" should inherit from.
         *
         * for ZfcUser, this will be your default identity provider
         */
        // this module uses a meta-role that inherits from any roles that should
        // be applied to the active user. the identity provider tells us which
        // roles the "identity role" should inherit from.
        // for ZfcUser, this will be your default identity provider
        'identity_provider' => 'UnicaenAuth\Provider\Identity\Chain',

        /* role providers simply provide a list of roles that should be inserted
         * into the Zend\Acl instance. the module comes with two providers, one
         * to specify roles in a config file and one to load roles using a
         * Zend\Db adapter.
         */
        // role providers simply provide a list of roles that should be inserted
        // into the Zend\Acl instance. the module comes with two providers, one
        // to specify roles in a config file and one to load roles using a
        // Zend\Db adapter.
        'role_providers'    => [
            /**
             * Fournit les rôles issus de la base de données éventuelle de l'appli.
             * NB: si le rôle par défaut 'guest' est fourni ici, il ne sera pas ajouté en double dans les ACL.
             * NB: si la connexion à la base échoue, ce n'est pas bloquant!
             */
            //
            // Fournit les rôles issus de la base de données éventuelle de l'appli.
            // NB: si le rôle par défaut 'guest' est fourni ici, il ne sera pas ajouté en double dans les ACL.
            // NB: si la connexion à la base échoue, ce n'est pas bloquant!
            'UnicaenAuth\Provider\Role\DbRole'   => [],
//            /**
//             * Fournit le rôle correspondant à l'identifiant de connexion de l'utilisateur.
//             * Cela est utile lorsque l'on veut gérer les habilitations d'un utilisateur unique
//             * sur des ressources.
//             */
            // Fournit le rôle correspondant à l'identifiant de connexion de l'utilisateur.
            // Cela est utile lorsque l'on veut gérer les habilitations d'un utilisateur unique
            // sur des ressources.
            //'UnicaenAuth\Provider\Role\Username' => [],
        ],
    ],
    'zfcuser'      => [
        /**
         * Classe de l'entité représentant un utilisateur.
         * Décommenter pour spécifier une autre classe que celle par défaut (\UnicaenAuth\Entity\Db\User).
         * NB: la classe spécifiée doit hériter de \UnicaenAuth\Entity\Db\AbstractUser.
         */
        // Classe de l'entité représentant un utilisateur.
        // Décommenter pour spécifier une autre classe que celle par défaut (\UnicaenAuth\Entity\Db\User).
        // NB: la classe spécifiée doit hériter de \UnicaenAuth\Entity\Db\AbstractUser.
        'user_entity_class' => Utilisateur::class,

        /**
         * Enable registration
         * Allows users to register through the website.
         * Accepted values: boolean true or false
         */
        // Enable registration
        // Allows users to register through the website.
        // Accepted values: boolean true or false
        'enable_registration' => false,
    ],

    'service_manager' => [
        'invokables' => [
        ],
        'factories' => [
            AppStorage::class => AppStorageFactory::class,
            'UnicaenAuth\Authentication\Storage\Chain' => 'Application\Authentication\Storage\ChainServiceFactory',
            IdentityProvider::class => IdentityProviderFactory::class,
        ]
    ],
];

if ($settings['enable_privileges']) {
+6 −12
Original line number Diff line number Diff line
@@ -4,23 +4,17 @@ use UnicaenFaq\Entity\Db\Faq;

return array(
    'unicaen-faq' => [
        /*
         * Nom du gestionnaire d'entité concerné.
         * Par défaut: 'orm_default'.
         */
        // Nom du gestionnaire d'entité concerné.
        // Par défaut: 'orm_default'.
        'entity_manager_name' => 'orm_default',

        /*
         * Classe de l'entité représentant un couple question-réponse.
         * Par défaut: 'UnicaenFaq\Entity\Db\Faq'.
         */
        // Classe de l'entité représentant un couple question-réponse.
        // Par défaut: 'UnicaenFaq\Entity\Db\Faq'.
        'faq_entity_class' => Faq::class,
    ],

    /*
     * Customisation de la navigation.
     * Ex: masquer le menu, modifier sa position, changer son label, associer une ressource ACL.
     */
     // Customisation de la navigation.
     // Ex: masquer le menu, modifier sa position, changer son label, associer une ressource ACL.
//    'navigation'      => [
//        'default' => [
//            'home' => [
Loading