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

V0 de unicaenValidation

parent 58e55792
Loading
Loading
Loading
Loading
Loading

.gitlab-ci.yml

0 → 100644
+14 −0
Original line number Diff line number Diff line
image: registre.unicaen.fr:5000/unicaen-dev-php7.3-apache

stages:
- publish

cache:
  key: ${CI_COMMIT_REF_SLUG}
  paths:
  - vendor/

update-satis:
  stage: publish
  script:
    - curl https://gest.unicaen.fr/packagist/update

Module.php

0 → 100644
+48 −0
Original line number Diff line number Diff line
<?php


namespace UnicaenValidation;

//use UnicaenUtilisateur\Event\UserRoleSelectedEventListener;
use Laminas\Config\Factory as ConfigFactory;
use Laminas\Mvc\ModuleRouteListener;
use Laminas\Mvc\MvcEvent;
use Laminas\Stdlib\ArrayUtils;
use Laminas\Stdlib\Glob;

class Module
{
    public function onBootstrap(MvcEvent $e)
    {
        $e->getApplication()->getServiceManager()->get('translator');
        $eventManager        = $e->getApplication()->getEventManager();
        $moduleRouteListener = new ModuleRouteListener();
        $moduleRouteListener->attach($eventManager);

    }

    public function getConfig()
    {
        $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(
            'Laminas\Loader\StandardAutoloader' => array(
                'namespaces' => array(
                    __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
                ),
            ),
        );
    }
}

composer.json

0 → 100755
+21 −0
Original line number Diff line number Diff line
{
    "name": "unicaen/validation",
    "description": "Module de gestion de validation (type et instance)",
    "repositories": [
        {
            "type": "composer",
            "url": "https://gest.unicaen.fr/packagist"
        }
    ],
    "require": {
        "unicaen/app": "^4.0",
        "unicaen/privilege": "^4.0",
        "laminas/laminas-dependency-plugin": "^2.1"
    },
    "autoload": {
        "psr-0": [],
        "classmap": [
            "./Module.php"
        ]
    }
}
+169 −0
Original line number Diff line number Diff line
<?php

namespace UnicaenValidation;

use UnicaenPrivilege\Guard\PrivilegeController;
use UnicaenValidation\Controller\ValidationInstanceController;
use UnicaenValidation\Controller\ValidationInstanceControllerFactory;
use UnicaenValidation\Form\ValidationInstance\ValidationInstanceForm;
use UnicaenValidation\Form\ValidationInstance\ValidationInstanceFormFactory;
use UnicaenValidation\Form\ValidationInstance\ValidationInstanceHydrator;
use UnicaenValidation\Form\ValidationInstance\ValidationInstanceHydratorFactory;
use UnicaenValidation\Provider\Privilege\ValidationinstancePrivileges;
use UnicaenValidation\Service\ValidationInstance\ValidationInstanceService;
use UnicaenValidation\Service\ValidationInstance\ValidationInstanceServiceFactory;
use UnicaenValidation\View\Helper\ValidationAfficherViewHelper;
use UnicaenValidation\View\Helper\ValidationBadgeViewHelper;
use UnicaenValidation\View\Helper\ValidationValiderViewHelperFactory;
use Laminas\Router\Http\Literal;
use Laminas\Router\Http\Segment;

return [
    'bjyauthorize' => [
        'guards' => [
            PrivilegeController::class => [
                [
                    'controller' => ValidationInstanceController::class,
                    'action' => [
                        'index',
                    ],
                    'privileges' => [
                        ValidationinstancePrivileges::VALIDATIONINSTANCE_AFFICHER,
                    ],
                ],
                [
                    'controller' => ValidationInstanceController::class,
                    'action' => [
                        'ajouter',
                        'modifier',
                    ],
                    'privileges' => [
                        ValidationinstancePrivileges::VALIDATIONINSTANCE_MODIFIER,
                    ],
                ],
                [
                    'controller' => ValidationInstanceController::class,
                    'action' => [
                        'historiser',
                        'restaurer',
                    ],
                    'privileges' => [
                        ValidationinstancePrivileges::VALIDATIONINSTANCE_HISTORISER,
                    ],
                ],
                [
                    'controller' => ValidationInstanceController::class,
                    'action' => [
                        'detruire',
                    ],
                    'privileges' => [
                        ValidationinstancePrivileges::VALIDATIONINSTANCE_DETRUIRE,
                    ],
                ],
            ],
        ],
    ],

    'router'          => [
        'routes' => [
            'validation' => [
                'child_routes' => [
                    'instance' => [
                        'type' => Literal::class,
                        'options' => [
                            'route'    => '/instance',
                            'defaults' => [
                                'controller' => ValidationInstanceController::class,
                                'action'     => 'index',
                            ],
                        ],
                        'may_terminate' => true,
                        'child_routes' => [
                            'ajouter' => [
                                'type' => Literal::class,
                                'options' => [
                                    'route'    => '/ajouter',
                                    'defaults' => [
                                        'controller' => ValidationInstanceController::class,
                                        'action'     => 'ajouter',
                                    ],
                                ],
                            ],
                            'modifier' => [
                                'type' => Segment::class,
                                'options' => [
                                    'route'    => '/modifier/:validation',
                                    'defaults' => [
                                        'controller' => ValidationInstanceController::class,
                                        'action'     => 'modifier',
                                    ],
                                ],
                            ],
                            'historiser' => [
                                'type' => Segment::class,
                                'options' => [
                                    'route'    => '/historiser/:validation',
                                    'defaults' => [
                                        'controller' => ValidationInstanceController::class,
                                        'action'     => 'historiser',
                                    ],
                                ],
                            ],
                            'restaurer' => [
                                'type' => Segment::class,
                                'options' => [
                                    'route'    => '/restaurer/:validation',
                                    'defaults' => [
                                        'controller' => ValidationInstanceController::class,
                                        'action'     => 'restaurer',
                                    ],
                                ],
                            ],
                            'detruire' => [
                                'type' => Segment::class,
                                'options' => [
                                    'route'    => '/detruire/:validation',
                                    'defaults' => [
                                        'controller' => ValidationInstanceController::class,
                                        'action'     => 'detruire',
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],

    'service_manager' => [
        'factories' => [
            ValidationInstanceService::class => ValidationInstanceServiceFactory::class,
        ],
    ],
    'controllers'     => [
        'factories' => [
            ValidationInstanceController::class => ValidationInstanceControllerFactory::class,
        ],
    ],
    'form_elements' => [
        'factories' => [
            ValidationInstanceForm::class => ValidationInstanceFormFactory::class,
        ],
    ],
    'hydrators' => [
        'factories' => [
            ValidationInstanceHydrator::class => ValidationInstanceHydratorFactory::class,
        ],
    ],
    'view_helpers' => [
        'invokables' => [
            'validationAfficher'              => ValidationAfficherViewHelper::class,
            'validationBadge'                 => ValidationBadgeViewHelper::class,
        ],
        'factories' => [
            'validationValider'              => ValidationValiderViewHelperFactory::class,
        ]
    ]

];
 No newline at end of file
+127 −0
Original line number Diff line number Diff line
<?php

namespace UnicaenValidation;

use UnicaenPrivilege\Guard\PrivilegeController;
use UnicaenValidation\Controller\ValidationTypeController;
use UnicaenValidation\Controller\ValidationTypeControllerFactory;
use UnicaenValidation\Form\ValidationType\ValidationTypeForm;
use UnicaenValidation\Form\ValidationType\ValidationTypeFormFactory;
use UnicaenValidation\Form\ValidationType\ValidationTypeHydrator;
use UnicaenValidation\Form\ValidationType\ValidationTypeHydratorFactory;
use UnicaenValidation\Provider\Privilege\ValidationtypePrivileges;
use UnicaenValidation\Service\ValidationType\ValidationTypeService;
use UnicaenValidation\Service\ValidationType\ValidationTypeServiceFactory;
use Laminas\Router\Http\Literal;
use Laminas\Router\Http\Segment;

return [
    'bjyauthorize' => [
        'guards' => [
            PrivilegeController::class => [
                [
                    'controller' => ValidationTypeController::class,
                    'action' => [
                        'index',
                    ],
                    'privileges' => [
                        ValidationtypePrivileges::VALIDATIONTYPE_AFFICHER,
                    ],
                ],
                [
                    'controller' => ValidationTypeController::class,
                    'action' => [
                        'ajouter',
                        'modifier',
                    ],
                    'privileges' => [
                        ValidationtypePrivileges::VALIDATIONTYPE_MODIFIER,
                    ],
                ],
                [
                    'controller' => ValidationTypeController::class,
                    'action' => [
                        'detruire',
                    ],
                    'privileges' => [
                        ValidationtypePrivileges::VALIDATIONTYPE_DETRUIRE,
                    ],
                ],
            ],
        ],
    ],

    'router'          => [
        'routes' => [
            'validation' => [
                'child_routes' => [
                    'type' => [
                        'type' => Literal::class,
                        'options' => [
                            'route'    => '/type',
                            'defaults' => [
                                'controller' => ValidationTypeController::class,
                                'action'     => 'index',
                            ],
                        ],
                        'may_terminate' => true,
                        'child_routes' => [
                            'ajouter' => [
                                'type' => Literal::class,
                                'options' => [
                                    'route'    => '/ajouter',
                                    'defaults' => [
                                        'controller' => ValidationTypeController::class,
                                        'action'     => 'ajouter',
                                    ],
                                ],
                            ],
                            'modifier' => [
                                'type' => Segment::class,
                                'options' => [
                                    'route'    => '/modifier/:type',
                                    'defaults' => [
                                        'controller' => ValidationTypeController::class,
                                        'action'     => 'modifier',
                                    ],
                                ],
                            ],
                            'detruire' => [
                                'type' => Segment::class,
                                'options' => [
                                    'route'    => '/detruire/:type',
                                    'defaults' => [
                                        'controller' => ValidationTypeController::class,
                                        'action'     => 'detruire',
                                    ],
                                ],
                            ],
                        ],
                    ],
                ],
            ],
        ],
    ],

    'service_manager' => [
        'factories' => [
            ValidationTypeService::class => ValidationTypeServiceFactory::class,
        ],
    ],
    'controllers'     => [
        'factories' => [
            ValidationTypeController::class => ValidationTypeControllerFactory::class,
        ],
    ],
    'form_elements' => [
        'factories' => [
            ValidationTypeForm::class => ValidationTypeFormFactory::class,
        ],
    ],
    'hydrators' => [
        'factories' => [
            ValidationTypeHydrator::class => ValidationTypeHydratorFactory::class,
        ],
    ]

];
 No newline at end of file
Loading