gmarche/src/Gmarche/Actions/RegionIndexAction.php

45 lines
1.0 KiB
PHP

<?php
namespace App\Gmarche\Actions;
use App\Gmarche\Table\RegionTable;
use Framework\Actions\RouterAwareAction;
use Framework\Renderer\RendererInterface;
use Psr\Http\Message\ServerRequestInterface as Request;
class RegionIndexAction
{
/**
* @var RendererInterface
*/
private $renderer;
/**
* @var RegionTable
*/
private $regionTable;
use RouterAwareAction;
public function __construct(
RendererInterface $renderer,
RegionTable $regionTable
) {
$this->renderer = $renderer;
$this->regionTable = $regionTable;
}
public function __invoke(Request $request)
{
$params = $request->getQueryParams();
$regions = $this->regionTable->findAll()->paginate(15, $params['p'] ?? 1);
session_start();
if (isset($_SESSION['user'])) {
$user = $_SESSION['user'];
} else {
$user = '';
}
return $this->renderer->render('@gmarche/index', compact('user','regions'));
}
}