Commit cd464137 authored by Jean-Philippe Metivier's avatar Jean-Philippe Metivier
Browse files

Debut de la gestion des utilisateurs (suite)

parent 41a0ce0a
Loading
Loading
Loading
Loading
+13 −1
Changes for module/Application/Module.php: 13 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -11,6 +11,9 @@ namespace Application;

use Zend\Mvc\ModuleRouteListener;
use Zend\Mvc\MvcEvent;
use Zend\Stdlib\ArrayUtils;
use Zend\Stdlib\Glob;
use Zend\Config\Factory as ConfigFactory;

class Module
{
@@ -34,9 +37,18 @@ class Module

    public function getConfig()
    {
        return include __DIR__ . '/config/module.config.php';
        $configInit = [
            __DIR__ . '/config/module.config.php'
        ];
        $configFiles = ArrayUtils::merge(
            $configInit,
            Glob::glob(__DIR__ . '/config/merged/{,*.}{config}.php', Glob::GLOB_BRACE)
        );

        return ConfigFactory::fromFiles($configFiles);
    }


    public function getAutoloaderConfig()
    {
        return array(
+207 −0
Changes for module/Application/config/merged/utilisateur.config.php: 207 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?php

namespace Application;

use Application\Controller\Utilisateur\UtilisateurController;
use Application\Controller\Utilisateur\UtilisateurControllerFactory;
use Application\Provider\Privilege\UtilisateurPrivileges;
use Application\Service\User\UserService;
use Application\Service\User\UserServiceFactory;
use UnicaenAuth\Guard\PrivilegeController;
use Zend\Mvc\Router\Http\Literal;
use Zend\Mvc\Router\Http\Segment;

return [
    'bjyauthorize' => [
        'guards' => [
            PrivilegeController::class => [
                [
                    'controller' => UtilisateurController::class,
                    'action' => [
                        'index',
                        'rechercher-utilisateur',
                    ],
                    'privileges' => [
                        UtilisateurPrivileges::AFFICHER,
                    ],
                ],
                [
                    'controller' => UtilisateurController::class,
                    'action' => [
                        'rechercher-people',
                        'effacer',
                    ],
                    'privileges' => [
                        UtilisateurPrivileges::AJOUTER,
                    ],
                ],
                [
                    'controller' => UtilisateurController::class,
                    'action' => [
                        'changer-status',
                    ],
                    'privileges' => [
                        UtilisateurPrivileges::CHANGER_STATUS,
                    ],
                ],
                [
                    'controller' => UtilisateurController::class,
                    'action' => [
                        'add-role',
                        'remove-role',
                    ],
                    'privileges' => [
                        UtilisateurPrivileges::MODIFIER_ROLE,
                    ],
                ],
            ],
        ],
    ],

    'router' => [
        'routes' => [
            'utilisateur-preecog' => [
                'type' => Literal::class,
                'options' => [
                    'route' => '/utilisateur',
                    'defaults' => [
                        'controller' => UtilisateurController::class,
                        'action' => 'index',
                    ],
                ],
                'may_terminate' => true,
                'child_routes' => [
                    'rechercher-utilisateur' => [
                        'type'          => Literal::class,
                        'options'       => [
                            'route'       => '/rechercher-utilisateur',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'rechercher-utilisateur',
                            ],
                        ],
                    ],
                    'rechercher-people' => [
                        'type'          => Literal::class,
                        'options'       => [
                            'route'       => '/rechercher-people',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'rechercher-people',
                            ],
                        ],
                    ],
                    'add-role' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/add-role/:utilisateur/:role',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'add-role',
                            ],
                        ],
                    ],
                    'remove-role' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/remove-role/:utilisateur/:role',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'remove-role',
                            ],
                        ],
                    ],
                    'changer-status' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/changer-status/:utilisateur',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'changer-status',
                            ],
                        ],
                    ],
                    'effacer' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/effacer/:utilisateur',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'effacer',
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],

    'navigation' => [
        'default' => [
            'home' => [
                'pages' => [
                    'administration' => [
                        'order' => 90,
                        'label' => 'Administration',
                        'title' => "Administration",
                        'route' => 'utilisateur',
                        'roles' => [], //PrivilegeController::getResourceId(__NAMESPACE__ . '\Controller\Administration', 'index'),
                        'pages' => [
                            [
                                'label' => "Droits et privilèges",
                                'route' => 'droits',
                                'roles' => [],//'resource' => PrivilegeController::getResourceId('UnicaenAuth\Controller\Droits', 'index'),
                                'dropdown-header' => true,
                                'icon' => 'fas fa-user',
                            ],
                            [
                                'label' => "Gérer les rôles",
                                'title' => "Gérer les rôles",
                                'route' => 'droits/roles',
                                'action' => 'roles',
                                'roles' => [],//'resource' => PrivilegeController::getResourceId('UnicaenAuth\Controller\Droits', 'roles'),
                                'icon' => 'fas fa-angle-right',
                            ],
                            [
                                'label' => "Gérer les privilèges",
                                'title' => "Gérer les privilèges",
                                'route' => 'droits/privileges',
                                'action' => 'privileges',
                                'resource' => PrivilegeController::getResourceId('UnicaenAuth\Controller\Droits', 'privileges'),
                                'icon' => 'fas fa-angle-right',
                            ],
                            [
                                'label' => 'Logs',
                                'route' => 'journal',
                                'resource' => PrivilegeController::getResourceId(__NAMESPACE__ . '\Controller\Journal', 'index'),
                                'dropdown-header' => true,
                                'icon' => 'fas fa-archive'
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],

    'service_manager' => [
        'factories' => [
            UserService::class => UserServiceFactory::class,
        ],
    ],
    'translator'      => [
        'locale'                    => 'fr_FR', // en_US
        'translation_file_patterns' => [
            [
                'type'     => 'gettext',
                'base_dir' => __DIR__ . '/../language',
                'pattern'  => '%s.mo',
            ],
        ],
    ],
    'controllers'     => [
        'factories' => [
            UtilisateurController::class => UtilisateurControllerFactory::class,
        ]
    ],
];
+12 −103
Changes for module/Application/config/module.config.php: 12 added lines, 103 removed lines.
Original line number Diff line number Diff line
@@ -4,8 +4,6 @@ namespace Application;

use Application\Controller\FicheMetier\FicheMetierController;
use Application\Controller\FicheMetier\FicheMetierControllerFactory;
use Application\Controller\Utilisateur\UtilisateurController;
use Application\Controller\Utilisateur\UtilisateurControllerFactory;
use Application\Provider\Privilege\FicheMetierPrivileges;
use Application\Service\FicheMetier\FicheMetierService;
use Application\Service\FicheMetier\FicheMetierServiceFactory;
@@ -13,8 +11,6 @@ use Application\Service\MailService\MailService;
use Application\Service\MailService\MailServiceFactory;
use Application\Service\Role\RoleService;
use Application\Service\Role\RoleServiceFactory;
use Application\Service\User\UserService;
use Application\Service\User\UserServiceFactory;
use Doctrine\Common\Persistence\Mapping\Driver\MappingDriverChain;
use Doctrine\ORM\Mapping\Driver\XmlDriver;
use UnicaenAuth\Guard\PrivilegeController;
@@ -52,20 +48,6 @@ return [
                        FicheMetierPrivileges::HISTORISER,
                    ],
                ],
                [
                    'controller' => UtilisateurController::class,
                    'action' => [
                        'index',
                        'rechercher-utilisateur',
                        'rechercher-people',
                        'add-role',
                        'remove-role',
                        'changer-status',
                        'effacer'
                    ],
                    'roles' => [
                    ],
                ],
            ],
        ],
    ],
@@ -150,79 +132,6 @@ return [
                    ],
                ],
            ],
            'utilisateur-preecog' => [
                'type' => Literal::class,
                'options' => [
                    'route' => '/utilisateur',
                    'defaults' => [
                        'controller' => UtilisateurController::class,
                        'action' => 'index',
                    ],
                ],
                'may_terminate' => true,
                'child_routes' => [
                    'rechercher-utilisateur' => [
                        'type'          => Literal::class,
                        'options'       => [
                            'route'       => '/rechercher-utilisateur',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'rechercher-utilisateur',
                            ],
                        ],
                    ],
                    'rechercher-people' => [
                        'type'          => Literal::class,
                        'options'       => [
                            'route'       => '/rechercher-people',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'rechercher-people',
                            ],
                        ],
                    ],
                    'add-role' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/add-role/:utilisateur/:role',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'add-role',
                            ],
                        ],
                    ],
                    'remove-role' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/remove-role/:utilisateur/:role',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'remove-role',
                            ],
                        ],
                    ],
                    'changer-status' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/changer-status/:utilisateur',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'changer-status',
                            ],
                        ],
                    ],
                    'effacer' => [
                        'type'          => Segment::class,
                        'options'       => [
                            'route'       => '/effacer/:utilisateur',
                            'defaults'    => [
                                'controller' => UtilisateurController::class,
                                'action' => 'effacer',
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],
    'service_manager' => [
@@ -232,17 +141,6 @@ return [
            FicheMetierService::class => FicheMetierServiceFactory::class,
            MailService::class => MailServiceFactory::class,
            RoleService::class => RoleServiceFactory::class,
            UserService::class => UserServiceFactory::class,
        ],
    ],
    'translator'      => [
        'locale'                    => 'fr_FR', // en_US
        'translation_file_patterns' => [
            [
                'type'     => 'gettext',
                'base_dir' => __DIR__ . '/../language',
                'pattern'  => '%s.mo',
            ],
        ],
    ],
    'controllers'     => [
@@ -251,7 +149,6 @@ return [
        ],
        'factories' => [
            FicheMetierController::class => FicheMetierControllerFactory::class,
            UtilisateurController::class => UtilisateurControllerFactory::class,
        ]
    ],
    'view_manager'    => [
@@ -259,4 +156,16 @@ return [
            __DIR__ . '/../view',
        ],
    ],


    'translator'      => [
        'locale'                    => 'fr_FR', // en_US
        'translation_file_patterns' => [
            [
                'type'     => 'gettext',
                'base_dir' => __DIR__ . '/../language',
                'pattern'  => '%s.mo',
            ],
        ],
    ],
];
+0 −0

Empty file deleted.

+11 −0
Changes for module/Application/src/Application/Provider/Privilege/UtilisateurPrivileges.php: 11 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?php

namespace Application\Provider\Privilege;

class UtilisateurPrivileges extends \UnicaenAuth\Provider\Privilege\Privileges
{
    const AFFICHER          = 'utilisateur-afficher-utilisateur';
    const AJOUTER           = 'utilisateur-ajouter-utilisateur';
    const CHANGER_STATUS    = 'utilisateur-changer-status';
    const MODIFIER_ROLE     = 'utilisateur-modifier-role';
}
Loading