gmarche/src/Product/ProductModule.php

37 lines
1.1 KiB
PHP
Raw Normal View History

<?php
namespace App\Product;
use App\Admin\AdminTwigExtension;
use App\Product\Actions\ProductCrudAction;
use App\Product\Actions\ProductIndexAction;
use Framework\Auth\LoggedInMiddleware;
use Framework\Module;
use Framework\Renderer\RendererInterface;
use Framework\Renderer\TwigRenderer;
use Framework\Router;
use Psr\Container\ContainerInterface;
class ProductModule extends Module
{
const DEFINITIONS = __DIR__ . '/config.php';
const MIGRATIONS = __DIR__ . '/db/migrations';
const SEEDS = __DIR__ . '/db/seeds';
public function __construct(ContainerInterface $container)
{
$productPrefix = $container->get('product.prefix');
$gmarchePrefix = $container->get('gmarche.prefix');
$container->get(RendererInterface::class)->addPath('product', __DIR__ . '/views');
$router = $container->get(Router::class);
$router->get("/gmarche/{region:[a-z\-0-9]+}/{slug:[a-z\-0-9]+}/{antenne:[0-9]{1,}}", ProductIndexAction::class, 'product.index');
$router->crud("/gmarche/{region:[a-z\-]+}/{slug:[a-z\-0-9]+}/{antenne:[0-9]{1,}}",[LoggedInMiddleware::class, ProductCrudAction::class],'product.admin');
}
}