40 lines
1.9 KiB
PHP
40 lines
1.9 KiB
PHP
<?php
|
|
namespace App\Product;
|
|
|
|
use App\Admin\AdminTwigExtension;
|
|
use App\Product\Actions\ProductCrudAction;
|
|
use App\Product\Actions\ProductIndexAction;
|
|
use Framework\Auth\LoggedInMiddleware;
|
|
use Framework\Middleware\CombinedMiddleware;
|
|
use Framework\Module;
|
|
use Framework\Renderer\RendererInterface;
|
|
use Framework\Renderer\TwigRenderer;
|
|
use Framework\Router;
|
|
use GuzzleHttp\Psr7\ServerRequest;
|
|
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)
|
|
{
|
|
$gmarchePrefix = $container->get('gmarche.prefix');
|
|
|
|
$container->get(RendererInterface::class)->addPath('product', __DIR__ . '/views');
|
|
$router = $container->get(Router::class);
|
|
//$router->get("$gmarchePrefix/{region:[a-z\-0-9]+}/{antenne:[a-z\-0-9]+}", ProductIndexAction::class, 'product.index');
|
|
//$router->get("$gmarchePrefix/{region:[a-z\-]+}/{slug:[a-z\-]+}", ProductIndexAction::class, 'product.ville');
|
|
$router->get("/france/{region:[a-z\-0-9]+}/{slug:[a-z\-0-9]+}/produits", ProductIndexAction::class, 'product.ville');
|
|
// comb $router->get("$gmarchePrefix/{region:[a-z\-0-9]+}/{slug:[a-z\-0-9]+}/produits", new CombinedMiddleware($container, [ProductIndexAction::class]), 'product.ville');
|
|
|
|
// $router->get("$gmarchePrefix/{region:[a-z\-0-9]+}/{antenne:[a-z\-0-9]+}/{slug:[a-z\-0-9]+}", ProductIndexAction::class, 'product.admin');
|
|
|
|
// $router->crud("$gmarchePrefix/{region:[a-z\-]+}/{slug:[a-z\-0-9]+}/{antenne:[0-9]{1,}}",[LoggedInMiddleware::class, ProductCrudAction::class],'product.admin');
|
|
|
|
}
|
|
}
|
|
// $router->get("$gmarchePrefix/{region:[a-z\-0-9]+}/{slug:[a-z\-0-9]+}/{antenne:[0-9]{1,}}", ProductIndexAction::class, 'product.index');
|