Commit 13d6c741 authored by Bertrand Gauthier's avatar Bertrand Gauthier
Browse files

WIP ajout API

parent a0f02316
Loading
Loading
Loading
Loading
+23 −3
Changes for composer.json: 23 added lines, 3 removed lines.
Original line number Diff line number Diff line
{
    "name": "unicaen/sygal",
    "description": "Application de gestion des soutenances de thèse",
    "type": "project",
    "repositories": [
        {
            "type": "vcs",
            "url": "https://github.com/orderadmin/api-tools-doctrine.git"
        },
        {
            "type": "vcs",
            "url": "https://github.com/orderadmin/api-tools-doctrine-querybuilder.git"
        },
        {
            "type": "composer",
            "url": "https://gest.unicaen.fr/packagist"
        }
    ],
    "require-dev": {
        "laminas/laminas-developer-tools": "^2.0",
        "laminas-api-tools/api-tools-admin": "^2.0",
        "laminas-api-tools/api-tools-asset-manager": "^1.5",
        "laminas/laminas-dependency-plugin": "^2.1",
        "laminas/laminas-developer-tools": "^2.3",

        "unicaen/code": "^6.0",
        "unicaen/test": "^5.0"
    },
@@ -30,12 +43,20 @@
        "ext-xsl": "*",
        "ext-zip": "*",

        "laminas/laminas-development-mode": "^3.2",
        "laminas-api-tools/api-tools": "^1.6",
        "laminas-api-tools/api-tools-doctrine": "2.5.x-dev",
        "laminas-api-tools/api-tools-doctrine-querybuilder": "1.10.x-dev",
        "laminas-api-tools/api-tools-documentation": "^1.2-dev",
        "laminas-api-tools/api-tools-documentation-swagger": "^1.2",

        "aws/aws-sdk-php": "^3.226",
        "beberlei/assert": "^3.0",
        "guzzlehttp/guzzle": "^6.3",
        "laminas/laminas-development-mode": "^3.2",
        "laminas/laminas-dependency-plugin": "^2.1",
        "laminas/laminas-feed": "^2.12",
        "laminas/laminas-form": "^3.1",
        "laminas/laminas-soap": "^2.8",
        "ramsey/uuid": "^3.3",
        "twig/twig": "^3.0",
@@ -55,8 +76,7 @@
        "unicaen/ldap": "^6.0",
        "unicaen/livelog": "^2.0",
        "unicaen/parametre": "^6.0",
        "unicaen/renderer": "^6.0",
        "unicaen/pdf": "dev-bg-php8"
        "unicaen/renderer": "^6.0"
    },
    "minimum-stability": "dev",
    "prefer-stable": true,
+21 −1
Changes for config/application.config.php: 21 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -25,8 +25,26 @@ return [

        'DoctrineModule',
        'DoctrineORMModule',

        'ApiSkeletons\DoctrineORMHydrationModule',
        'Laminas\ApiTools',
        'Laminas\ApiTools\Provider',
        'Laminas\ApiTools\Doctrine\Server',
        'Laminas\ApiTools\Doctrine\QueryBuilder',
        'Laminas\ApiTools\Documentation',
        'Laminas\ApiTools\Documentation\Swagger',
        'Laminas\ApiTools\ApiProblem',
        'Laminas\ApiTools\MvcAuth',
        'Laminas\ApiTools\OAuth2',
        'Laminas\ApiTools\Hal',
        'Laminas\ApiTools\ContentNegotiation',
        'Laminas\ApiTools\ContentValidation',
        'Laminas\ApiTools\Rest',
        'Laminas\ApiTools\Rpc',
        'Laminas\ApiTools\Versioning',

        'ZfcUser',
        'BjyAuthorize' => 'BjyAuthorize',
        'BjyAuthorize',
        'UnicaenApp',
        'UnicaenAlerte',
        'UnicaenAuth',
@@ -42,6 +60,7 @@ return [
        'UnicaenRenderer',
        'Unicaen\Console',
        'UnicaenParametre',

        'Horodatage',
        'Structure',
        'These',
@@ -60,6 +79,7 @@ return [
        'Doctorant',
        'StepStar',
        'Application',
        'Api',
    ],
    'module_listener_options' => [
        'config_glob_paths'    => [
+4 −0
Changes for config/development.config.php.dist: 4 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -3,12 +3,16 @@
return [
    // Development time modules
    'modules' => [
        'Laminas\ApiTools\Admin',
        'Laminas\ApiTools\Configuration',

        'Laminas\DeveloperTools',
//        'UnicaenCode',
        'UnicaenTest',
    ],

    'module_listener_options' => [
        'config_glob_paths' => ['config/autoload/{,*.}{global,local}-development.php'],
        'config_cache_enabled'     => false,
        'module_map_cache_enabled' => false,
        'check_dependencies'       => true,

module/Api/Module.php

0 → 100644
+31 −0
Changes for module/Api/Module.php: 31 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?php

namespace Api;

use Laminas\ApiTools\Provider\ApiToolsProviderInterface;
use Laminas\Config\Factory as ConfigFactory;
use Laminas\Stdlib\Glob;

class Module implements ApiToolsProviderInterface
{
    public function getConfig(): array
    {
        $paths = array_merge(
            [__DIR__ . '/config/module.config.php'],
            //Glob::glob(__DIR__ . '/config/others/{,*.}{config}.php', Glob::GLOB_BRACE)
        );

        return ConfigFactory::fromFiles($paths);
    }

    public function getAutoloaderConfig(): array
    {
        return array(
            'Laminas\Loader\StandardAutoloader' => array(
                'namespaces' => array(
                    __NAMESPACE__ => __DIR__ . '/src/' . __NAMESPACE__,
                ),
            ),
        );
    }
}
 No newline at end of file
+72 −0
Changes for module/Api/config/module.config.php: 72 added lines, 0 removed lines.
Original line number Diff line number Diff line
<?php

namespace Api;

use Laminas\ApiTools\Admin as ApiToolsAdmin;
use Laminas\ApiTools\Doctrine\Admin as ApiToolsDoctrineAdmin;
use Laminas\ApiTools\Documentation as ApiToolsDocumentation;
use Application\Provider\Privilege\AdministrationPrivileges;
use UnicaenAuth\Guard\PrivilegeController;

return [
    'router' => [
        'routes' => [

        ],
    ],
    'bjyauthorize' => [
        'guards' => [
            PrivilegeController::class => [
                [
                    // Ajout d'ACL pour accéder à Apigility
                    'controller' => [
                        // Apigility
                        ApiToolsAdmin\Controller\App::class,
                        ApiToolsAdmin\Controller\Authentication::class,
                        ApiToolsAdmin\Controller\Authorization::class,
                        ApiToolsAdmin\Controller\CacheEnabled::class,
                        ApiToolsAdmin\Controller\Config::class,
                        ApiToolsAdmin\Controller\FsPermissions::class,
                        ApiToolsAdmin\Controller\HttpBasicAuthentication::class,
                        ApiToolsAdmin\Controller\HttpDigestAuthentication::class,
                        ApiToolsAdmin\Controller\ModuleConfig::class,
                        ApiToolsAdmin\Controller\ModuleCreation::class,
                        ApiToolsAdmin\Controller\OAuth2Authentication::class,
                        ApiToolsAdmin\Controller\Package::class,
                        ApiToolsAdmin\Controller\Source::class,
                        ApiToolsAdmin\Controller\Versioning::class,

                        // Apigility Doctrine
                        ApiToolsDoctrineAdmin\Controller\DoctrineAutodiscovery::class,
                        ApiToolsDoctrineAdmin\Controller\DoctrineRestService::class,
                        ApiToolsDoctrineAdmin\Controller\DoctrineRpcService::class,
                        ApiToolsDoctrineAdmin\Controller\DoctrineMetadataService::class,
                    ],
//                    'privileges' => [
//                        AdministrationPrivileges::API_ADMINISTRATION,
//                    ],
                    'roles' => [],
                ],
                [
                    'controller' => [
                        // Api Documentation
                        ApiToolsDocumentation\Controller::class,
                    ],
//                    'privileges' => [
//                        AdministrationPrivileges::API_DOCUMENTATION,
//                    ],
                    'roles' => [],
                ],
            ],
        ],
    ],
    'service_manager' => [
        'factories' => [

        ],
    ],
    'controllers' => [
        'factories' => [
        ],
    ],
];
 No newline at end of file
Loading