Commit c215ae86 authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files

Début de refonte du menu d'administration

parent da5fe3e1
Loading
Loading
Loading
Loading
+6 −20
Original line number Diff line number Diff line
@@ -26,11 +26,7 @@ return [
                    'import'         => ['visible' => false],
                    'administration' => [
                        'pages' => [
                            'import' => [
                                'label'    => 'Synchronisation',
                                'order'    => 1,
                                'route'    => 'import',
                                'resource' => PrivilegeController::getResourceId('Import\Controller\Import', 'index'),
                            'synchronisation' => [
                                'pages' => [
                                    'sources'      => [
                                        'label'       => "Sources de données",
@@ -55,16 +51,6 @@ return [
                                        'route'       => 'import/differentiel',
                                        'resource'    => PrivilegeController::getResourceId('Import\Controller\Differentiel', 'index'),
                                    ],
                                    'maj-vues-fonctions' => [
                                        'label'       => "Mise à jour des vues différentielles et des procédures de mise à jour",
                                        'description' => "Réactualise les vues différentielles d'import. Ces dernières servent à déterminer quelles données ont changé,
        sont apparues ou ont disparues des sources de données.
        Met également à jour les procédures de mise à jour qui actualisent les données de l'application à partir des informations
        fournies par les vues différentielles.
        Cette réactualisation n'est utile que si les vues sources ont été modifiées.",
                                        'route'       => 'import/maj-vues-fonctions',
                                        'resource'    => PrivilegeController::getResourceId('Import\Controller\Import', 'update-views-and-packages'),
                                    ],
                                ],
                            ],
                        ],
+103 −14
Original line number Diff line number Diff line
@@ -5,7 +5,67 @@ namespace Application;
use Application\Provider\Privilege\Privileges;
use UnicaenAuth\Guard\PrivilegeController;

return [
$rubriques = [
    'droits'          => [
        'icon'         => 'fas fa-power-off',
        'label'        => "Droits d'accès",
        'title'        => "Gestion des droits d'accès",
        'resource'     => PrivilegeController::getResourceId('Application\Controller\Droits', 'index'),
        'border-color' => '#bbcf55',
    ],
    'configuration'   => [
        'icon'         => 'fas fa-power-off',
        'label'        => "Configuration",
        'title'        => "Paramétrages de base de l'application",
        'resource'     => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'),
        'border-color' => '#f5e79e',
    ],
    'nomenclatures'   => [
        'icon'         => 'fas fa-power-off',
        'label'        => "Nomenclatures",
        'title'        => "Diverses nomenclatures en usage",
        'resource'     => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'),
        'border-color' => '#217dd8',
    ],
    'intervenants'    => [
        'icon'         => 'fas fa-power-off',
        'label'        => "Intervenants",
        'title'        => "Paramétrages liés aux intervenants",
        'resource'     => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'),
        'border-color' => '#E5272E',
    ],
    'odf'             => [
        'icon'         => 'fas fa-power-off',
        'label'        => "Offre de formation",
        'title'        => "Administration du fonctionnement de l'offre de formation",
        'resource'     => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'),
        'border-color' => '#71dfd7',
    ],
    'rh'              => [
        'icon'         => 'fas fa-power-off',
        'label'        => "RH",
        'title'        => "Nomenclatures et paramétrages relatifs aux ressources humaines",
        'resource'     => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'),
        'border-color' => '#9e9e9e',
    ],
    'finances'        => [
        'icon'         => 'fas fa-power-off',
        'label'        => "Finances",
        'title'        => "Nomenclatures et paramétrages liés aux aspects financiers",
        'resource'     => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'),
        'border-color' => '#eb4995',
    ],
    'synchronisation' => [
        'icon'         => 'fas fa-power-off',
        'label'        => "Synchronisation",
        'title'        => "Liaisons entre OSE et le système d'information",
        'resource'     => PrivilegeController::getResourceId('Import\Controller\Import', 'index'),
        'border-color' => '#9f491f',
        'route'        => 'import',
    ],
];

$config = [
    'router' => [
        'routes' => [
            'administration' => [
@@ -18,7 +78,12 @@ return [
                    ],
                ],
                'may_terminate' => true,
                'child_routes'  => [
                    // remplies automatiquement
                ],
            ],


            'administration-type'               => [
                'type'          => 'Literal',
                'options'       => [
@@ -98,6 +163,8 @@ return [
                        'resource' => PrivilegeController::getResourceId('Application\Controller\Administration', 'index'),
                        'order'    => 7,
                        'pages'    => [
                            // remplies automatiquement

                            'gestion-referentiel-commun' => [
                                'label'          => 'Gestion dictionnaires de données',
                                'icon'           => 'fas fa-table-list',
@@ -265,17 +332,7 @@ return [
            PrivilegeController::class => [
                [
                    'controller' => 'Application\Controller\Administration',
                    'action'     => ['index',
                                     'administration-types',
                                     'administration-financiere',
                                     'administration-intervenant',
                                     'administration-referentiel-commun',
                                     'administration-nomenclature-rh',
                                     'administration-periode',
                                     'administration-etablissement',
                                     'administration-pays',
                                     'administration-departement',
                                     'administration-type-formation',],
                    'action'     => ['index'],
                    'privileges' => [
                        Privileges::IMPORT_ECARTS,
                        Privileges::IMPORT_MAJ,
@@ -315,6 +372,11 @@ return [
                    ],
                    'assertion'  => Assertion\GestionAssertion::class,
                ],
                [
                    'controller' => 'Application\Controller\Administration',
                    'action'     => ['rubrique'],
                    'roles'      => 'user',
                ],
            ],
        ],
    ],
@@ -324,3 +386,30 @@ return [
        ],
    ],
];

$order = 1;
foreach ($rubriques as $route => $rubrique) {
    $hasRoute          = array_key_exists('route', $rubrique);
    $rubrique['order'] = $order++;
    if (!$hasRoute) {
        $rubrique['route'] = 'administration/' . $route;
    }

    $config['navigation']['default']['home']['pages']['administration']['pages'][$route] = $rubrique;

    if (!$hasRoute) {
        $config['router']['routes']['administration']['child_routes'][$route] = [
            'type'          => 'Literal',
            'options'       => [
                'route'    => '/' . $route,
                'defaults' => [
                    'controller' => 'Application\Controller\Administration',
                    'action'     => 'rubrique',
                ],
            ],
            'may_terminate' => true,
        ];
    }
}

return $config;
 No newline at end of file
+2 −9
Original line number Diff line number Diff line
@@ -129,13 +129,6 @@ return [
                    'administration' => [
                        'pages' => [
                            'droits' => [
                                'icon'         => 'fas fa-power-off',
                                'label'        => "Droits d'accès",
                                'title'        => "Gestion des droits d'accès",
                                'route'        => 'droits',
                                'resource'     => PrivilegeController::getResourceId('Application\Controller\Droits', 'index'),
                                'order'        => 100,
                                'border-color' => '#E5272E',
                                'pages' => [
                                    'roles'        => [
                                        'label'       => "Rôles",
+2 −16
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@ return [
                    'route'    => '/parametres',
                    'defaults' => [
                        'controller' => 'Application\Controller\Parametre',
                        'action'     => 'index',
                    ],
                ],
                'may_terminate' => true,
@@ -51,13 +50,7 @@ return [
                'pages' => [
                    'administration' => [
                        'pages' => [
                            'parametres' => [
                                'icon'         => 'fas fa-wrench',
                                'label'        => "Paramétrages",
                                'route'        => 'parametres',
                                'resource'     => PrivilegeController::getResourceId('Application\Controller\Parametre', 'index'),
                                'border-color' => '#9B9B9B',
                                'order'        => 120,
                            'configuration' => [
                                'pages' => [
                                    'annees'   => [
                                        'label'    => "Années",
@@ -82,13 +75,6 @@ return [
    'bjyauthorize' => [
        'guards' => [
            PrivilegeController::class => [
                [
                    'controller' => 'Application\Controller\Parametre',
                    'action'     => ['index'],
                    'privileges' => [
                        Privileges::PARAMETRES_GENERAL_VISUALISATION,
                    ],
                ],
                [
                    'controller' => 'Application\Controller\Parametre',
                    'action'     => ['annees'],
+3 −29
Original line number Diff line number Diff line
@@ -3,6 +3,8 @@
namespace Application\Controller;


use Laminas\View\Model\ViewModel;

/**
 * Description of AdministrationController
 *
@@ -19,35 +21,7 @@ class AdministrationController extends AbstractController



    public function administrationTypesAction()
    {
        return [];
    }



    public function administrationFinanciereAction()
    {
        return [];
    }



    public function administrationIntervenantAction()
    {
        return [];
    }



    public function administrationReferentielCommunAction()
    {
        return [];
    }



    public function administrationNomenclatureRhAction()
    public function rubriqueAction()
    {
        return [];
    }
Loading